summaryrefslogtreecommitdiff
path: root/contrib/apr/tables/apr_tables.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/apr/tables/apr_tables.c')
-rw-r--r--contrib/apr/tables/apr_tables.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/contrib/apr/tables/apr_tables.c b/contrib/apr/tables/apr_tables.c
index 51b23407cc0e..7479ef47c7ae 100644
--- a/contrib/apr/tables/apr_tables.c
+++ b/contrib/apr/tables/apr_tables.c
@@ -734,11 +734,14 @@ APR_DECLARE(void) apr_table_mergen(apr_table_t *t, const char *key,
#if APR_POOL_DEBUG
{
- if (!apr_pool_is_ancestor(apr_pool_find(key), t->a.pool)) {
+ apr_pool_t *pool;
+ pool = apr_pool_find(key);
+ if ((pool != key) && (!apr_pool_is_ancestor(pool, t->a.pool))) {
fprintf(stderr, "apr_table_mergen: key not in ancestor pool of t\n");
abort();
}
- if (!apr_pool_is_ancestor(apr_pool_find(val), t->a.pool)) {
+ pool = apr_pool_find(val);
+ if ((pool != val) && (!apr_pool_is_ancestor(pool, t->a.pool))) {
fprintf(stderr, "apr_table_mergen: val not in ancestor pool of t\n");
abort();
}