aboutsummaryrefslogtreecommitdiffstats
path: root/ptr.h
diff options
context:
space:
mode:
authorSteve Slaven <bpk@hoopajoo.net>2007-03-08 06:30:31 (GMT)
committerSteve Slaven <bpk@hoopajoo.net>2007-03-08 06:30:31 (GMT)
commit8e32cb9a8796ace1600b96e567ecbaf3a2b53c15 (patch)
tree776669bdcd29af3cc650896f139c0848589a7600 /ptr.h
parent6f63dcd173009042b570e3da58cf16458ef849da (diff)
downloadpowwow-8e32cb9a8796ace1600b96e567ecbaf3a2b53c15.zip
powwow-8e32cb9a8796ace1600b96e567ecbaf3a2b53c15.tar.gz
powwow-8e32cb9a8796ace1600b96e567ecbaf3a2b53c15.tar.bz2
This should again fix the double-free bug that was once fixed in perlwow
Diffstat (limited to 'ptr.h')
-rw-r--r--ptr.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/ptr.h b/ptr.h
index 06a0271..4f1654a 100644
--- a/ptr.h
+++ b/ptr.h
@@ -9,6 +9,7 @@
typedef struct s_ptr {
int len;
int max;
+ int signature;
} _ptr;
typedef _ptr * ptr;
@@ -24,7 +25,10 @@ typedef _ptr * ptr;
ptr ptrnew __P ((int max));
ptr ptrdup2 __P ((ptr src, int newmax));
ptr ptrdup __P ((ptr src));
-void ptrdel __P ((ptr p));
+
+#define PTR_SIG 91887
+#define ptrdel(x) _ptrdel(x);x=(ptr)0;
+void _ptrdel __P ((ptr p));
void ptrzero __P ((ptr p));
void ptrshrink __P ((ptr p, int len));