Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Alexander_Naumov:SLE-12:Update
glib2.9083
glib2-CVE-2018-16429.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File glib2-CVE-2018-16429.patch of Package glib2.9083
diff --git a/glib/gmarkup.c b/glib/gmarkup.c index 503e3ac..56182f7 100644 --- a/glib/gmarkup.c +++ b/glib/gmarkup.c @@ -561,7 +561,16 @@ static gchar* utf8_str (const gchar *utf8, gchar *buf) { - char_str (g_utf8_get_char (utf8), buf); + gunichar c = g_utf8_get_char_validated (utf8, -1); + if (c == (gunichar) -1 || c == (gunichar) -2) + { + gchar *temp = g_strdup_printf ("\\x%02x", (guint)(guchar)*utf8); + memset (buf, 0, 8); + memcpy (buf, temp, strlen (temp)); + g_free (temp); + } + else + char_str (c, buf); return buf; } diff --git a/glib/tests/Makefile.am b/glib/tests/Makefile.am index 2a0fbe8..6e49f4e 100644 --- a/glib/tests/Makefile.am +++ b/glib/tests/Makefile.am @@ -137,7 +137,7 @@ markup_tests = \ fail-31 fail-32 fail-33 fail-34 fail-35 \ fail-36 fail-37 fail-38 fail-39 fail-40 \ fail-41 fail-42 fail-43 fail-44 fail-45 \ - fail-46 fail-47 fail-48 fail-49 \ + fail-46 fail-47 fail-48 fail-49 fail-50 \ fail-51 \ valid-1 valid-2 valid-3 valid-4 valid-5 \ valid-6 valid-7 valid-8 valid-9 valid-10 \ diff --git a/glib/tests/markups/fail-50.expected b/glib/tests/markups/fail-50.expected new file mode 100644 index 0000000..70d4498 --- /dev/null +++ b/glib/tests/markups/fail-50.expected @@ -0,0 +1 @@ +ERROR Error on line 1 char 5: Odd character “\xfc”, expected an open quote mark after the equals sign when giving value for attribute “r” of element “” diff --git a/glib/tests/markups/fail-50.gmarkup b/glib/tests/markups/fail-50.gmarkup new file mode 100644 index 0000000..3a3d0c0 --- /dev/null +++ b/glib/tests/markups/fail-50.gmarkup @@ -0,0 +1 @@ +< r=
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor