Previously the Tier 1 handle was not freed when setting it as
TLS failed.
This fixes issue #1257.
opj_free(job);
return;
}
- opj_tls_set(tls, OPJ_TLS_KEY_T1, t1, opj_t1_destroy_wrapper);
+ if (!opj_tls_set(tls, OPJ_TLS_KEY_T1, t1, opj_t1_destroy_wrapper)) {
+ opj_event_msg(job->p_manager, EVT_ERROR,
+ "Unable to set t1 handle as TLS\n");
+ opj_t1_destroy(t1);
+ *(job->pret) = OPJ_FALSE;
+ opj_free(job);
+ return;
+ }
}
t1->mustuse_cblkdatabuffer = job->mustuse_cblkdatabuffer;