Hallo zusammen!
Um etwas in Python hereinzuschnuppern bin ich gerade dabei, ein graphisches Programm für GNU/Linux zu schreiben. Zum Erstellen von Benachrichtigungen für einen Benutzer soll u.a. libnotify und die entsprechende Python-Anbindung pynotify.
Ich hatte dann zu Testzwecken zwei identische Skripte, die nichts weiter tun, als eine Benachrichtigung anzuzeigen. Seltsamerweise verabschiedete sich bei einem davon der Interpreter mit einem Speicherzugriffsfehler. Ich fand heraus, dass bei diesem Skript ein Unterpackage namens "gtk" (ohne die Anführungszeichen, exakter Name in Kleinschreibweise) besteht, entferne ich dieses Package, verschwindet der Fehler!
Ist das nun ein Bug der Bibliothek, von Python selbst oder einfach eine Eigen- bzw. Abart von Python? Irgendeine Art von Fehler wird es sein, aber bei wem genau?
Falls es hilft, ich verwende Python 2.5.1 unter Linux und pynotify in der Version 0.1.1.
Vielen Dank schon einmal!
Speicherzugriffsfehler bei Package mit Namen gtk
Das dürfte ein Bug in PyGtk sein, im `init_pygtk`-Makro. Dort wird nämlich ``_PyGtk_API`` aus dem Modul-Dict des `gtk`-Moduls geholt. Da das aber nicht das "echte" `gtk`-Modul ist, existiert der Schlüssel nicht und `PyDict_GetItemString` gibt einen Nullzeiger zurück, der dann weiter verwendet wird (es wird `PyCObject_Check`damit aufgerufen, was dann zum Segfault führt).
Das beste wäre es wohl, das in den Bugtracker von PyGtk einzutragen.
Das beste wäre es wohl, das in den Bugtracker von PyGtk einzutragen.
"Der Dumme erwartet viel. Der Denkende sagt wenig." ("Herr Keuner" -- Bertolt Brecht)