José Alburquerque wrote: > Murray Cumming wrote: > >> On Thu, 2008-02-07 at 21:09 +0100, Murray Cumming wrote: >> >> >>> On Thu, 2008-02-07 at 13:14 -0500, José Alburquerque wrote: >>> >>> >>>> Okay. Here's the patch. To produce the problem simply run >>>> tests/test-caps. The way it's in svn now, test/test-caps works fine, >>>> but with this patch I get warnings. >>>> >>>> >>> Now I understand. It's this strange thing in gstreamer that stops you >>> from changing items that have been referenced: >>> >>> (lt-test-caps:19844): GStreamer-CRITICAL **: gst_structure_set_value: >>> assertion `IS_MUTABLE (structure)' failed >>> >>> I really don't know what to do about them yet. It's an abuse of the >>> reference-counting system. >>> >>> >> I guess we need some way to return a RefPtr without referencing the C >> object, that would stop the original RefPtr from unreferencing its C >> object. But I can't imagine how to do that without adding a bool member >> variable to RefPtr. >> >> >> >> > You know, I was sort of thinking that if in the Gst::Caps::set_simple() > method an unreference is done at the beginning (if refcount > 1) and > then a reference back at the end, this might work. > > But this may affect regular functionality when immutability should really be enforced.
-Jose _______________________________________________ gtkmm-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/gtkmm-list
