dream-alpha / moviecockpit Goto Github PK
View Code? Open in Web Editor NEWMovieCockpit (MVC) is a movie list plugin for DreamOS receivers.
Home Page: https://dream-alpha.github.io/MovieCockpit/
License: GNU General Public License v3.0
MovieCockpit (MVC) is a movie list plugin for DreamOS receivers.
Home Page: https://dream-alpha.github.io/MovieCockpit/
License: GNU General Public License v3.0
I installed moviecockpit 4.8.1 on a DM7080HD (never used it before).
When pressing the video button, it crashes.
action -> InfobarActions showMovies
MVC-I: plugin: openMovieSelection
MVC-I: MovieSelection: __init__: self.return_path: None
allocating new converter!
reused converter! (2 times)
allocating new converter! (6 times)
warning, skin is missing element list in <class 'Plugins.Extensions.MovieCockpit.MovieSelection.MovieSelection'>
warning, skin is missing element no_support in <class 'Plugins.Extensions.MovieCockpit.MovieSelection.MovieSelection'>
warning, skin is missing element mini_tv in <class 'Plugins.Extensions.MovieCockpit.MovieSelection.MovieSelection'>
MVC-I: MovieSelectionSummary: MovieSelectionSummary: __init__
No skin to read...
create buffer for widget 1800 x 1005
MVC-I: MovieSelection: onDialogShow: self.return_path: None
MVC-I: MovieSelection: onDialogShow: self.lastservice: 1:0:19:2B7A:3F3:1:C00000:0:0:0:
Traceback (most recent call last):
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 308, in buildMovieListEntry
recording = isRecording(path)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/RecordingUtils.py", line 31, in isRecording
for __timer in NavigationInstance.instance.RecordTimer.timer_list:
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 308, in buildMovieListEntry
recording = isRecording(path)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/RecordingUtils.py", line 31, in isRecording
for __timer in NavigationInstance.instance.RecordTimer.timer_list:
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 308, in buildMovieListEntry
recording = isRecording(path)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/RecordingUtils.py", line 31, in isRecording
for __timer in NavigationInstance.instance.RecordTimer.timer_list:
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 308, in buildMovieListEntry
recording = isRecording(path)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/RecordingUtils.py", line 31, in isRecording
for __timer in NavigationInstance.instance.RecordTimer.timer_list:
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 308, in buildMovieListEntry
recording = isRecording(path)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/RecordingUtils.py", line 31, in isRecording
for __timer in NavigationInstance.instance.RecordTimer.timer_list:
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 308, in buildMovieListEntry
recording = isRecording(path)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/RecordingUtils.py", line 31, in isRecording
for __timer in NavigationInstance.instance.RecordTimer.timer_list:
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 308, in buildMovieListEntry
recording = isRecording(path)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/RecordingUtils.py", line 31, in isRecording
for __timer in NavigationInstance.instance.RecordTimer.timer_list:
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 324, in buildMovieListEntry
getDateText(path, filetype, event_start_time), # 5: event start time
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 229, in getDateText
sizetext = "%.1f TB" % size / 1024
Python stack trace:
/usr/lib/enigma2/python/e2reactor.py(189): mainLoop
/usr/lib/python2.7/site-packages/twisted/internet/base.py(1190): run
/usr/lib/enigma2/python/mytest.py(196): runReactor
/usr/lib/enigma2/python/mytest.py(611): runScreenTest
TypeError: unsupported operand type(s) for /: 'str' and 'int'
/usr/lib/enigma2/python/mytest.py(1): <module>
Python stack trace:
/usr/lib/enigma2/python/e2reactor.py(189): mainLoop
/usr/lib/python2.7/site-packages/twisted/internet/base.py(1190): run
/usr/lib/enigma2/python/mytest.py(196): runReactor
/usr/lib/enigma2/python/mytest.py(611): runScreenTest
/usr/lib/enigma2/python/mytest.py(1): <module>
Segmentation fault
PC: 0x4ea1bc
00000000 00000001 0000000a ffffffff
7489dd3c 00000081 ffffffff 00000000
009a1e84 fff2a9ff 7f0c54ff 7efefeff
25252525 7fbf8610 009a1e81 09090a3a
7fbfad50 7489bd70 7fbfb3f8 0000000e
009a1700 7fbfb6e8 60fb8b70 60fb8b70
00000000 74820470 fbad2887 00000000
00b5c5e0 7fbfad38 60fb8918 004ea1bc
0x4cb5dc <handleFatalSignal(int, siginfo_t*, void*)+0x84>
0x7ffff008 <[0x7ffff008]>
0x4ea1be <eFatal(char const*, ...)+0x92>
0x752f94 <eListboxPythonMultiContent::paint(gPainter&, eWindowStyle&, ePoint const&, int)+0x24bc>
0x74a2b4 <eListbox::event(int, void*, void*)+0xbd0>
0x7604c0 <eWidget::doPaint(gPainter*, gRegion const&)+0x440>
0x760528 <eWidget::doPaint(gPainter*, gRegion const&)+0x4a8> (2 times)
0x7645fc <eWidgetDesktop::paintWidget(eWidget*)+0xd4>
0x7654bc <eWidgetDesktop::paint()+0x110>
0x765984 <eWidgetDesktop::notify()+0x2f4>
0x669a30 <gRC::recv_notify(int const&)+0x104>
0x4ffe9c </usr/bin/enigma2()>
0x4e4634 <eSocketNotifier::activate(int)+0x150>
0x4e68d8 <eMainloop_native::processOneEvent(int)+0xd64>
0x7706e0 <eMainloopQt::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)+0xdc>
0x75e0b7a8 <QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)+0x140>
0x75e16648 <QCoreApplication::exec()+0xb0>
0x7705c4 <eMainloopQt::runLoop()+0x38>
0x779244 </usr/bin/enigma2()>
0x756a04fc </usr/lib/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x547c)>
As a final action, i will try to dump a bit of code.
I just hope that this won't crash.
004ea1bc: 00 00 00 a0 34 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 67 00 1c 3c 10 24 9c 27 21 e0 99 03 (end)
FATAL: ../git/lib/gui/elistboxcontent.cpp:904 ASSERTION 0 FAILED!
I did a fresh install of moviecockpit and got a warning:
W: Size of file /run/apt/archives/partial/enigma2-plugin-extensions-moviecockpit_4.8.1_all.deb is not what the server reported 692234 365014
On a freshly installed MovieCockpit 4.8.1 I got a crash when starting it - but only once.
It seems as if it tried to scan a file and crashed when decoding the file name.
MVC-I: FileCache: getEitData: recording_start_time: 1409212980, recording_stop_time: 0
MVC-I: FileUtils: readFile: path: /media/hdd/movie/Kinder/Yakari/20150525 1737 - KiKA HD - Yakari.ts.xmeta, exception: [Errno 2] No such file or directory: '/media/hdd/movie/Kinder/Yakari/20150525 1737 - KiKA HD - Yakari.ts.xmeta'
EXCEPTION IN PYTHON STARTUP CODE:
------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib/enigma2/python/mytest.py", line 828, in <module>
runScreenTest()
File "/usr/lib/enigma2/python/mytest.py", line 616, in runScreenTest
session = Session(desktop = getDesktop(0), summary_desktop = getDesktop(1), navigation = nav)
File "/usr/lib/enigma2/python/mytest.py", line 305, in __init__
p(reason=0, session=self)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/plugin.py", line 78, in autostart
FileCache.getInstance()
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/FileCache.py", line 82, in getInstance
instance = FileCache()
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/FileCache.py", line 74, in __init__
self.loadDatabase(sync=True)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/FileCache.py", line 276, in loadDatabase
self.loadDatabaseFile(path, filetype)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/FileCache.py", line 301, in loadDatabaseFile
filedata = self.newFileData(path)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/FileCache.py", line 411, in newFileData
eit = ParserEitFile(path).getEit()
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/ParserEitFile.py", line 77, in __init__
self.__parse(data)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/ParserEitFile.py", line 286, in __parse
self.eit['name'] = convertToUtf8(self.name_event_descriptor, self.name_event_codepage)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/UnicodeUtils.py", line 26, in convertToUtf8
text = text.decode(codepage).encode("utf-8")
TypeError: decode() argument 1 must be string, not None
------------------------------------------------------------
(exit code 5)
With a freshly installed MovieCockpit 4.8.1, I got a crash when starting it the first time. This crash did not happen afterwards.
MVC-I: plugin: openMovieSelection
MVC-I: MovieSelection: __init__: self.return_path: None
warning, skin is missing element key_yellow in <class 'Plugins.Extensions.MovieCockpit.MovieSelection.MovieSelection'>
warning, skin is missing element level in <class 'Plugins.Extensions.MovieCockpit.MovieSelection.MovieSelection'>
warning, skin is missing element key_blue in <class 'Plugins.Extensions.MovieCockpit.MovieSelection.MovieSelection'>
swig director exception (SWIG director method error.)
0x8a2360 <SwigDirector_eActionSlot::action_func2(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)+0x3cc>
0x4dd730 </usr/bin/enigma2()>
0x4db708 <eActionMap::keyPressed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, int)+0x740>
0x4c7074 <keyEvent(eRCKey const&)+0x12c>
0x72b940 <eRCInput::keyPressed(eRCKey const&)+0x130>
0x72da38 <eRCDeviceInputDev::handleCode(long)+0xec>
0x72a2fc <eRCInputEventDriver::keyPressed(int)+0x98>
0x4e4634 <eSocketNotifier::activate(int)+0x150>
0x4e68d8 <eMainloop_native::processOneEvent(int)+0xd64>
0x7706e0 <eMainloopQt::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)+0xdc>
0x75cd57a8 <QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)+0x140>
0x75ce0648 <QCoreApplication::exec()+0xb0>
0x7705c4 <eMainloopQt::runLoop()+0x38>
0x779244 </usr/bin/enigma2()>
0x7556a4fc </usr/lib/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x547c)>
Traceback (most recent call last):
File "/usr/lib/enigma2/python/enigma.py", line 8486, in __call__
return ret(*args, **kwargs)
File "/usr/lib/enigma2/python/Components/ActionMap.py", line 70, in action
res = act()
File "/usr/lib/enigma2/python/Tools/BoundFunction.py", line 10, in __call__
return self.fnc(*self.args + args, **newkwargs)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/plugin.py", line 47, in openMovieSelection
session.openWithCallback(reloadMovieSelection, MovieSelection)
File "/usr/lib/enigma2/python/mytest.py", line 450, in openWithCallback
dlg = self.open(screen, *arguments, **kwargs)
File "/usr/lib/enigma2/python/mytest.py", line 478, in open
dlg = self.current_dialog = self.instantiateDialog(screen, *arguments, **kwargs)
File "/usr/lib/enigma2/python/mytest.py", line 379, in instantiateDialog
return self.doInstantiateDialog(screen, arguments, kwargs, self.desktop)
File "/usr/lib/enigma2/python/mytest.py", line 421, in doInstantiateDialog
dlg.applySkin()
File "/usr/lib/enigma2/python/Components/GUISkin.py", line 116, in applySkin
self.createGUIScreen(self.instance, self.desktop)
File "/usr/lib/enigma2/python/Components/GUISkin.py", line 35, in createGUIScreen
if val.applySkin(desktop, self):
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieList.py", line 182, in applySkin
MovieList.list_styles, template_attributes = parseTemplate(MovieList.default_template)
File "/usr/lib/enigma2/python/Plugins/Extensions/MovieCockpit/MovieListParseTemplate.py", line 83, in parseTemplate
template = eval(template_string)
File "<string>", line 0
^
-------
SyntaxError: unexpected EOF while parsing
It would be nice if you'd add git tags for releases.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.