On Sun, 20 Jan 2002, Enrico Sersale wrote:

>
> On 20 Jan 2002, Willem Rein Oudshoorn wrote:
>
> > Enrico Sersale <[EMAIL PROTECTED]> writes:
> > ...
> >
> > A - the DnD code references an deallocated object.
> > B - the deallocated object is a FinderShelfIcon
> > C - the FinderShelfIcon is deallocated when you start
> >     dragging in step 3
> ...
> >
> > D - the dealloc is triggered by the following method
> >       -[ShelfIcon declareAndSetShapeOnPasteboard:]
> >     especially the following line:
> >       [pb declareTypes: owner:]
> >     This registers a new object on the PasteBoard server
> >     and this triggers the release of object that was
> >     stored in step 1.
> >
> > So basically, the Icon dragged in step 1  is kept alive
> > until the second drag because it is still retained by
> > the NSPasteBoard.

Due of the the fact that I provide all the data for the pasteboard in the
same method where i call -(int)declareTypes:(NSArray *)newTypes
owner:(id)newOwner, now I've set newOwner to be nil.

Now, the icon is released (I can verify this with a NSLog() in dealloc).

But, the problem remains and the gdb trace is identical !
I'm seeing for myself that this is a pasteboard problem...

I've also changed in the sources all the little things that, perhaps,
could contribute at the problem, but these weren't many...

This version is at: http://www.imago.ro/gworkspace/gworkspace-test.tar.gz

Please, get it; so we can discuss on the same basis.

> ...


_______________________________________________
Bug-gnustep mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-gnustep

Reply via email to