Fix NULL pointer dereference in out-of-memory situation. Coverity CID 1295383.
diff --git a/lib/zip_extra_field.c b/lib/zip_extra_field.c index 452c296..e40594b 100644 --- a/lib/zip_extra_field.c +++ b/lib/zip_extra_field.c
@@ -310,7 +310,11 @@ { zip_uint8_t b[4]; zip_buffer_t *buffer = _zip_buffer_new(b, sizeof(b)); - + + if (buffer == NULL) { + return -1; + } + for (; ef; ef=ef->next) { if (ef->flags & flags & ZIP_EF_BOTH) { _zip_buffer_set_offset(buffer, 0);