You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2010/09/16 22:20:33 UTC
svn commit: r997914 - in /subversion/branches/object-model/subversion:
bindings/c++/Pool.cpp bindings/c++/include/Pool.h
tests/libsvn++/util-test.cpp
Author: hwright
Date: Thu Sep 16 20:20:32 2010
New Revision: 997914
URL: http://svn.apache.org/viewvc?rev=997914&view=rev
Log:
On the object-model branch:
Add a method to grab memory from a Pool.
* subversion/bindings/c++/include/Pool.h
(alloc): New.
* subversion/bindings/c++/Pool.cpp
(Pool::alloc): New.
* subversion/tests/libsvn++/util-test.cpp
(test_pools): Exercise the new API.
Modified:
subversion/branches/object-model/subversion/bindings/c++/Pool.cpp
subversion/branches/object-model/subversion/bindings/c++/include/Pool.h
subversion/branches/object-model/subversion/tests/libsvn++/util-test.cpp
Modified: subversion/branches/object-model/subversion/bindings/c++/Pool.cpp
URL: http://svn.apache.org/viewvc/subversion/branches/object-model/subversion/bindings/c%2B%2B/Pool.cpp?rev=997914&r1=997913&r2=997914&view=diff
==============================================================================
--- subversion/branches/object-model/subversion/bindings/c++/Pool.cpp (original)
+++ subversion/branches/object-model/subversion/bindings/c++/Pool.cpp Thu Sep 16 20:20:32 2010
@@ -41,6 +41,12 @@ Pool::Pool(SVN::Pool::Pool &parent)
m_pool = svn_pool_create(parent.pool());
}
+void *
+Pool::alloc(apr_size_t sz)
+{
+ return apr_palloc(m_pool, sz);
+}
+
Pool::~Pool()
{
if (m_pool)
Modified: subversion/branches/object-model/subversion/bindings/c++/include/Pool.h
URL: http://svn.apache.org/viewvc/subversion/branches/object-model/subversion/bindings/c%2B%2B/include/Pool.h?rev=997914&r1=997913&r2=997914&view=diff
==============================================================================
--- subversion/branches/object-model/subversion/bindings/c++/include/Pool.h (original)
+++ subversion/branches/object-model/subversion/bindings/c++/include/Pool.h Thu Sep 16 20:20:32 2010
@@ -57,6 +57,8 @@ namespace SVN
Pool();
Pool(Pool &parent);
~Pool();
+
+ void *alloc(apr_size_t sz);
apr_pool_t *pool() const;
void clear() const;
};
Modified: subversion/branches/object-model/subversion/tests/libsvn++/util-test.cpp
URL: http://svn.apache.org/viewvc/subversion/branches/object-model/subversion/tests/libsvn%2B%2B/util-test.cpp?rev=997914&r1=997913&r2=997914&view=diff
==============================================================================
--- subversion/branches/object-model/subversion/tests/libsvn++/util-test.cpp (original)
+++ subversion/branches/object-model/subversion/tests/libsvn++/util-test.cpp Thu Sep 16 20:20:32 2010
@@ -34,6 +34,8 @@ test_pools(apr_pool_t *p)
// We ignore the passed in pool, in favor of creating our own.
Pool pool;
+ void *mem = pool.alloc(1000);
+
pool.clear();
return SVN_NO_ERROR;