diff options
author | Liang Qi <liang.qi@theqtcompany.com> | 2015-04-08 10:10:02 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@theqtcompany.com> | 2015-04-09 08:41:30 +0000 |
commit | 600a2d18d40ba87a273e1a258ce3189b0edc11f8 (patch) | |
tree | d80ede3880cb86f06eae50191e5dd3b102482189 /src/3rdparty/libwebp/src/demux | |
parent | 32e437b1244e7bf45011e4fd770fc0eef40d02de (diff) |
libwebp: update to 0.4.3
This commit imports libwebp 0.4.3, including AUTHORS, COPYING, ChangeLog,
NEWS, PATENTS, README and src directories. In src, only includes header
and source files.
The patches required to build it in Qt will follow in separate
commit(s).
Change-Id: I23ebfd69e47a468c91a9e9b109e9cb8ac63705d4
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: aavit <eirik.aavitsland@theqtcompany.com>
Diffstat (limited to 'src/3rdparty/libwebp/src/demux')
-rw-r--r-- | src/3rdparty/libwebp/src/demux/demux.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/src/3rdparty/libwebp/src/demux/demux.c b/src/3rdparty/libwebp/src/demux/demux.c index f66ac6d..55a7918 100644 --- a/src/3rdparty/libwebp/src/demux/demux.c +++ b/src/3rdparty/libwebp/src/demux/demux.c @@ -11,7 +11,7 @@ // #ifdef HAVE_CONFIG_H -#include "config.h" +#include "../webp/config.h" #endif #include <assert.h> @@ -25,7 +25,7 @@ #define DMUX_MAJ_VERSION 0 #define DMUX_MIN_VERSION 2 -#define DMUX_REV_VERSION 0 +#define DMUX_REV_VERSION 2 typedef struct { size_t start_; // start location of the data @@ -289,7 +289,7 @@ static ParseStatus NewFrame(const MemBuffer* const mem, if (actual_size < min_size) return PARSE_ERROR; if (MemDataSize(mem) < min_size) return PARSE_NEED_MORE_DATA; - *frame = (Frame*)calloc(1, sizeof(**frame)); + *frame = (Frame*)WebPSafeCalloc(1ULL, sizeof(**frame)); return (*frame == NULL) ? PARSE_ERROR : PARSE_OK; } @@ -317,7 +317,7 @@ static ParseStatus ParseAnimationFrame( (bits & 1) ? WEBP_MUX_DISPOSE_BACKGROUND : WEBP_MUX_DISPOSE_NONE; frame->blend_method_ = (bits & 2) ? WEBP_MUX_NO_BLEND : WEBP_MUX_BLEND; if (frame->width_ * (uint64_t)frame->height_ >= MAX_IMAGE_AREA) { - free(frame); + WebPSafeFree(frame); return PARSE_ERROR; } @@ -333,7 +333,7 @@ static ParseStatus ParseAnimationFrame( } } - if (!added_frame) free(frame); + if (!added_frame) WebPSafeFree(frame); return status; } @@ -368,7 +368,7 @@ static ParseStatus ParseFragment(WebPDemuxer* const dmux, } } - if (!added_fragment) free(frame); + if (!added_fragment) WebPSafeFree(frame); return status; } #endif // WEBP_EXPERIMENTAL_FEATURES @@ -379,7 +379,7 @@ static ParseStatus ParseFragment(WebPDemuxer* const dmux, // Returns true on success, false otherwise. static int StoreChunk(WebPDemuxer* const dmux, size_t start_offset, uint32_t size) { - Chunk* const chunk = (Chunk*)calloc(1, sizeof(*chunk)); + Chunk* const chunk = (Chunk*)WebPSafeCalloc(1ULL, sizeof(*chunk)); if (chunk == NULL) return 0; chunk->data_.offset_ = start_offset; @@ -427,7 +427,7 @@ static ParseStatus ParseSingleImage(WebPDemuxer* const dmux) { if (SizeIsInvalid(mem, min_size)) return PARSE_ERROR; if (MemDataSize(mem) < min_size) return PARSE_NEED_MORE_DATA; - frame = (Frame*)calloc(1, sizeof(*frame)); + frame = (Frame*)WebPSafeCalloc(1ULL, sizeof(*frame)); if (frame == NULL) return PARSE_ERROR; // For the single image case we allow parsing of a partial frame, but we need @@ -458,7 +458,7 @@ static ParseStatus ParseSingleImage(WebPDemuxer* const dmux) { } } - if (!image_added) free(frame); + if (!image_added) WebPSafeFree(frame); return status; } @@ -729,7 +729,7 @@ WebPDemuxer* WebPDemuxInternal(const WebPData* data, int allow_partial, partial = (mem.buf_size_ < mem.riff_end_); if (!allow_partial && partial) return NULL; - dmux = (WebPDemuxer*)calloc(1, sizeof(*dmux)); + dmux = (WebPDemuxer*)WebPSafeCalloc(1ULL, sizeof(*dmux)); if (dmux == NULL) return NULL; InitDemux(dmux, &mem); @@ -761,14 +761,14 @@ void WebPDemuxDelete(WebPDemuxer* dmux) { for (f = dmux->frames_; f != NULL;) { Frame* const cur_frame = f; f = f->next_; - free(cur_frame); + WebPSafeFree(cur_frame); } for (c = dmux->chunks_; c != NULL;) { Chunk* const cur_chunk = c; c = c->next_; - free(cur_chunk); + WebPSafeFree(cur_chunk); } - free(dmux); + WebPSafeFree(dmux); } // ----------------------------------------------------------------------------- |