On Thu, 11 Dec 2008, Guillaume Emont wrote:
Le jeudi 11 décembre 2008 à 12:42 +0100, Dag Wieers a écrit :
- try to ensure you have the debugging symbols for about all the libs
involved, run gdb --args elisa, type "run", wait for it to segfault,
type "thread apply all backtrace" and send us the output (on the mailing
list or in a bug report).
I don't have all the debugging symbols, but I can already send you this:
------
(...)
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1209035072 (LWP 5012)]
0x03ef2b23 in gst_element_register () from /usr/lib/libgstreamer-0.10.so.0
Aha! Looking at the stuff below, this happens in the main thread, and is
called by some python code. But gst.element_register() is broken in old
versions of gst-python. The only such register we still do is in
elisa-plugins/elisa/plugins/gstreamer/changestride.py (line 125), and it
is not needed since we don't use that element from the registry, but we
instantiate it directly (and we don't use it on linux anyway). So my
advice is: comment out the call to gst.element_register() and that
segfault should disappear. I'm about to do that in trunk.
Perfect. It does no longer segfault now, but we get to another batch of
problems ;-)
Some are related to plugins that have missin dependencies (which I am
aware of). I don't think these are fatal, but I cannot find how to disable
those plugins from the elisa configuration.
The generated config-file gives no clues what form the list should be in.
I tried this, but it fails:
disabled_plugins = [ 'ipod' ]
It would be useful if the generated config file would have a comment or
two ;-)
Now I end up with the following output. The screen is black after it
has shown the splash-screen. The splash-screen is flickering on my
i915-based laptop (I just realized this is because of compiz, no worries)
The screen stays black when this is on the terminal output:
------
[EMAIL PROTECTED] ~]$ elisa
GTK Accessibility Module initialized
/usr/lib/python2.4/site-packages/elisa/core/utils/classinit.py:34: UserWarning:
ClassInitMeta class is deprecated
warn("ClassInitMeta class is deprecated")
libGL warning: 3D driver claims to not support visual 0x5b
WARN MainThread resource_manager Dec 11 13:48:58 Creating
elisa.plugins.ipod.ipod_resource:IpodResource failed. A full traceback can be
found at /tmp/elisa_lKCTaD.txt (elisa/core/manager.py:96)
/usr/lib/python2.4/site-packages/elisa/core/service_manager.py:27:
DeprecationWarning: ServiceProvider.start is deprecated.
warn("ServiceProvider.%s is deprecated." % attr, DeprecationWarning)
WARN MainThread resource_manager Dec 11 13:48:58 Creating
elisa.plugins.database.media_scanner:MediaScanner failed. A full traceback can
be found at /tmp/elisa_gMPu-x.txt (elisa/core/manager.py:96)
Launcher core version: 0.5.21
Current core version: 0.5.21
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py", line
226, in simulate
self.runUntilCurrent()
File "/usr/lib/python2.4/site-packages/twisted/internet/base.py", line 705,
in runUntilCurrent
call.func(*call.args, **call.kw)
File "/usr/lib/python2.4/site-packages/twisted/internet/task.py", line 251,
in _tick
result = iterator.next()
File "/usr/lib/python2.4/site-packages/elisa/core/manager.py", line 101, in
load_components_iter
dfr = plugin_registry.create_component(component_name)
--- <exception caught here> ---
File "/usr/lib/python2.4/site-packages/elisa/core/plugin_registry.py", line
940, in create_component
component_class = reflect.namedAny('%s.%s' % (module, klass))
File "/usr/lib/python2.4/site-packages/twisted/python/reflect.py", line 426,
in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/usr/lib/python2.4/site-packages/elisa/plugins/ipod/ipod_resource.py",
line 28, in ?
import gpod
exceptions.ImportError: No module named gpod
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py", line
226, in simulate
self.runUntilCurrent()
File "/usr/lib/python2.4/site-packages/twisted/internet/base.py", line 705,
in runUntilCurrent
call.func(*call.args, **call.kw)
File "/usr/lib/python2.4/site-packages/twisted/internet/task.py", line 251,
in _tick
result = iterator.next()
File "/usr/lib/python2.4/site-packages/elisa/core/manager.py", line 101, in
load_components_iter
dfr = plugin_registry.create_component(component_name)
--- <exception caught here> ---
File "/usr/lib/python2.4/site-packages/elisa/core/plugin_registry.py", line
940, in create_component
component_class = reflect.namedAny('%s.%s' % (module, klass))
File "/usr/lib/python2.4/site-packages/twisted/python/reflect.py", line 426,
in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/usr/lib/python2.4/site-packages/twisted/python/reflect.py", line 377,
in _importAndCheckStack
return __import__(importName)
File
"/usr/lib/python2.4/site-packages/elisa/plugins/database/media_scanner.py",
line 40, in ?
from elisa.plugins.database.database_parser import DatabaseParser
File
"/usr/lib/python2.4/site-packages/elisa/plugins/database/database_parser.py",
line 27, in ?
from elisa.plugins.gstreamer.amp_master import GstMetadataAmpClient
File
"/usr/lib/python2.4/site-packages/elisa/plugins/gstreamer/amp_master.py", line
29, in ?
from elisa.plugins.gstreamer.gst_metadata import able_to_handle, \
File
"/usr/lib/python2.4/site-packages/elisa/plugins/gstreamer/gst_metadata.py",
line 35, in ?
from elisa.plugins.gstreamer.thumbnail import get_thumbnail_location
File "/usr/lib/python2.4/site-packages/elisa/plugins/gstreamer/thumbnail.py",
line 126, in ?
class PngImageSnapshotBin(ImageSnapshotMixIn, gst.Bin, Loggable):
File "/usr/lib/python2.4/site-packages/gtk-2.0/gobject/__init__.py", line 37,
in __init__
cls._type_register(cls.__dict__)
File "/usr/lib/python2.4/site-packages/gtk-2.0/gobject/__init__.py", line 49,
in _type_register
type_register(cls, namespace.get('__gtype_name__'))
exceptions.OverflowError: long int too large to convert to int (while
registering property 'width' for GType
'elisa+plugins+gstreamer+thumbnail+PngImageSnapshotBin')
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py", line
226, in simulate
self.runUntilCurrent()
File "/usr/lib/python2.4/site-packages/twisted/internet/base.py", line 705,
in runUntilCurrent
call.func(*call.args, **call.kw)
File "/usr/lib/python2.4/site-packages/twisted/internet/task.py", line 251,
in _tick
result = iterator.next()
File "/usr/lib/python2.4/site-packages/elisa/core/manager.py", line 101, in
load_components_iter
dfr = plugin_registry.create_component(component_name)
--- <exception caught here> ---
File "/usr/lib/python2.4/siteWARN MainThread resource_manager
Dec 11 13:48:58 Creating elisa.plugins.hal.hal_resource:HALResource failed. A full
traceback can be found at /tmp/elisa_QPRScP.txt (elisa/core/manager.py:96)
WARN MainThread input_manager Dec 11 13:48:58 Creating
elisa.plugins.lirc.lirc_input:LircInput failed. A full traceback can be found
at /tmp/elisa_O6xMil.txt (elisa/core/manager.py:96)
WARN MainThread resource_manager Dec 11 13:48:58 Creating
elisa.plugins.avahi.avahi_resource_provider:AvahiResourceProvider failed. A
full traceback can be found at /tmp/elisa_8ggS1-.txt (elisa/core/manager.py:96)
WARN MainThread plugin_registry Dec 11 13:48:58 Callback <bound
method ServiceManager.plugin_status_changed_cb of
<elisa.core.service_manager.ServiceManager object at 0x94fab2c>>(elisa-plugin-osso
0.1, True) failed: [Failure instance: Traceback: exceptions.AttributeError: 'module' object
has no attribute 'BUS_DAEMON_NAME'
/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py:114:wrapper
/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py:218:callback
/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py:226:simulate
/usr/lib/python2.4/site-packages/twisted/internet/base.py:705:runUntilCurrent
--- <exception caught here> ---
/usr/lib/python2.4/site-packages/twisted/internet/task.py:251:_tick
/usr/lib/python2.4/site-packages/elisa/core/manager.py:101:load_components_iter
/usr/lib/python2.4/site-packages/elisa/core/plugin_registry.py:947:create_component
/usr/lib/python2.4/site-packages/elisa/core/component.py:128:create
/usr/lib/python2.4/site-packages/elisa/plugins/osso/osso_service.py:66:initialize
/usr/lib/python2.4/site-packages/elisa/core/utils/misc.py:149:is_hildon_desktop_running
] (elisa/core/plugin_registry.py:445)
Unhandled error in Deferred:
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py", line
226, in simulate
self.runUntilCurrent()
File "/usr/lib/python2.4/site-packages/twisted/internet/base.py", line 705,
in runUntilCurrent
call.func(*call.args, **call.kw)
File
"/usr/lib/python2.4/site-packages/elisa/plugins/pigment/pigment_frontend.py",
line 527, in _load_first_controller
dfr = self.create_controller(controller_path)
File
"/usr/lib/python2.4/site-packages/elisa/plugins/pigment/pigment_frontend.py",
line 161, in create_controller
dfr = plugin_registry.create_component(controller, config, **kwargs)
--- <exception caught here> ---
File "/usr/lib/python2.4/site-packages/elisa/core/plugin_registry.py", line
940, in create_component
component_class = reflect.namedAny('%s.%s' % (module, klass))
File "/usr/lib/python2.4/site-packages/twisted/python/reflect.py", line 426,
in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/usr/lib/python2.4/site-packages/twisted/python/reflect.py", line 377,
in _importAndCheckStack
return __import__(importName)
File "/usr/lib/python2.4/site-packages/elisa/plugins/poblesec/main.py", line
23, in ?
from elisa.plugins.gstreamer.amp_master import GstMetadataAmpClient
File
"/usr/lib/python2.4/site-packages/elisa/plugins/gstreamer/amp_master.py", line
29, in ?
from elisa.plugins.gstreamer.gst_metadata import able_to_handle, \
File
"/usr/lib/python2.4/site-packages/elisa/plugins/gstreamer/gst_metadata.py",
line 35, in ?
from elisa.plugins.gstreamer.thumbnail import get_thumbnail_location
File "/usr/lib/python2.4/site-packages/elisa/plugins/gstreamer/thumbnail.py",
line 126, in ?
class PngImageSnapshotBin(ImageSnapshotMixIn, gst.Bin, Loggable):
File "/usr/lib/python2.4/site-packages/gtk-2.0/gobject/__init__.py", line 37,
in __init__
cls._type_register(cls.__dict__)
File "/usr/lib/python2.4/site-packages/gtk-2.0/gobject/__init__.py", line 49,
in _type_register
type_register(cls, namespace.get('__gtype_name__'))
exceptions.OverflowError: long int too large to convert to int (while
registering property 'width' for GType
'elisa+plugins+gstreamer+thumbnail+PngImageSnapshotBin-v2')
WARN MainThread flickr_resource_provider Dec 11 13:49:00 Login to
Flickr failed. Full output at /tmp/elisa_3jwaKX.txt
(elisa/plugins/flickr/resource_provider.py:90)
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py", line
186, in run
self.__run()
File "/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py", line
226, in simulate
self.runUntilCurrent()
File "/usr/lib/python2.4/site-packages/twisted/internet/base.py", line 705,
in runUntilCurrent
call.func(*call.args, **call.kw)
File "/usr/lib/python2.4/site-packages/twisted/internet/base.py", line 545,
in fireSystemEvent
event.fireEvent()
--- <exception caught here> ---
File "/usr/lib/python2.4/site-packages/twisted/internet/base.py", line 368,
in fireEvent
result = callable(*args, **kwargs)
File "/usr/lib/python2.4/site-packages/elisa/core/application.py", line 562,
in stop
dfr = self.interface_controller.stop()
File "/usr/lib/python2.4/site-packages/elisa/core/interface_controller.py",
line 141, in stop
dfr = frontend.clean()
File
"/usr/lib/python2.4/site-packages/elisa/plugins/pigment/pigment_frontend.py",
line 695, in clean
if self.controller:
exceptions.AttributeError: 'PigmentFrontend' object has no attribute
'controller'
-packages/elisa/core/plugin_registry.py", line 940, in create_component
component_class = reflect.namedAny('%s.%s' % (module, klass))
File "/usr/lib/python2.4/site-packages/twisted/python/reflect.py", line 426,
in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/usr/lib/python2.4/site-packages/elisa/plugins/hal/hal_resource.py",
line 27, in ?
raise ImportError, "This plugin needs dbus > 0.82"
exceptions.ImportError: This plugin needs dbus > 0.82
Traceback (most recent call last):
Failure: elisa.plugins.lirc.lirc_input.NoMappingsFound: Given InputMap
'streamzap.map' not found
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/twisted/internet/gtk2reactor.py", line
226, in simulate
self.runUntilCurrent()
File "/usr/lib/python2.4/site-packages/twisted/internet/base.py", line 705,
in runUntilCurrent
call.func(*call.args, **call.kw)
File "/usr/lib/python2.4/site-packages/twisted/internet/task.py", line 251,
in _tick
result = iterator.next()
File "/usr/lib/python2.4/site-packages/elisa/core/manager.py", line 101, in
load_components_iter
dfr = plugin_registry.create_component(component_name)
--- <exception caught here> ---
File "/usr/lib/python2.4/site-packages/elisa/core/plugin_registry.py", line
940, in create_component
component_class = reflect.namedAny('%s.%s' % (module, klass))
File "/usr/lib/python2.4/site-packages/twisted/python/reflect.py", line 426,
in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File
"/usr/lib/python2.4/site-packages/elisa/plugins/avahi/avahi_resource_provider.py",
line 36, in ?
import dbus, avahi
exceptions.ImportError: No module named avahi
==> at
https://login.yahoo.com/config/login?.src=flickr&.pc=5134&.scrumb=0&.pd=c%3DE0.GahOp2e4MjkX.5l2HgAoLkpmyPvccpVM-&.intl=us&.done=https%3A%2F%2Flogin.yahoo.com%2Fconfig%2Fvalidate%3F.src%3Dflickr%26.pc%3D5134%26.scrumb%3D0%26.pd%3Dc%253DE0.GahOp2e4MjkX.5l2HgAoLkpmyPvccpVM-%26.intl%3Dus%26.done%3Dhttp%253A%252F%252Fwww.flickr.com%252Fsignin%252Fyahoo%252F%253Fredir%253D%25252Fservices%25252Fauth%25252F%25253Fperms%25253Ddelete%252526api_key%25253Def2cc311ac8916c794b436bf482c5de5%252526frob%25253D72157611073983360-9c37d17c697d9fee-34553%252526api_sig%25253D2bc7a4a1f86e071df996ca9002681def
Note: submit is using submit button: name=".save", value="Sign In"
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 614,
in gotResult
_deferGenerator(g, deferred)
File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 591,
in _deferGenerator
deferred.callback(result)
File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 243,
in callback
self._startRunCallbacks(result)
File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 312,
in _startRunCallbacks
self._runCallbacks()
--- <exception caught here> ---
File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 328,
in _runCallbacks
self.result = callback(self.result, *args, **kw)
File
"/usr/lib/python2.4/site-packages/elisa/plugins/flickr/resource_provider.py",
line 269, in response_read
raise ValueError('%s: %s' %(err_code, err_msg))
exceptions.ValueError: 108: Invalid frob
Exception exceptions.AttributeError: "'NoneType' object has no attribute 'bus_release_name'" in
<bound method BusName.__del__ of <dbus.service.BusName com.fluendo.Elisa on <dbus.Bus on SESSION
at 0x95debac> at 0x9f50f0c>> ignored
------
From this output, it is hard to see which traceback is the fatal one. It
obviously is not the gpod/flickr stuff. But might it still be dbus
or avahi related ? Are these mandatory afterall ?
According to the README dbus was optional (and that was my main motivation
to try and get elisa working). If we could patch elisa to work with an
older dbus, would those patches be accepted ?
Would it be worthwhile to add the patch to "support" incompatible
python-dbus versions in one form or another ?
I have no idea how hard this would be, nor if someone has the time to do
it, but patches doing this would most certainly be considered.
In the thread from last night I added a small patch to do this. I attached
it to this mail. This simply disabled dbus support (much as would happen
when no dbus python module was found on the system).
Thanks again,
--
-- dag wieers, [EMAIL PROTECTED], http://dag.wieers.com/ --
[Any errors in spelling, tact or fact are transmission errors]
--- /usr/lib/python2.4/site-packages/elisa/plugins/pigment/pigment_frontend.py.orig 2008-12-11 14:01:57.000000000 +0100
+++ /usr/lib/python2.4/site-packages/elisa/plugins/pigment/pigment_frontend.py 2008-12-11 05:02:22.000000000 +0100
@@ -747,25 +747,36 @@
# no dbus support
return
- bus = dbus.SessionBus()
- self.bus_name = \
- dbus.service.BusName('com.fluendo.Elisa', bus)
- self.dbus_frontend = DBusFrontend(self, bus,
- '/com/fluendo/Elisa/Plugins/Pigment/Frontend', self.bus_name)
+ try:
+ bus = dbus.SessionBus()
+ self.bus_name = \
+ dbus.service.BusName('com.fluendo.Elisa', bus)
+ self.dbus_frontend = DBusFrontend(self, bus,
+ '/com/fluendo/Elisa/Plugins/Pigment/Frontend', self.bus_name)
+ except:
+ # dbus support incompatible
+ del self.bus_name
+ return
+
def _clean_dbus(self):
if 'dbus' not in sys.modules:
# no dbus support
return
- bus = dbus.SessionBus()
- self.dbus_frontend.remove_from_connection(bus,
- '/com/fluendo/Elisa/Plugins/Pigment/Frontend')
- # BusName implements __del__, eew
- del self.bus_name
+ try:
+ bus = dbus.SessionBus()
+ self.dbus_frontend.remove_from_connection(bus,
+ '/com/fluendo/Elisa/Plugins/Pigment/Frontend')
+ # BusName implements __del__, eew
+ del self.bus_name
- # remove the reference cycle
- del self.dbus_frontend
+ # remove the reference cycle
+ del self.dbus_frontend
+ except:
+ # dbus support incompatible
+ return
+
def _viewport_drag_motion_event(self, viewport, event):
if not self._in_drag: