diff options
author | Tor Andersson <tor.andersson@artifex.com> | 2015-05-19 17:22:30 +0200 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2015-05-19 17:22:53 +0200 |
commit | 2dd8a8e7c4cc37c9b4a2c3d961739ad14259a83a (patch) | |
tree | d7ea7764a7ebb192abe46c015246b4419e7dc29e /source/fitz/colorspace.c | |
parent | 02cc7931ef0f04218bd50b3e0e396a6dcb009962 (diff) | |
download | mupdf-2dd8a8e7c4cc37c9b4a2c3d961739ad14259a83a.tar.xz |
Add locks to fz_set_device_xxx colorspace context functions.
Diffstat (limited to 'source/fitz/colorspace.c')
-rw-r--r-- | source/fitz/colorspace.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source/fitz/colorspace.c b/source/fitz/colorspace.c index d145be27..5549496e 100644 --- a/source/fitz/colorspace.c +++ b/source/fitz/colorspace.c @@ -253,29 +253,37 @@ fz_lookup_device_colorspace(fz_context *ctx, char *name) void fz_set_device_gray(fz_context *ctx, fz_colorspace *cs) { + fz_lock(ctx, FZ_LOCK_ALLOC); fz_drop_colorspace(ctx, ctx->colorspace->gray); ctx->colorspace->gray = fz_keep_colorspace(ctx, cs); + fz_unlock(ctx, FZ_LOCK_ALLOC); } void fz_set_device_rgb(fz_context *ctx, fz_colorspace *cs) { + fz_lock(ctx, FZ_LOCK_ALLOC); fz_drop_colorspace(ctx, ctx->colorspace->rgb); ctx->colorspace->rgb = fz_keep_colorspace(ctx, cs); + fz_unlock(ctx, FZ_LOCK_ALLOC); } void fz_set_device_bgr(fz_context *ctx, fz_colorspace *cs) { + fz_lock(ctx, FZ_LOCK_ALLOC); fz_drop_colorspace(ctx, ctx->colorspace->bgr); ctx->colorspace->bgr = fz_keep_colorspace(ctx, cs); + fz_unlock(ctx, FZ_LOCK_ALLOC); } void fz_set_device_cmyk(fz_context *ctx, fz_colorspace *cs) { + fz_lock(ctx, FZ_LOCK_ALLOC); fz_drop_colorspace(ctx, ctx->colorspace->cmyk); ctx->colorspace->cmyk = fz_keep_colorspace(ctx, cs); + fz_unlock(ctx, FZ_LOCK_ALLOC); } int |