Le lundi 21 avril 2008 à 22:42 +0200, Duncan Webb a écrit : > Jean P. wrote: > > Would you do something for me, as I don't use the vdr_xine plug-in and I > would like to know from where this is being called. Just create an error > or raise an exception. This will hopefully generate a stack trace which > may indicate where the problem is being caused. > > > ok that works for me > > here the patch for vdr_xine.py > > > > --- vdr_xine.py.old 2008-04-21 08:56:04.000000000 +0200 > > +++ vdr_xine.py 2008-04-21 08:56:26.000000000 +0200 > > @@ -75,7 +75,7 @@ > > import re > > > > #freevo modules > > -import config, menu, rc, plugin, util > > +import config, menu, rc, plugin, util, osd, time > > from item import Item > > import childapp > > import pygame.locals as key > > @@ -152,6 +152,7 @@ > > config.KEYMAP[key.K_F11] = 'YELLOW' > > config.KEYMAP[key.K_F12] = 'BLUE' > > config.KEYMAP[key.K_BACKSPACE] = 'BACK' > > + self.osd = osd.get_singleton() > > > > def actions(self): > > """ > > @@ -186,6 +187,8 @@ > > if self.app: > > self.app.stop('quit\n') > > rc.app(None) > You could try this too: > for i in range(10): > if not rc.app.isAlive(): > break > time.sleep(0.1) > > This should exit with a stack trace > raise "error" OK done this is my output: VDR_XINE: EVENT DOWN VDR_XINE: EVENT EXIT 2008-04-21 23:37:25,790 ERROR event callback Traceback (most recent call last): File "/usr/lib/python2.5/site-packages/kaa/notifier/event.py",line 191, in handle handler(event) File "/usr/lib/python2.5/site-packages/kaa/notifier/event.py", line 145, in __call__ super(EventHandler, self).__call__(event) File "/usr/lib/python2.5/site-packages/kaa/notifier/nf_wrapper.py", line 97, in __call__ ret = super(NotifierCallback, self).__call__(*args,**kwargs) File "/usr/lib/python2.5/site-packages/kaa/notifier/callback.py", line 168, in __call__ result = cb(*cb_args, **cb_kwargs) File "/usr/lib/python2.5/site-packages/freevo/main.py", line 284, in eventhandler if not rc.app()(event): File "/usr/lib/python2.5/site-packages/freevo/plugins/vdr_xine.py", line 297, in eventhandler self.stop() File" /usr/lib/python2.5/site-packages/freevo/plugins/vdr_xine.py", line 191, in stop if not rc.app.isAlive(): AttributeError: 'function' object has no attribute 'isAlive' VDR_XINE: EVENT VIDEO_END VDR_XINE: VIDEO_END -------------------------------------------------------------------------------- Freevo 1.8.0 r10581 finished at Mon Apr 21 23:34:21 2008 > > > + time.sleep(1) > > + self.osd.update() > > > > def eventhandler(self, event, menuw=None): > > """ > > > Will you also say if you have a fast machine or a slow one, and it has > hyper-threading or dual core. AFAICT python does not use more than one > core, need parallel python for that. My hardware is an EPIA SP13000 with Openchrome driver for MPEG acceleration > I would like to find out why this problem has only recently appeared. > I'm guessing that vdr_xine.py is based on ChildApp instead of ChildApp2, > if this is the case then just changing this to ChildApp2 may sort out > the problem as it's stop command waits for the child to be completed > before returning. > I don't think so because I see in the code: import childapp and self.app = childapp.ChildApp2(command) > Thanks > Duncan Does it help? (I try to understand what you ask me to do but is my first time in python) Jean
------------------------------------------------------------------------- This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone _______________________________________________ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users