discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Gworkspace with non-fragile abi, etc?


From: Fred Kiefer
Subject: Re: Gworkspace with non-fragile abi, etc?
Date: Sun, 25 Aug 2013 21:03:47 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130620 Thunderbird/17.0.7

On 25.08.2013 04:37, Lee, Seong-Gu wrote:
> On 08/25/2013 05:57 AM, Riccardo Mottola wrote:
>> Lee, Seong-Gu wrote:
>>> 1) GWorkspace with non-fragile abi
>>>   Other usr applications (Gorm, SystemPreferences, etc.) work well except
>>> GWorkspace when compiled with non-fragile abi.
>> <...>
>>>   It seems to occur error when initializaing NSRect object with
>>> NSZeroRect. However, same initialization code from other applications
>>> did not make troubles. I cannot know whether NSStringDrawing.m in
>>> gnustep-gui or GWorkspace source is wrong.
>>>   When NSZeroRect was commented out and gnustep-gui was re-compiled, all
>>> works well.

>  I just conjecture ivars fixed offsets of fragile abi worked well, but
> variable offsets of non-fragile abi may make troubles from [dots
> sizeWithAttributes: fontAttr].width; at FSNBrowserCell.m:87 (GWorkspace)
> --> sizeWithAttributes at NSStringDrawing.m:671 (gnustep-gui) -->
> boundingRectWithSize at NSStringDrawing.m:677 (gnustep-gui) in GDB
> backtrace log quoted and NSStringDrawing.m:681 (FIXME: This ignores
> options). In other words, undetermined object size and address of
> non-fragile abi would be the cause of trouble. If this hypothesis were
> correct, the origin of trouble is not at GWorkSpace source but at
> GNUstep core source or libobjc2. All these may be just delirious
> utterances from novice and even non-developer (me).

I still don't understand what goes on here. Most likely your compiler is
reordering the lines of code here. The assignment of NSZeroRect should
only be executed in the exception case and even there it is not needed.
Could you try to place a breakpoint on NSException? (b [NSException
raise]) If this breakpoint gets reached before the segmentation fault,
please provide us with the full stack trace.

Removing the NSZeroRect initialisation gives still correct code, but I
would prefer to understand where the problem comes from.

Fred



reply via email to

[Prev in Thread] Current Thread [Next in Thread]