diff --git a/poincare/include/poincare/tree_pool.h b/poincare/include/poincare/tree_pool.h index 7d54e5fb4..c700bd74c 100644 --- a/poincare/include/poincare/tree_pool.h +++ b/poincare/include/poincare/tree_pool.h @@ -19,13 +19,13 @@ public: TreeNode * last() const { return reinterpret_cast(const_cast(m_cursor)); } template - TreeNode * createTreeNode() { + TreeNode * createTreeNode(size_t size = sizeof(T)) { int nodeIdentifier = generateIdentifier(); if (nodeIdentifier == -1) { T::FailedAllocationStaticNode()->retain(); return T::FailedAllocationStaticNode(); } - void * ptr = alloc(sizeof(T)); + void * ptr = alloc(size); if (ptr == nullptr) { T::FailedAllocationStaticNode()->retain(); return T::FailedAllocationStaticNode();