Re: Serious Bonobo Problem for Sun



> on 4/4/01 7:54 AM, Michael Meeks at michael ximian com wrote:
>>>       Ok, so, there are several problems here. The first problem is
>>> built into the referencing scheme. An object has a reference count, but
>>> this contains no concept of ownership whatsoever. ie. it is impossible to
>>> tell who owns the 5 references it has. Consequently if someone comes
>>> along, references the server and then crashes or just leaks the reference,
>>> there is no possible way to detect this.

> Darin Adler wrote:
>> That's true in theory, but not in practice. In practice, the Bonobo objects
>> we serve have a single owner. For example a Control has its control frame.
>> While in theory other objects can be holding references, the reference count
>> really does us no good here. A control without its control frame is usually
>> not a useful thing to have.

on 4/4/01 9:42 AM, Dietmar Maurer at dietmar ximian com wrote:

> I thought this problem is already solved? (bonobo-control.c) /*
> * This callback is invoked when the plug is unexpectedly destroyed by
> * way of its associated X window dying.  This usually indicates that
> * the container application has died.  This callback is _not_ invoked
> * if the BonoboControl is destroyed normally, i.e. the user unrefs
> * the BonoboControl away.
> */
> static gboolean
> bonobo_control_plug_destroy_event_cb (GtkWidget   *plug,
>                                     GdkEventAny *event,

Yes, this code looks like it could be the first step to solving the problem.
It's a good approach, because the X window system does ensure that windows
belonging to dead processes go away.

No, in practice it doesn't solve the problem. If you try with a test program
I think you'll see that it doesn't work yet.

    -- Darin





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