[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: EasyDiff on windows crash
From: |
Wolfgang Lux |
Subject: |
Re: EasyDiff on windows crash |
Date: |
Fri, 10 Aug 2012 11:34:55 +0200 |
Riccardo Mottola wrote:
> On 2012-08-09 23:47:58 +0200 Adam Fedor <fedor@gnu.org> wrote:
>
>> On Aug 9, 2012, at 7:38 AM, Riccardo Mottola wrote:
>>> Hi,
>>> after cleaning it a bit up, I have EasyDiff compiling and running on
>>> windows. Hover if I compare (even the same file with itself) I get a crash
>>> #0 -[NSException raise] (self=0x589d6d90, _cmd=0x66ff04a8)
>>> at NSException.m:955
>>> #1 0x66e705d3 in +[NSException raise:format:] (self=0x66ff02c0,
>>> _cmd=0x67041180, name=0x66feffe4, format=0x67041018) at NSException.m:835
>>> #2 0x66f6156c in default_realloc (zone=0x67040fc0, ptr=0x411b0020,
>>> size=161441860) at NSZone.m:150
>>> #3 0x66dc33f3 in -[GSMutableArray addObject:] (self=0x4817058,
>>> _cmd=0x414db0, anObject=0x589d6648) at GSArray.m:461
>>> #4 0x00407906 in -[DiffWrapper initWithFilename:andFilename:] (
>>> self=0x47bf5f0, _cmd=0x415b60, file1=0x4813a90, file2=0x48966e8)
>>> at DiffWrapper.m:70
>>> #5 0x00408d43 in -[DiffWindowController _initWithFilename:andFilename:] (
>>> self=0x48dfce0, _cmd=0x415af8, filename1=0x4813a90, filename2=0x48966e8)
>>> at DiffWindowController.m:130
>>> #6 0x00408a09 in -[DiffWindowController initWithFilename:andFilename:] (
>>> self=0x48dfce0, _cmd=0x417e10, filename1=0x4813a90, filename2=0x48966e8)
>>> at DiffWindowController.m:88
>>> #7 0x0040d70a in -[DiffFileChooser compare:] (self=0x47cabb0,
>>> If I try to check which number is being added, I get:
>>> (gdb) p anObject
>>> $1 = (id) 0x589d6648
>>> (gdb) po anObject
>>> 89
>> That's an odd backtrace - initWithFilename:andFilename: is called twice. I
>> often find that the windows debugger gets confused. Most of the time I have
>> to single-step through the program from a known good point until I find a
>> problem.
> It looks o9nly that it is called twice: once it is [DiffWindowController
> _initWithFilename:andFilename:] and once [DiffWindowController
> initWithFilename:andFilename:]. Note the underscore.
Nevertheless the debugger seems confused. The self argument of the -addObject:
method, which should be the leftLineRangesArray, is 0x4817058 while debugger
says leftLineRangesArray is (class NSMutableArray *) 0x184b9849. This sort of
thing usually happens when optimization is turned on. But anyway, given this
discrepancy there's no alternative to Adam's advice: single-step through the
program, probably from the start of DiffWrapper -initWithFilename:andFilename:.
Wolfgang