[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Crash when merging

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Wed, 16 Nov 2011 18:24:21 +0100

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
Received on 2011-11-16 18:25:00 CET

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.