summaryrefslogtreecommitdiff
path: root/object/simple.c
diff options
context:
space:
mode:
authorTor Andersson <tor@ghostscript.com>2004-11-11 07:15:07 +0100
committerTor Andersson <tor@ghostscript.com>2004-11-11 07:15:07 +0100
commit58de1fff510078e3d2d8cfce033c87299adf78f0 (patch)
tree80635049b0d1ccc8840717982afe983ea18c0b37 /object/simple.c
parent2ec725624d637789845478a90f799e9eeb54f9ee (diff)
downloadmupdf-58de1fff510078e3d2d8cfce033c87299adf78f0.tar.xz
filter reference counting
Diffstat (limited to 'object/simple.c')
-rw-r--r--object/simple.c22
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)