diff options
author | con <qtc-committer@nokia.com> | 2009-10-26 13:51:56 +0100 |
---|---|---|
committer | con <qtc-committer@nokia.com> | 2009-10-26 13:51:56 +0100 |
commit | 441ece365aba579eeb66acb509df466f5029c580 (patch) | |
tree | b4f8ac51e0203bad62c301f0c891b9246a15ad6a /src/shared/cplusplus/MemoryPool.cpp | |
parent | 4504aec7deb2f0abcd6a71e094bbcfb4edd5154d (diff) | |
parent | 3c0ca8c18881bc26fd8946bc2651fa89b10a1329 (diff) | |
download | qt-creator-441ece365aba579eeb66acb509df466f5029c580.tar.gz |
Merge commit 'origin/1.3'
Conflicts:
src/plugins/cpptools/cppcodecompletion.h
src/plugins/debugger/gdb/gdbengine.cpp
src/plugins/qmleditor/QmlEditor.pluginspec
Diffstat (limited to 'src/shared/cplusplus/MemoryPool.cpp')
-rw-r--r-- | src/shared/cplusplus/MemoryPool.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/shared/cplusplus/MemoryPool.cpp b/src/shared/cplusplus/MemoryPool.cpp index 2002a65435..1453c62cd6 100644 --- a/src/shared/cplusplus/MemoryPool.cpp +++ b/src/shared/cplusplus/MemoryPool.cpp @@ -110,6 +110,19 @@ void *MemoryPool::allocate_helper(size_t size) return addr; } +MemoryPool::State MemoryPool::state() const +{ return State(ptr, _blockCount); } + +void MemoryPool::rewind(const State &state) +{ + if (_blockCount == state.blockCount && state.ptr < ptr) { + if (_initializeAllocatedMemory) + memset(state.ptr, '\0', ptr - state.ptr); + + ptr = state.ptr; + } +} + Managed::Managed() { } |