On Apr 30, 2012 9:38 PM, "Hyrum K Wright" <[email protected]> wrote: >... > > +/* Insert a new change for RELPATH, or return an existing one. */ > > +static struct change_node * > > +insert_change(const char *relpath, > > + apr_hash_t *changes) > > +{ > > + apr_pool_t *result_pool; > > + struct change_node *change; > > + > > + change = apr_hash_get(changes, relpath, APR_HASH_KEY_STRING); > > + if (change != NULL) > > + return change; > > + > > + result_pool = apr_hash_pool_get(changes); > > + > > + /* Return an empty change. Callers will tweak as needed. */ > > + change = apr_pcalloc(result_pool, sizeof(*change)); > > + change->changing = SVN_INVALID_REVNUM; > > + change->deleting = SVN_INVALID_REVNUM; > > + > > + apr_hash_set(changes, relpath, APR_HASH_KEY_STRING, change); > > As the key of the hash, RELPATH should be duplicated into a pool with > sufficient lifetime.
Good catch! Fixed in r1332508.

