[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GWorkspace hangs on first exit attempt. Remote objects problem?
From: |
Sebastian Reitenbach |
Subject: |
Re: GWorkspace hangs on first exit attempt. Remote objects problem? |
Date: |
Sat, 09 Mar 2013 19:53:00 +0100 |
User-agent: |
SOGoMail 2.0.4b |
On Saturday, March 9, 2013 18:04 CET, Richard Frith-Macdonald
<richard@tiptree.demon.co.uk> wrote:
>
> On 9 Mar 2013, at 14:44, Richard Frith-Macdonald wrote:
>
> >
> > On 9 Mar 2013, at 12:20, Fred Kiefer wrote:
> >>>
> >>> here I checked:
> >>> (gdb) p [invocation->_sig isOneway]
> >>> $7 = 1 '\001'
> >>>
> >>> so it appears that the information about oneway is properly passed, right?
> >>> (gdb) p invocation->_sig->_methodTypes
> >>> $9 = 0x17a9c30 "Vv24@0:8@16"
> >>>
> >>> Is this enough? In case not you need to tell me which part to inspect.
> >>
> >>
> >> I think the interesting stuff happens in frame 4. There we end up in the
> >> needsResponse == YES branch, which seems wrong for a one way method call.
> >> You should have a look at the block from line 2016 to 2039 and find out
> >> why needsResponse gets set to YES. Most likely the method type gets
> >> compute wrongly. We seem to get these strange results sometimes from
> >> libobjc2.
> >
> > Yes ... I can't reproduce the problem on any system I have apaer from the
> > debian 64bit one where I recently installed using llvm/clang and libobjc2.
> > So this seems to be either an llvm/clang specific issue or a libobjc2
> > specific issue, with the code going wrong later on (ie the invocation
> > itsself seems fine).
> > Unfortunately, llvm/clang produces output here that gdb on debian stable
> > won't handle, so while I can reproduce the exception I can't debug it ...
> > I'm going to try finding a backport of a very recent gdb, or failing that,
> > build gdb from source, to see if it can tell me where the compiler/runtime
> > is producing an unexpected result.
>
>
> So, turns out this is libobjc2 bug ... the objc_get_type_qualifiers()
> function was totally broken, with the result that, when the NSConnection code
> asked it whether the method type signature said the method was oneway, the
> result was that it wasn't ... so of course it was then waiting for a response
> which never came.
>
> I fixed the libobjc2 code in svn trunk.
This indeed seemed to have fixed the problem, with updated SVN,
and removed exception in GWorkspace.m, GWorkspace now
correctly exits on first try.
thanks!
Sebastian
> _______________________________________________
> Discuss-gnustep mailing list
> Discuss-gnustep@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnustep
- GWorkspace hangs on first exit attempt. Remote objects problem?, Riccardo Mottola, 2013/03/07
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Riccardo Mottola, 2013/03/07
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Richard Frith-Macdonald, 2013/03/08
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Sebastian Reitenbach, 2013/03/09
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Riccardo Mottola, 2013/03/09
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Fred Kiefer, 2013/03/09
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Richard Frith-Macdonald, 2013/03/09
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Sebastian Reitenbach, 2013/03/09
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Fred Kiefer, 2013/03/09
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Richard Frith-Macdonald, 2013/03/09
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?,
Sebastian Reitenbach <=
- Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Riccardo Mottola, 2013/03/10
Re: GWorkspace hangs on first exit attempt. Remote objects problem?, Sebastian Reitenbach, 2013/03/08