summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2006-11-06 16:49:15 +0000
committerRay Strode <rstrode@redhat.com>2006-11-06 16:49:15 +0000
commit0f0075ce04abe3a56c87e0eeb8384e994de06c7d (patch)
treebfe97eac5a5fc9a4ae3843aeb151fc460699818c
parent5c9975bd94829b98b403139be12fc976803c9fb3 (diff)
move g_free inside if branch to prevent a double free in the else case.
2006-11-06 Ray Strode <rstrode@redhat.com> * src/desktop_file.c: move g_free inside if branch to prevent a double free in the else case. Patch from Pascal Terjan (gnome bug 345309)
-rw-r--r--ChangeLog7
-rw-r--r--src/desktop_file.c2
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index d154aaf..7764a0f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2006-11-06 Ray Strode <rstrode@redhat.com>
+ * src/desktop_file.c:
+ move g_free inside if branch to prevent a double free in
+ the else case. Patch from Pascal Terjan (gnome bug
+ 345309)
+
+2006-11-06 Ray Strode <rstrode@redhat.com>
+
* src/validate.c: fix category typos:
TeminalEmulator -> TerminalEmulator
ScreenSaver -> Screensaver
diff --git a/src/desktop_file.c b/src/desktop_file.c
index bd8a058..18f8db4 100644
--- a/src/desktop_file.c
+++ b/src/desktop_file.c
@@ -1181,12 +1181,12 @@ gnome_desktop_file_get_locale_string (GnomeDesktopFile *df,
const char *encoding;
encoding = desktop_file_get_encoding_for_locale (used_locale);
- g_free (used_locale);
if (encoding)
{
char *res;
+ g_free (used_locale);
error = NULL;
res = g_convert (raw, -1,
"UTF-8",