diff options
author | Tor Andersson <tor@ghostscript.com> | 2004-11-11 07:15:07 +0100 |
---|---|---|
committer | Tor Andersson <tor@ghostscript.com> | 2004-11-11 07:15:07 +0100 |
commit | 58de1fff510078e3d2d8cfce033c87299adf78f0 (patch) | |
tree | 80635049b0d1ccc8840717982afe983ea18c0b37 /object/simple.c | |
parent | 2ec725624d637789845478a90f799e9eeb54f9ee (diff) | |
download | mupdf-58de1fff510078e3d2d8cfce033c87299adf78f0.tar.xz |
filter reference counting
Diffstat (limited to 'object/simple.c')
-rw-r--r-- | object/simple.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/object/simple.c b/object/simple.c index 9f645c89..b06c77d7 100644 --- a/object/simple.c +++ b/object/simple.c @@ -3,12 +3,12 @@ extern void fz_droparray(fz_obj *array); extern void fz_dropdict(fz_obj *dict); -#define NEWOBJ(KIND,SIZE) \ - fz_obj *o; \ - o = *op = fz_malloc(SIZE); \ - if (!o) return fz_outofmem; \ - o->kind = KIND; \ - o->refcount = 1 +#define NEWOBJ(KIND,SIZE) \ + fz_obj *o; \ + o = *op = fz_malloc(SIZE); \ + if (!o) return fz_outofmem; \ + o->nrefs = 1; \ + o->kind = KIND; \ fz_error * fz_newnull(fz_obj **op) @@ -71,22 +71,22 @@ fz_error * fz_newpointer(fz_obj **op, void *p) { NEWOBJ(FZ_POINTER, sizeof (fz_obj)); - o->u.p = p; - return nil; + o->u.p = p; + return nil; } fz_obj * fz_keepobj(fz_obj *o) { - o->refcount ++; + o->nrefs ++; return o; } fz_obj * fz_dropobj(fz_obj *o) { - o->refcount --; - if (o->refcount == 0) { + if (--o->nrefs == 0) + { if (o->kind == FZ_ARRAY) fz_droparray(o); else if (o->kind == FZ_DICT) |