2014-05-01, 09:24
Hi all,
I was trying to debug an issue with PVR so I checked out Gotham and attempted to configure PVR, etc. When I enabled the PVR manager I stumbled across a problem.
In CPVRClients::UpdateAddons() there's a line that goes to the add-on manager and queries it for PVR addons. The list comes out empty.
In my case this happened because building from source -> I had no PVR add-ons. Not in my user directory and not in my development XBMC_HOME (I didn't know you have
to build them separately).
In any case, when that happens, a dialog pops-up and says: "No PVR Add-ons could be found...". What also happens is that the code disables the pvr manager by setting
the pvrmanager.enabled property to false which triggers execution of a build-in function that disabled it. The problem is that when XBMC is starting, trying to disabled the
PVR manager while it's still initializing causes deletion of a critical section later used to stop the thread. I guess stopping it while it's initializing isn't working.
Using the critical section causes the entire process to freeze (no scrreen updates, nothing).
So my question is - Are there real-world cases where that dialog can pop-up? Is it feasible at all in a real installation?
If yes - then the code should change not to disable the PVR manager *during* initialization.
If no and it isn't an interesting scenario - maybe remove that code altogether? Take a look at the if clause at PVRClients.cpp:1123.
PS - I just learned today that I have to download the ZIP from opdenkamp and only then I can build those PVR add-ons..
I was trying to debug an issue with PVR so I checked out Gotham and attempted to configure PVR, etc. When I enabled the PVR manager I stumbled across a problem.
In CPVRClients::UpdateAddons() there's a line that goes to the add-on manager and queries it for PVR addons. The list comes out empty.
In my case this happened because building from source -> I had no PVR add-ons. Not in my user directory and not in my development XBMC_HOME (I didn't know you have
to build them separately).
In any case, when that happens, a dialog pops-up and says: "No PVR Add-ons could be found...". What also happens is that the code disables the pvr manager by setting
the pvrmanager.enabled property to false which triggers execution of a build-in function that disabled it. The problem is that when XBMC is starting, trying to disabled the
PVR manager while it's still initializing causes deletion of a critical section later used to stop the thread. I guess stopping it while it's initializing isn't working.
Using the critical section causes the entire process to freeze (no scrreen updates, nothing).
So my question is - Are there real-world cases where that dialog can pop-up? Is it feasible at all in a real installation?
If yes - then the code should change not to disable the PVR manager *during* initialization.
If no and it isn't an interesting scenario - maybe remove that code altogether? Take a look at the if clause at PVRClients.cpp:1123.
PS - I just learned today that I have to download the ZIP from opdenkamp and only then I can build those PVR add-ons..