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

Re: blame can access NULL-pointer

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Wed, 02 Jul 2008 18:40:36 +0200

Julian Foad wrote:
> On Wed, 2008-07-02 at 18:26 +0200, Arfrever Frehtes Taifersar Arahesis
> wrote:
>> 2008-07-02 18:19:45 Stefan Küng napisa³(a):
>>> Hi,
>>>
>>> In file subversion\libsvn_client\blame.c, line 684 there is an assert:
>>>
>>> /* The callback has to have been called at least once. */
>>> assert(frb.last_filename != NULL);
>>>
>>> I just got a crash report for TSVN where this assert is being hit: the
>>> user passed a revision range which didn't touch the file to blame. So
>>> the callback was never hit.
>>>
>>> I suggest returning an error there, something like "nothing to blame for
>>> the specified revision range".
>> Julian Foad fixed it in r31972.
>
> No I didn't. I just converted all "assert" macros into "SVN_ERR_ASSERT"
> macros, which does provide the application with the option of returning
> an error object to report the assertion failure instead of aborting, but
> doesn't make it right that this supposedly "can't happen" condition in
> fact can happen.

I guess that new macro won't get into 1.5.x?
If not, then I would still recommend to return an error there and
backport that fix to 1.5.x. After all, it *can* happen.

Stefan

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

Received on 2008-07-02 18:41:37 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.