summaryrefslogtreecommitdiff
path: root/source/fitz/hash.c
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2017-11-08 19:45:14 +0000
committerRobin Watts <robin.watts@artifex.com>2017-11-09 12:41:52 +0000
commit258f03a0a55c1aa802e1be47e463d8abc5096196 (patch)
tree7596f3081254276b29d929aa87b233a04d02ce51 /source/fitz/hash.c
parent9f32fdff17f9d6cb114c4f70d1e4b8364e8b5d11 (diff)
downloadmupdf-258f03a0a55c1aa802e1be47e463d8abc5096196.tar.xz
Bug 698353: Avoid having our API depend on DEBUG/NDEBUG.
Currently, our API uses static inlines for fz_lock and fz_unlock, the definitions for which depend on whether we build NDEBUG or not. This isn't ideal as it causes problems when people link a release binary with a debug lib (or vice versa). We really want to continue to use static inlines for the locking functions as used from MuPDF, as we hit them hard in the keep/drop functions. We therefore remove fz_lock/fz_unlock from the public API entirely. Accordingly, we move the fz_lock/fz_unlock static inlines into fitz-imp.h (an internal header), together with the fz_keep_.../fz_drop_... functions. We then have public fz_lock/fz_unlock functions for any external callers to use that are free of compilications. At the same time, to avoid another indirection, we change from holding the locking functions as a pointer to a struct to a struct itself.
Diffstat (limited to 'source/fitz/hash.c')
-rw-r--r--source/fitz/hash.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/source/fitz/hash.c b/source/fitz/hash.c
index af95ba9c..669f5d2c 100644
--- a/source/fitz/hash.c
+++ b/source/fitz/hash.c
@@ -1,4 +1,5 @@
#include "mupdf/fitz.h"
+#include "fitz-imp.h"
#include <string.h>
#include <assert.h>