Hi,

A few crash reports for TSVN show a problem in libsvn_client\merge.c, function merge_props_changed:

if (strcmp(prop->name, SVN_PROP_MERGEINFO) == 0)
{
  /* Does LOCAL_ABSPATH have any pristine mergeinfo? */
  svn_boolean_t has_pristine_mergeinfo = FALSE;
  apr_hash_t *pristine_props;

  SVN_ERR(svn_wc_get_pristine_props(&pristine_props,
                                    ctx->wc_ctx,
                                    local_abspath,
                                    scratch_pool,
                                    scratch_pool));

  if (apr_hash_get(pristine_props, SVN_PROP_MERGEINFO,
                   APR_HASH_KEY_STRING))
    has_pristine_mergeinfo = TRUE;

The svn_wc_get_pristine_props() sets pristine_props to NULL, which then results in a segfault in apr_hash_get().

svn_wc_get_pristine_props() can set pristine_props to NULL and still return SVN_NO_ERROR if status is either incomplete, excluded, server_excluded or not_present. So it _can_ happen.

Checked the source of the svn trunk: the issue is still there. Haven't found an entry in the issue tracker so I'm reporting this here.

Stefan


--
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.net

Reply via email to