Merge branch 'gvariant' into 'master'

Fix ^*ay handling in g_variant_iter_loop()

See merge request GNOME/glib!417
This commit is contained in:
Philip Withnall 2018-10-31 22:16:02 +00:00
commit da790bc6da
2 changed files with 394 additions and 310 deletions

View File

@ -4662,7 +4662,15 @@ g_variant_valist_free_nnp (const gchar *str,
break;
case '^':
if (str[2] != '&') /* '^as', '^ao' */
if (g_str_has_suffix (str, "y"))
{
if (str[2] != 'a') /* '^a&ay', '^ay' */
g_free (ptr);
else if (str[1] == 'a') /* '^aay' */
g_strfreev (ptr);
break; /* '^&ay' */
}
else if (str[2] != '&') /* '^as', '^ao' */
g_strfreev (ptr);
else /* '^a&s', '^a&o' */
g_free (ptr);

File diff suppressed because it is too large Load Diff