summaryrefslogtreecommitdiffstats
path: root/third_party/lzma_sdk/7zAlloc.c
diff options
context:
space:
mode:
authorbashi@chromium.org <bashi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-18 23:02:31 +0000
committerbashi@chromium.org <bashi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-18 23:02:31 +0000
commitce59605d9f7aa1ba166dff1c36a2b3705a21cff3 (patch)
tree1d8043aa86e47194ef843273556e690fa5666e4d /third_party/lzma_sdk/7zAlloc.c
parent9119274849baf458401656254b079b21ece24455 (diff)
downloadchromium_src-ce59605d9f7aa1ba166dff1c36a2b3705a21cff3.zip
chromium_src-ce59605d9f7aa1ba166dff1c36a2b3705a21cff3.tar.gz
chromium_src-ce59605d9f7aa1ba166dff1c36a2b3705a21cff3.tar.bz2
Update lzma_sdk to 9.20
Copied only C code required to open 7z archive files and uncompress LZMA compression. Updated chrome/installer/util/lzma_util.cc to follow API changes. BUG=None TEST=installer_util_unittests --gtest_filter='LzmaUtilTest.*' Review URL: http://codereview.chromium.org/10114005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132887 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party/lzma_sdk/7zAlloc.c')
-rw-r--r--third_party/lzma_sdk/7zAlloc.c76
1 files changed, 76 insertions, 0 deletions
diff --git a/third_party/lzma_sdk/7zAlloc.c b/third_party/lzma_sdk/7zAlloc.c
new file mode 100644
index 0000000..964b28d
--- /dev/null
+++ b/third_party/lzma_sdk/7zAlloc.c
@@ -0,0 +1,76 @@
+/* 7zAlloc.c -- Allocation functions
+2010-10-29 : Igor Pavlov : Public domain */
+
+#include "7zAlloc.h"
+
+/* #define _SZ_ALLOC_DEBUG */
+/* use _SZ_ALLOC_DEBUG to debug alloc/free operations */
+
+#ifdef _SZ_ALLOC_DEBUG
+
+#ifdef _WIN32
+#include <windows.h>
+#endif
+
+#include <stdio.h>
+int g_allocCount = 0;
+int g_allocCountTemp = 0;
+
+#endif
+
+void *SzAlloc(void *p, size_t size)
+{
+ p = p;
+ if (size == 0)
+ return 0;
+ #ifdef _SZ_ALLOC_DEBUG
+ fprintf(stderr, "\nAlloc %10d bytes; count = %10d", size, g_allocCount);
+ g_allocCount++;
+ #endif
+ return malloc(size);
+}
+
+void SzFree(void *p, void *address)
+{
+ p = p;
+ #ifdef _SZ_ALLOC_DEBUG
+ if (address != 0)
+ {
+ g_allocCount--;
+ fprintf(stderr, "\nFree; count = %10d", g_allocCount);
+ }
+ #endif
+ free(address);
+}
+
+void *SzAllocTemp(void *p, size_t size)
+{
+ p = p;
+ if (size == 0)
+ return 0;
+ #ifdef _SZ_ALLOC_DEBUG
+ fprintf(stderr, "\nAlloc_temp %10d bytes; count = %10d", size, g_allocCountTemp);
+ g_allocCountTemp++;
+ #ifdef _WIN32
+ return HeapAlloc(GetProcessHeap(), 0, size);
+ #endif
+ #endif
+ return malloc(size);
+}
+
+void SzFreeTemp(void *p, void *address)
+{
+ p = p;
+ #ifdef _SZ_ALLOC_DEBUG
+ if (address != 0)
+ {
+ g_allocCountTemp--;
+ fprintf(stderr, "\nFree_temp; count = %10d", g_allocCountTemp);
+ }
+ #ifdef _WIN32
+ HeapFree(GetProcessHeap(), 0, address);
+ return;
+ #endif
+ #endif
+ free(address);
+}