Hi, The current apr_pools.c file is a serious case of "spaghetti" code (ifdefs, debug and non-debug mixed, etc), making it hard to read f not impossible (subtle changes, catastrophic impact).
In order to increase the overall readability and foster future improvements, I've separated the apr_pools.c file into more sane and self contained files: apr-pools-allocator.patch # allocator.c apr_allocator apr-pools-print.patch # print.c apr_psprintf and family apr-pools-cleanup.patch # cleanup.c pool cleanup functions apr-pools-properties.patch # propertiees.c set/get methods apr-pools-debug.patch # pools_debug.c pool debug code apr-pools-consolidate.patch # pools.c pool non-debug code Patchset available at http://people.apache.org/~davi/pools/ Before: text data bss dec hex filename 164467 3664 232 168363 291ab libapr-1.so.0.3.0 apr_pools.c 2333 lines libapr-1.so.0.3.0 173K After: text data bss dec hex filename 162033 3680 232 165945 28839 libapr-1.so.0.3.0 pools.c 434 lines libapr-1.so.0.3.0 169K Comments? -- Davi Arnaut
