Deadlock in Krypton PVR during addon install/uninstall

I’ve been working on a custom PVR and have had a lot of trouble with installing/uninstalling the addon in Krypton (Windows and Windows Store). I wanted to let you know that I found the basic problem, maybe you guys can fix it before I have time to dig in deeper — I wanted to let you know ASAP in case you can fix it and get it into the final Krypton release.

Note: still happens in Krypton RC3, but I have not tried the subsequent nightlies or a pull from the master branch.

> There appears to be a deadlock condition that occurs when the “Use Backend Channel Names” setting is enabled and you try to install or uninstall a PVR addon that supports channels. It will manifest as a UI lockup when you try to navigate after initiating the install/uninstall action in the Addon Manager; you will also never get the “Addon Installed” notification. My cursory examination showed that a number of threads (3, I believe it was) are waiting on the addon manager unique lock, and the offending one looks like where the PVR manager checks the “Use Backend Channel Names” setting and then checks if the PVR addon is disabled or not (->isDisabled() or something along those lines). I didn’t dig in too deeply yet, but disabling the “Use Backend Channel Names” setting solves the problem; the PVR addon can be installed/uninstalled normally. No similar problems noted outside of install/uninstall, once the addon is installed you can enable “Use Backend Channel Names” and it loads just fine.

Anyway, I hope this helps point you in the right direction. I can spend some real time looking at it for you this weekend if nothing obvious jumps out or my description was inadequate.

Thanks!!