2010-08-19, 16:58
Since I am struggling with the error in the other post, I decided to have a look around to find means of debugging the scripts via Eclipse.
So I stumbled on this wiki entry:
http://wiki.xbmc.org/index.php?title=HOW...th_Eclipse
When it connects to the debugger, control is passed to Eclipse. I can see variables and stuff, so it seems to be working.
When I hit "resume", it crashes XBMC.
Looking at the debug log, this is the first problem that arises:
So apparently (and obviously I guess) it doesn't have any means to make sense of this bogus "special" protocol. I suppose that's why none of the breakpoints work.
At the end of the script XBMC decides to go bye-bye.
I thought I could just call some function to end the thread, or join() it. However, I am not sure how to get to that thread. Any ideas?
So I stumbled on this wiki entry:
http://wiki.xbmc.org/index.php?title=HOW...th_Eclipse
When it connects to the debugger, control is passed to Eclipse. I can see variables and stuff, so it seems to be working.
When I hit "resume", it crashes XBMC.
Looking at the debug log, this is the first problem that arises:
Code:
16:22:12 T:3648 M:3714027520 NOTICE: -------------------------------------------------------------------------------
16:22:12 T:3648 M:3714027520 NOTICE: pydev debugger: CRITICAL WARNING: This version of python seems to be incorrectly compiled (internal generated filenames are not absolute)
16:22:12 T:3648 M:3714027520 NOTICE: pydev debugger: The debugger may still function, but it will work slower and may miss breakpoints.
16:22:12 T:3648 M:3714027520 NOTICE: pydev debugger: Related bug: http://bugs.python.org/issue1666807
16:22:12 T:3648 M:3714027520 NOTICE: -------------------------------------------------------------------------------
16:22:12 T:3648 M:3713425408 NOTICE: pydev debugger: warning: psyco not available for speedups (the debugger will still work correctly, but a bit slower)
16:22:12 T:5292 M:3713347584 INFO: Loading skin file: DialogProgress.xml
16:22:12 T:5292 M:3713343488 DEBUG: ------ Window Init (DialogProgress.xml) ------
16:22:13 T:840 M:3712897024 DEBUG: ------ Window Deinit (DialogBusy.xml) ------
16:22:14 T:840 M:3710541824 DEBUG: CWinEventsWin32::WndProcWindow is active
16:22:14 T:840 M:3710525440 DEBUG: CWinEventsWin32::WndProcWindow lost focus
16:22:15 T:3648 M:3710160896 NOTICE: pydev debugger: Unable to find real location for: special://xbmc/system/python/Lib\pysrc\pydevd.py
16:22:15 T:3648 M:3710160896 NOTICE: pydev debugger: Unable to find real location for: special://xbmc/system/python/Lib\pysrc\pydevd_comm.py
16:22:15 T:3648 M:3710160896 NOTICE: pydev debugger: Unable to find real location for: special://xbmc/system/python/Lib\threading.py
16:22:26 T:3648 M:3709272064 NOTICE: pydev debugger: Unable to find real location for: special://xbmc/system/python/Lib\pysrc\pydevd_io.py
16:22:26 T:3648 M:3709255680 NOTICE: pydev debugger: Unable to find real location for: <string>
So apparently (and obviously I guess) it doesn't have any means to make sense of this bogus "special" protocol. I suppose that's why none of the breakpoints work.
At the end of the script XBMC decides to go bye-bye.
Code:
16:22:26 T:3648 M:3709140992 INFO: msg: Fatal Python error: Py_EndInterpreter: not the last thread
16:22:26 T:5188 M:3709140992 DEBUG: Thread 5188 terminating
I thought I could just call some function to end the thread, or join() it. However, I am not sure how to get to that thread. Any ideas?