[Rhythmbox-devel] Errors deriving from rb.Source directly instead of rb.BrowserSource



I am trying to create a source which is neither a browser source or
playlist so I am deriving it directly from rb.Source. But doing so gives
me errors whenever the source is deselected (ie it was highlighted but
then another source such as the library was selected instead)


This is the error i get:
(rhythmbox:8133): GLib-GObject-WARNING **: invalid (NULL) pointer
instance

(rhythmbox:8133): GLib-GObject-CRITICAL **:
g_signal_handlers_disconnect_matched: assertion `G_TYPE_CHECK_INSTANCE
(instance)' failed

(rhythmbox:8133): GLib-GObject-WARNING **: invalid (NULL) pointer
instance

(rhythmbox:8133): GLib-GObject-CRITICAL **:
g_signal_handlers_disconnect_matched: assertion `G_TYPE_CHECK_INSTANCE
(instance)' failed

(rhythmbox:8133): GLib-GObject-CRITICAL **: g_object_unref: assertion
`G_IS_OBJECT (object)' failed



and this is my code:
import rb, gobject

class BasicPlugin(rb.Plugin):
	def __init__(self):
		rb.Plugin.__init__(self)

	def activate(self, shell):
		entry_type = shell.props.db.entry_register_type("BasicEntryType")
		self.source = gobject.new(BasicSource, shell=shell, name="Basic",
source_group=rb.rb_source_group_get_by_name("library"),
entry_type=entry_type)
		shell.append_source(self.source, None)
		shell.register_entry_type_for_source(self.source, entry_type)

	def deactivate(self, shell):
		self.source.delete_thyself()
		del self.source

class BasicSource(rb.Source):
	def __init__(self):
		rb.Source.__init__(self)
		
gobject.type_register(BasicSource)


Is there anything special I need to do when deriving from rb.Source
directly to stop these errors?



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