diff options
author | Emmanuele Bassi <ebassi@linux.intel.com> | 2011-02-15 16:12:38 +0000 |
---|---|---|
committer | Emmanuele Bassi <ebassi@linux.intel.com> | 2011-02-15 16:12:38 +0000 |
commit | 1a633159a593c962233a5ef4660e31e60eed96d9 (patch) | |
tree | 45c049c02c012120439710bd6a002d19a2112ac3 /json-glib/json-node.c | |
parent | a125a724894a08a8d8053fdd2db92d0ad8e2dfd4 (diff) | |
download | json-glib-1a633159a593c962233a5ef4660e31e60eed96d9.tar.gz |
object: Replace the name pointer in the members list
When calling g_hash_table_replace() we also free the string holding the
member name. This means that the const gchar* pointer we store inside
the list of ordered member names now points to garbage - so if somebody
tries to iterate over the members list it will get random values instead
of a valid C string.
Since we guaranteed insertion order, if we replace the contents of a
JsonObject member we need to find the right pointer and replace it: just
removing and prepending won't do.
https://bugzilla.gnome.org/show_bug.cgi?id=642383
Diffstat (limited to 'json-glib/json-node.c')
0 files changed, 0 insertions, 0 deletions