[Adium-devl] Crash in adium_input_get_error()
Graham Booker
gbooker at cod3r.com
Thu May 17 22:38:15 UTC 2007
On May 17, 2007, at 5:18 PM, Ryan Govostes wrote:
> I'm getting an odd crash when receiving files from an iChat user (he
> on 10.4.8, me on .9). There's no crash log generated.
>
> The crash (a SIGPIPE) occurs while calling write() from
> adiumPurpleEventloop:378 -- the same crash as described in #6927:
>
>> In the past few days Adium X crashes from time to time when I'm
>> connected to my university's WLAN. The only error message I get is
>> "Broken Pipe" (to stdout). No crashlogs are generated. I suspect
>> that it has something to do with AIM, but I'm not sure.
>
> Here's the assembly around where we're crashing:
>
> 0x90014f40 <+0000> li r0,4 // the 'write' syscall
> 0x90014f44 <+0004> sc // crashes during the syscall
> 0x90014f48 <+0008> b 0x90014f50 <write+16>
> 0x90014f4c <+0012> blr
>
> The crash can be recovered from by doubly stepping-over and
> continuing.
>
> Regards,
> Ryan Govostes
This isn't a crash! It is an error signal, nothing more. The
debugger just happens to break on signals, but the program is not
crashed.
All this means is that the write is trying to write to a connection
which is no longer connected.
I had a thought: Since adium stopped using its crash reporter, is
the SIGPIPE signal handled anywhere? This used to be part of the
crash catcher.
Ryan, since you showed assembly code and know what a syscall is, I
trust you have no problem with a small code modification and a
build. Try uncommenting out the line
signal(SIGPIPE, SIG_IGN);
in AIAdium.m:332 and see if this fixes the problem.
- Graham
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 1603 bytes
Desc: not available
URL: <http://adium.im/pipermail/devel_adium.im/attachments/20070517/4325bff3/attachment.p7s>
More information about the devel
mailing list