diff --git a/ChangeLog b/ChangeLog index 09fa017f..85bf2951 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,10 @@ What's New for OpenJPEG ! : changed + : added + +November 14, 2007 +! [FOD] Patch by Callum Lerwick. Instead of reinventing realloc, j2k_read_sod now just uses opj_realloc in j2k.c + November 13, 2007 ! [FOD] Patch by Dzonatas and Callum Lerwick. Fp/vectorization patch which basically converts most of the irreversible decode codepath to floating point, diff --git a/libopenjpeg/j2k.c b/libopenjpeg/j2k.c index dfa8286c..f563b2a6 100644 --- a/libopenjpeg/j2k.c +++ b/libopenjpeg/j2k.c @@ -1509,11 +1509,8 @@ static void j2k_read_sod(opj_j2k_t *j2k) { truncate = 1; /* Case of a truncate codestream */ } - data = (unsigned char *) opj_malloc((j2k->tile_len[curtileno] + len) * sizeof(unsigned char)); - - for (i = 0; i < j2k->tile_len[curtileno]; i++) { - data[i] = j2k->tile_data[curtileno][i]; - } + data = j2k->tile_data[curtileno]; + data = (unsigned char*) opj_realloc(data, (j2k->tile_len[curtileno] + len) * sizeof(unsigned char)); data_ptr = data + j2k->tile_len[curtileno]; for (i = 0; i < len; i++) { @@ -1521,7 +1518,6 @@ static void j2k_read_sod(opj_j2k_t *j2k) { } j2k->tile_len[curtileno] += len; - opj_free(j2k->tile_data[curtileno]); j2k->tile_data[curtileno] = data; if (!truncate) {