diff options
author | Ralf Habacker <ralf.habacker@freenet.de> | 2015-11-11 15:02:44 +0100 |
---|---|---|
committer | Ralf Habacker <ralf.habacker@freenet.de> | 2015-11-11 15:02:44 +0100 |
commit | b4cb853e9139569137e5749add4a4e6edb85df4d (patch) | |
tree | eead0a12c317e16f813d63b50f6668972fbd3b1d | |
parent | 52e97d76a6e3ffca8d0f949c9c322b8b4dd29ddd (diff) | |
download | dbus-b4cb853e9139569137e5749add4a4e6edb85df4d.tar.gz |
Fix memory leak in _dbus_win_set_error_from_win_error().
There is no need to make a local (leaked) copy of the message,
because dbus_set_error() already makes a copy of its parameters.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=92721
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
-rw-r--r-- | dbus/dbus-sysdeps-win.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/dbus/dbus-sysdeps-win.c b/dbus/dbus-sysdeps-win.c index e626cc65..61da703b 100644 --- a/dbus/dbus-sysdeps-win.c +++ b/dbus/dbus-sysdeps-win.c @@ -3610,13 +3610,8 @@ _dbus_win_set_error_from_win_error (DBusError *error, (LPSTR) &msg, 0, NULL); if (msg) { - char *msg_copy; - - msg_copy = dbus_malloc (strlen (msg)); - strcpy (msg_copy, msg); + dbus_set_error (error, "win32.error", "%s", msg); LocalFree (msg); - - dbus_set_error (error, "win32.error", "%s", msg_copy); } else dbus_set_error (error, "win32.error", "Unknown error code %d or FormatMessage failed", code); |