Hi, The attached python example plugin crashes gedit 2.18.1. I don't see that it'd be a problem with the plugin. The output is this: activate Plugin created Plugin updated Plugin updated sys:1: GtkWarning: gtk_accel_label_set_accel_closure: assertion `gtk_accel_group_from_accel_closure (accel_closure) != NULL' failed hello <gedit.Tab object (GeditTab) at 0x847f0cc> Plugin updated ** (gedit:13101): CRITICAL **: document_loading: assertion `(tab->priv->state == GEDIT_TAB_STATE_LOADING) || (tab->priv->state == GEDIT_TAB_STATE_REVERTING)' failed Plugin updated Plugin updated Segmentation fault (core dumped) Could anyone take a look? Is it the plugin that does something nasty? It crashes at line 29. Thanks, Gabor -- Gabor Fekete feketga2 fastmail fm -- http://www.fastmail.fm - A no graphics, no pop-ups email service
from gettext import gettext as _ import gtk import gedit import gobject class Cece(object): def __init__(self, plugin, geditWindow): print "Plugin created" #print "iiii ok" self.geditWindow = geditWindow self.plugin = plugin gobject.timeout_add(2000, self.dummy) def deactivate(self): print "Plugin deactivated" def dummy(self): print "hello" #self.geditWindow.create_tab_from_uri("file:///home/feketgab/.vimrc", #gedit.encoding_get_from_charset("utf-8"), ##None, #12, False, True) tab = self.geditWindow.get_active_tab() if tab == None: print "Tab is NULL!" print tab doc = tab.get_document() doc.load("file:///home/feher/.vimrc", gedit.encoding_get_from_charset("utf-8"), 1, False) return False def update_ui(self): print "Plugin updated" class CeceMain(gedit.Plugin): def __init__(self): gedit.Plugin.__init__(self) self.instances = {} def activate(self, geditWindow): print "activate" self.instances[geditWindow] = Cece(self, geditWindow) def deactivate(self, geditWindow): print "main deactivate" self.instances[geditWindow].deactivate() del self.instances[geditWindow] def update_ui(self, geditWindow): self.instances[geditWindow].update_ui()
Attachment:
cece.gedit-plugin
Description: Binary data