From: Christian Persch Date: Wed, 8 Oct 2008 20:54:35 +0000 (+0000) Subject: Bug 555314 – mem leak in gmarkup X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=c973369e31f1c495918bad2f311bbcb49f389dc1;p=dana%2Fcg-glib.git Bug 555314 – mem leak in gmarkup svn path=/trunk/; revision=7579 --- diff --git a/ChangeLog b/ChangeLog index 9bf3daf5..f4fc6ab7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2008-10-08 Christian Persch + + Bug 555314 – mem leak in gmarkup + + * glib/gmarkup.c: (g_markup_parse_context_parse): Plug a mem leak. + 2008-10-08 Tor Lillqvist Bug 554790 - g_convert() misbehaves with winiconv versions diff --git a/glib/gmarkup.c b/glib/gmarkup.c index 3e073f8e..43f5b262 100644 --- a/glib/gmarkup.c +++ b/glib/gmarkup.c @@ -1096,6 +1096,8 @@ g_markup_parse_context_parse (GMarkupParseContext *context, { gint newlines = 0; const gchar *p, *q; + gchar *current_text_dup; + q = p = context->current_text; while (p != first_invalid) { @@ -1111,12 +1113,13 @@ g_markup_parse_context_parse (GMarkupParseContext *context, context->line_number += newlines; context->char_number += g_utf8_strlen (q, first_invalid - q); + current_text_dup = g_strndup (context->current_text, context->current_text_len); set_error (context, error, G_MARKUP_ERROR_BAD_UTF8, _("Invalid UTF-8 encoded text - not valid '%s'"), - g_strndup (context->current_text, - context->current_text_len)); + current_text_dup); + g_free (current_text_dup); goto finished; }