summaryrefslogtreecommitdiff
path: root/Build/source/libs/xpdf/xpdf-src/goo/gmempp.cc
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/xpdf/xpdf-src/goo/gmempp.cc')
-rw-r--r--Build/source/libs/xpdf/xpdf-src/goo/gmempp.cc23
1 files changed, 21 insertions, 2 deletions
diff --git a/Build/source/libs/xpdf/xpdf-src/goo/gmempp.cc b/Build/source/libs/xpdf/xpdf-src/goo/gmempp.cc
index b1ee970d38a..fe5790b1f58 100644
--- a/Build/source/libs/xpdf/xpdf-src/goo/gmempp.cc
+++ b/Build/source/libs/xpdf/xpdf-src/goo/gmempp.cc
@@ -10,23 +10,42 @@
#include <aconf.h>
#include "gmem.h"
+// NB: do not include gmempp.h here.
#ifdef DEBUG_MEM
void *operator new(size_t size) {
- return gmalloc((int)size);
+ return gmalloc((int)size, 1);
+}
+
+void *operator new(size_t size, int dummy) {
+ return gmalloc((int)size, 0);
}
void *operator new[](size_t size) {
- return gmalloc((int)size);
+ return gmalloc((int)size, 1);
+}
+
+void *operator new[](size_t size, int dummy) {
+ return gmalloc((int)size, 0);
}
void operator delete(void *p) {
gfree(p);
}
+// This is only called if a constructor throws an exception.
+void operator delete(void *p, int dummy) {
+ gfree(p);
+}
+
void operator delete[](void *p) {
gfree(p);
}
+// This is only called if a constructor throws an exception.
+void operator delete[](void *p, int dummy) {
+ gfree(p);
+}
+
#endif