From 630f89fb1af3b24134304d25d9111c42abee6fde Mon Sep 17 00:00:00 2001 From: Christian Persch Date: Mon, 13 Oct 2008 12:43:37 +0000 Subject: [PATCH] =?utf8?q?Bug=20555311=20=E2=80=93=20format=20not=20a=20st?= =?utf8?q?ring=20literal=20and=20no=20format=20arguments?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit svn path=/trunk/; revision=7597 --- ChangeLog | 7 ++++ gio/gsimpleasyncresult.c | 3 +- glib/gmarkup.c | 101 +++++++++++++++++++++++++---------------------- glib/gshell.c | 16 ++++---- 4 files changed, 70 insertions(+), 57 deletions(-) diff --git a/ChangeLog b/ChangeLog index 221d51c..2183326 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2008-10-13 Christian Persch + + Bug 555311 – format not a string literal and no format arguments + + * glib/gmarkup.c: + * glib/gshell.c: Use literal errors where appropriate. + 2008-10-10 Behdad Esfahbod Bug 551355 – [PATCH] Make glib build with libtool 2.2 diff --git a/gio/gsimpleasyncresult.c b/gio/gsimpleasyncresult.c index d4cc05e..2d20f78 100644 --- a/gio/gsimpleasyncresult.c +++ b/gio/gsimpleasyncresult.c @@ -609,8 +609,7 @@ run_in_thread (GIOSchedulerJob *job, g_simple_async_result_set_error (simple, G_IO_ERROR, G_IO_ERROR_CANCELLED, - "%s", - _("Operation was cancelled")); + "%s", _("Operation was cancelled")); else data->func (simple, simple->source_object, diff --git a/glib/gmarkup.c b/glib/gmarkup.c index 4c1ed39..ccc7626 100644 --- a/glib/gmarkup.c +++ b/glib/gmarkup.c @@ -242,13 +242,32 @@ static void set_error (GMarkupParseContext *context, ...) G_GNUC_PRINTF (4, 5); static void +set_error_literal (GMarkupParseContext *context, + GError **error, + GMarkupError code, + const gchar *message) +{ + GError *tmp_error; + + tmp_error = g_error_new_literal (G_MARKUP_ERROR, code, message); + + g_prefix_error (&tmp_error, + _("Error on line %d char %d: "), + context->line_number, + context->char_number); + + mark_error (context, tmp_error); + + g_propagate_error (error, tmp_error); +} + +static void set_error (GMarkupParseContext *context, GError **error, GMarkupError code, const gchar *format, ...) { - GError *tmp_error; gchar *s; gchar *s_valid; va_list args; @@ -257,22 +276,13 @@ set_error (GMarkupParseContext *context, s = g_strdup_vprintf (format, args); va_end (args); - /* Make sure that the GError message is valid UTF-8 even if it is + /* Make sure that the GError message is valid UTF-8 even if it is * complaining about invalid UTF-8 in the markup: */ s_valid = _g_utf8_make_valid (s); - tmp_error = g_error_new_literal (G_MARKUP_ERROR, code, s_valid); + set_error_literal (context, error, code, s); g_free (s); g_free (s_valid); - - g_prefix_error (&tmp_error, - _("Error on line %d char %d: "), - context->line_number, - context->char_number); - - mark_error (context, tmp_error); - - g_propagate_error (error, tmp_error); } static void @@ -1047,11 +1057,10 @@ g_markup_parse_context_parse (GMarkupParseContext *context, /* The leftover char portion is too big to be * a UTF-8 character */ - set_error (context, - error, - G_MARKUP_ERROR_BAD_UTF8, - "%s", - _("Invalid UTF-8 encoded text - overlong sequence")); + set_error_literal (context, + error, + G_MARKUP_ERROR_BAD_UTF8, + _("Invalid UTF-8 encoded text - overlong sequence")); } goto finished; @@ -1076,11 +1085,10 @@ g_markup_parse_context_parse (GMarkupParseContext *context, */ if ((*context->current_text & 0xc0) == 0x80) /* not a char start */ { - set_error (context, - error, - G_MARKUP_ERROR_BAD_UTF8, - "%s", - _("Invalid UTF-8 encoded text - not a start char")); + set_error_literal (context, + error, + G_MARKUP_ERROR_BAD_UTF8, + _("Invalid UTF-8 encoded text - not a start char")); goto finished; } @@ -1154,11 +1162,10 @@ g_markup_parse_context_parse (GMarkupParseContext *context, } else { - set_error (context, - error, - G_MARKUP_ERROR_PARSE, - "%s", - _("Document must begin with an element (e.g. )")); + set_error_literal (context, + error, + G_MARKUP_ERROR_PARSE, + _("Document must begin with an element (e.g. )")); } } break; @@ -1847,8 +1854,8 @@ g_markup_parse_context_end_parse (GMarkupParseContext *context, if (context->document_empty) { - set_error (context, error, G_MARKUP_ERROR_EMPTY, "%s", - _("Document was empty or contained only whitespace")); + set_error_literal (context, error, G_MARKUP_ERROR_EMPTY, + _("Document was empty or contained only whitespace")); return FALSE; } @@ -1861,8 +1868,8 @@ g_markup_parse_context_end_parse (GMarkupParseContext *context, break; case STATE_AFTER_OPEN_ANGLE: - set_error (context, error, G_MARKUP_ERROR_PARSE, "%s", - _("Document ended unexpectedly just after an open angle bracket '<'")); + set_error_literal (context, error, G_MARKUP_ERROR_PARSE, + _("Document ended unexpectedly just after an open angle bracket '<'")); break; case STATE_AFTER_CLOSE_ANGLE: @@ -1883,33 +1890,33 @@ g_markup_parse_context_end_parse (GMarkupParseContext *context, break; case STATE_INSIDE_OPEN_TAG_NAME: - set_error (context, error, G_MARKUP_ERROR_PARSE, "%s", - _("Document ended unexpectedly inside an element name")); + set_error_literal (context, error, G_MARKUP_ERROR_PARSE, + _("Document ended unexpectedly inside an element name")); break; case STATE_INSIDE_ATTRIBUTE_NAME: case STATE_AFTER_ATTRIBUTE_NAME: - set_error (context, error, G_MARKUP_ERROR_PARSE, "%s", - _("Document ended unexpectedly inside an attribute name")); + set_error_literal (context, error, G_MARKUP_ERROR_PARSE, + _("Document ended unexpectedly inside an attribute name")); break; case STATE_BETWEEN_ATTRIBUTES: - set_error (context, error, G_MARKUP_ERROR_PARSE, "%s", - _("Document ended unexpectedly inside an element-opening " - "tag.")); + set_error_literal (context, error, G_MARKUP_ERROR_PARSE, + _("Document ended unexpectedly inside an element-opening " + "tag.")); break; case STATE_AFTER_ATTRIBUTE_EQUALS_SIGN: - set_error (context, error, G_MARKUP_ERROR_PARSE, "%s", - _("Document ended unexpectedly after the equals sign " - "following an attribute name; no attribute value")); + set_error_literal (context, error, G_MARKUP_ERROR_PARSE, + _("Document ended unexpectedly after the equals sign " + "following an attribute name; no attribute value")); break; case STATE_INSIDE_ATTRIBUTE_VALUE_SQ: case STATE_INSIDE_ATTRIBUTE_VALUE_DQ: - set_error (context, error, G_MARKUP_ERROR_PARSE, "%s", - _("Document ended unexpectedly while inside an attribute " - "value")); + set_error_literal (context, error, G_MARKUP_ERROR_PARSE, + _("Document ended unexpectedly while inside an attribute " + "value")); break; case STATE_INSIDE_TEXT: @@ -1929,9 +1936,9 @@ g_markup_parse_context_end_parse (GMarkupParseContext *context, break; case STATE_INSIDE_PASSTHROUGH: - set_error (context, error, G_MARKUP_ERROR_PARSE, "%s", - _("Document ended unexpectedly inside a comment or " - "processing instruction")); + set_error_literal (context, error, G_MARKUP_ERROR_PARSE, + _("Document ended unexpectedly inside a comment or " + "processing instruction")); break; case STATE_ERROR: diff --git a/glib/gshell.c b/glib/gshell.c index c68364f..711cdee 100644 --- a/glib/gshell.c +++ b/glib/gshell.c @@ -64,10 +64,10 @@ unquote_string_inplace (gchar* str, gchar** end, GError** err) if (!(*s == '"' || *s == '\'')) { - if (err) - *err = g_error_new_literal (G_SHELL_ERROR, - G_SHELL_ERROR_BAD_QUOTING, - _("Quoted text doesn't begin with a quotation mark")); + g_set_error_literal (err, + G_SHELL_ERROR, + G_SHELL_ERROR_BAD_QUOTING, + _("Quoted text doesn't begin with a quotation mark")); *end = str; return FALSE; } @@ -154,10 +154,10 @@ unquote_string_inplace (gchar* str, gchar** end, GError** err) *dest = '\0'; - if (err) - *err = g_error_new_literal (G_SHELL_ERROR, - G_SHELL_ERROR_BAD_QUOTING, - _("Unmatched quotation mark in command line or other shell-quoted text")); + g_set_error_literal (err, + G_SHELL_ERROR, + G_SHELL_ERROR_BAD_QUOTING, + _("Unmatched quotation mark in command line or other shell-quoted text")); *end = s; return FALSE; } -- 2.7.4