[videoinfoscanner] fix infinite loop

also fixes infinite loop when items[0] is a file
[videoinfoscanner] do not consider optical file paths as valid subpaths
jobs: fixed segmentation fault when thumbnail loader abort

JobManager grab a copy of the CWorkItem then release the lock,
if the cancel occurs right then. The callback can be in progress
after the CancelJob finishes.

Several locations assume it's safe to delete the callback target
after having cancelled pending jobs, so make sure we wait for
any in progress job completions or job progress calls.
[win32] Update python package to 2.7.8
[AE/CA] - constify getName of CADevice
[AE/CA] - fix regression introduced in the enumeration refactor - handle "hackintosh" audio devices with "digital" in the name as digital devices
Merge pull request #5764 from elupus/jobsegv

jobs: fixed segmentation fault when thumbnail loader abort
Merge pull request #5765 from Karlson2k/win32_python278

[win32] Update python package to 2.7.8
Merge pull request #5734 from tamland/dvdstackfix

[videoinfoscanner] fix video_ts folder not stacked on movie scan
fix namespace typo
Merge pull request #5769 from Jalle19/fix-namespace-typo

Fix namespace typo
[jenkins] - refactor jenkins scripts to centralise the decision for
rebuilding depends - add project/cmake dir as criterion
[win32] CPUInfo: fix CPU frequency wrongly count in GHz instead of MHz, fixes #15555
SysInfo: show CPU frequency as "XXXX MHz" instead of "XXXX,00MHz"
Merge pull request #5770 from Memphiz/cmakejenkins

[jenkins] - refactor jenkins scripts to centralise the decision for
Merge pull request #5766 from Memphiz/cafixdigital

[AE/CA] - fix regression introduced in the enumeration refactor - handle "hackintosh" audio devices with "digital" in the name as digital devices
Merge pull request #5774 from Karlson2k/cpu_freq_short_01

SysInfo: show CPU frequency as "XXXX MHz" instead of "XXXX,00MHz"
Merge branch 'master' of https://github.com/xbmc/xbmc