diff options
author | Mark Doliner <mark@kingant.net> | 2014-10-16 11:36:22 -0700 |
---|---|---|
committer | Mark Doliner <mark@kingant.net> | 2014-10-16 11:36:22 -0700 |
commit | 980fd7cf48b231018e35b3097c54507fd591d2f9 (patch) | |
tree | d5623ed601eca85a35c40d896208e3559e40b050 | |
parent | aee0d4c63b38faeb2868e38530e85c4a8109f8df (diff) | |
parent | 39385e9934482045f3b8cedb6bbab252c7c4fde8 (diff) | |
download | pidgin-980fd7cf48b231018e35b3097c54507fd591d2f9.tar.gz |
Merge pidgin/main release-2.x.y branch into private/main release-2.x.y
No conflicts.
-rw-r--r-- | libpurple/protocols/gg/lib/protobuf-c.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libpurple/protocols/gg/lib/protobuf-c.c b/libpurple/protocols/gg/lib/protobuf-c.c index a42efaa169..e7a4c4c183 100644 --- a/libpurple/protocols/gg/lib/protobuf-c.c +++ b/libpurple/protocols/gg/lib/protobuf-c.c @@ -218,6 +218,8 @@ protobuf_c_buffer_simple_append (ProtobufCBuffer *buffer, while (new_alloced < new_len) new_alloced += new_alloced; DO_ALLOC (new_data, &protobuf_c_default_allocator, new_alloced, return); + if (!new_data) + return; memcpy (new_data, simp->data, simp->len); if (simp->must_free_data) FREE (&protobuf_c_default_allocator, simp->data); @@ -2059,6 +2061,8 @@ parse_member (ScannedMember *scanned_member, ufield->wire_type = scanned_member->wire_type; ufield->len = scanned_member->len; DO_UNALIGNED_ALLOC (ufield->data, allocator, scanned_member->len, return 0); + if (ufield->data == NULL) + return 0; memcpy (ufield->data, scanned_member->data, ufield->len); return 1; } |