Re: [anjuta-devel] Deactivate plugin handlers not getting called when Anjuta exits?



Hi James,

On Mon, Jun 6, 2011 at 2:12 AM, James Liggett <jrliggett cox net> wrote:
Over the past few days I've been investigating various usability issues
in git shell. One of the problems I'm working on is showing the command
bar only when the user is looking at the Git window.

So I got a basic prototype of the concept to work, but I've got a
problem. I get this critical when Anjuta exits:

(anjuta:27743): Anjuta-CRITICAL **: anjuta_app_hide_dockable_widget:
assertion `app->widgets != NULL' failed

I suppose it happens because you still hold a reference to the widget
despite having it being killed during somewhere else during shutdown.
To get around it, try listening for a weak reference on the widget and
"disengage" any attempt to use it further (normally, by just setting
NULL to the pointer variable).

As a fix for this I tried disconnecting the signal handlers that
hide/show the command bar, but that didn't work. I did some digging and
it looks like git's deactivate plugin handler doesn't get called when
Anjuta exits. Is this normal behavior? If so, where should I disconnect
my signals to make sure I don't get this critical?

Your disconnecting handlers approach didn't probably work because the
two widgets (the other one being the widget triggering the signal)
aren't related in life-cycle enough to guarantee unreferenced
pointers.

Thanks.

Regards,
-Naba



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