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

Re: crash showing log in 1.8.0

From: Paul Burba <ptburba_at_gmail.com>
Date: Mon, 24 Jun 2013 12:17:53 -0400

On Fri, Jun 21, 2013 at 2:25 PM, Stefan Küng <tortoisesvn_at_gmail.com> wrote:
> Hi,
>
> Another one from the crash reports:
>
> in libsvn_client\log.c, line 715, function run_ra_get_log():
>
> matching_segment = bsearch(&younger_rev, log_segments->elts,
> log_segments->nelts, log_segments->elt_size,
> compare_rev_to_segment);
> SVN_ERR_ASSERT(*matching_segment);

I tried to create a test for this, but I can't. So while I'm still
stumped how the only caller of run_ra_get_log could ever provide
LOG_SEGMENTS which doesn't represent the history of PATHS from the
oldest to youngest revs in REVISION_RANGES (including empty gaps!),
clearly this is happening. Fixed in r1496110. I'll nominate for
backport to 1.8.1.

--
Paul T. Burba
CollabNet, Inc. -- www.collab.net -- Enterprise Cloud Development
Skype: ptburba
P.S. Stefan - per my earlier private request, I'd still like full
access to the crash reports server.  I'd still like to be able to
reproduce this.
> The crash report indicates that 'matching_segment' is NULL, as 'bsearch' can
> return according to the docs.
>
> First problem: the SVN_ERR_ASSERT() is wrong since it tries to access the
> returned pointer instead of checking the pointer itself:
>
> SVN_ERR_ASSERT(matching_segment);
>
> would be the correct way to do this.
>
> The other problem is that the pointer actually is NULL and therefore the
> assertion (if it was coded properly) would have triggered. Instead I now get
> crash reports for this.
> https://www.crash-server.com/Problem.aspx?ClientID=tsvn&ProblemID=26730
>
>
> Stefan
>
> --
>        ___
>   oo  // \\      "De Chelonian Mobile"
>  (_,\/ \_/ \     TortoiseSVN
>    \ \_/_\_/>    The coolest interface to (Sub)version control
>    /_/   \_\     http://tortoisesvn.net
Received on 2013-06-24 18:18:27 CEST

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.