Re: Glib::wrap with copy=true semantics?
- From: Murray Cumming <murrayc murrayc com>
- To: Philip Langdale <plangdale vmware com>
- Cc: gtkmm-list mail gnome org
- Subject: Re: Glib::wrap with copy=true semantics?
- Date: Fri, 04 Mar 2005 16:45:08 +0100
On Thu, 2005-03-03 at 13:03 -0800, Philip Langdale wrote:
> Hi,
>
> I have a scenario here where there is a GtkAdjustment owned by
> a C gtk widget and a Gtkmm gets the adjustment and then wraps it
> in a Gtkmm wrapper. The wrapper should pass copy=true because it
> isn't the owner of the underlying GtkObject. However, what I
> observe is that the wrapper is created and it increments the
> adjustment's refcount as expected but when the wrapper dies, it
> does not decrement the refcount, and it calls gtk_object_destroy
> which seems incorrect. Because the other ref holders aren't
> expecting destroy to be called, they do not release their refs
> and the object ends up being leaked when the other ref olders
> do release their refs because there is still a +1 thanks to
> the wrapper.
>
> On the other hand, if I pass copy=false, it doesn't touch the
> refcount at all and calls gtk_object_destroy when the wrapper
> dies as you'd expect.
>
> Is there a bug here or am I just expecting the wrong semantics?
If you tell us exactly what function you are talking about then we can
investigate. A test case would be even better.
--
Murray Cumming
murrayc murrayc com
www.murrayc.com
www.openismus.com
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]