aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--addons/skin.confluence/720p/AddonBrowser.xml1
-rw-r--r--addons/skin.confluence/720p/DialogAlbumInfo.xml1
-rw-r--r--addons/skin.confluence/720p/DialogAudioDSPManager.xml1
-rw-r--r--addons/skin.confluence/720p/DialogPVRChannelManager.xml1
-rw-r--r--addons/skin.confluence/720p/DialogVideoInfo.xml1
-rw-r--r--addons/skin.confluence/720p/EventLog.xml1
-rw-r--r--addons/skin.confluence/720p/FileBrowser.xml1
-rw-r--r--addons/skin.confluence/720p/FileManager.xml1
-rw-r--r--addons/skin.confluence/720p/Home.xml1
-rw-r--r--addons/skin.confluence/720p/LoginScreen.xml1
-rw-r--r--addons/skin.confluence/720p/MusicVisualisation.xml1
-rw-r--r--addons/skin.confluence/720p/MyMusicNav.xml1
-rw-r--r--addons/skin.confluence/720p/MyMusicPlaylist.xml1
-rw-r--r--addons/skin.confluence/720p/MyMusicPlaylistEditor.xml1
-rw-r--r--addons/skin.confluence/720p/MyPVRChannels.xml1
-rw-r--r--addons/skin.confluence/720p/MyPVRGuide.xml1
-rw-r--r--addons/skin.confluence/720p/MyPVRRecordings.xml1
-rw-r--r--addons/skin.confluence/720p/MyPVRSearch.xml1
-rw-r--r--addons/skin.confluence/720p/MyPVRTimers.xml1
-rw-r--r--addons/skin.confluence/720p/MyPics.xml1
-rw-r--r--addons/skin.confluence/720p/MyPrograms.xml1
-rw-r--r--addons/skin.confluence/720p/MyVideoNav.xml1
-rw-r--r--addons/skin.confluence/720p/MyVideoPlaylist.xml1
-rw-r--r--addons/skin.confluence/720p/MyWeather.xml1
-rw-r--r--addons/skin.confluence/720p/Settings.xml1
-rw-r--r--addons/skin.confluence/720p/SettingsCategory.xml1
-rw-r--r--addons/skin.confluence/720p/SettingsProfile.xml1
-rw-r--r--addons/skin.confluence/720p/SettingsSystemInfo.xml1
-rw-r--r--addons/skin.confluence/720p/SmartPlaylistEditor.xml1
-rw-r--r--addons/skin.confluence/720p/SmartPlaylistRule.xml1
-rw-r--r--addons/skin.confluence/720p/Startup.xml1
-rw-r--r--addons/skin.confluence/720p/script-NextAired-TVGuide.xml1
-rw-r--r--addons/skin.confluence/720p/script-cu-lrclyrics-main.xml1
-rw-r--r--addons/skin.confluence/720p/script-globalsearch-main.xml1
-rw-r--r--tools/buildsteps/android/package2
-rw-r--r--tools/buildsteps/androidx86/package1
-rw-r--r--xbmc/addons/AddonDatabase.cpp22
-rw-r--r--xbmc/addons/Repository.cpp2
-rw-r--r--xbmc/addons/RepositoryUpdater.cpp6
-rw-r--r--xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp17
-rw-r--r--xbmc/cores/dvdplayer/DVDPlayer.cpp3
-rw-r--r--xbmc/filesystem/win32/Win32File.cpp6
-rw-r--r--xbmc/guilib/GUIControlGroupList.cpp14
-rw-r--r--xbmc/guilib/GUIIncludes.cpp1
-rw-r--r--xbmc/interfaces/builtins/LibraryBuiltins.cpp4
-rw-r--r--xbmc/music/MusicDatabase.cpp4
-rw-r--r--xbmc/pvr/windows/GUIWindowPVRSearch.cpp42
-rw-r--r--xbmc/video/VideoDatabase.cpp66
-rw-r--r--xbmc/video/VideoDatabase.h2
-rw-r--r--xbmc/video/windows/GUIWindowVideoBase.cpp3
51 files changed, 116 insertions, 114 deletions
diff --git a/.gitignore b/.gitignore
index 425a541d75..b51cbca70a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -145,6 +145,7 @@ config.log
/lib/addons/library.xbmc.codec/project/VS2010Express/Debug
/lib/addons/library.xbmc.pvr/project/VS2010Express/Release
/lib/addons/library.xbmc.pvr/project/VS2010Express/Debug
+/lib/addons/library.kodi.audioengine/Makefile
/lib/addons/library.kodi.audioengine/project/VS2010Express/Release/
/lib/addons/library.kodi.audioengine/project/VS2010Express/Debug/
diff --git a/addons/skin.confluence/720p/AddonBrowser.xml b/addons/skin.confluence/720p/AddonBrowser.xml
index 47578eaaed..d7b681f401 100644
--- a/addons/skin.confluence/720p/AddonBrowser.xml
+++ b/addons/skin.confluence/720p/AddonBrowser.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<onload condition="!Skin.HasSetting(FirstTimeRun)">ActivateWindow(1112)</onload>
<views>50,51,550,551</views>
<controls>
diff --git a/addons/skin.confluence/720p/DialogAlbumInfo.xml b/addons/skin.confluence/720p/DialogAlbumInfo.xml
index c8a3bef813..56f82a8eba 100644
--- a/addons/skin.confluence/720p/DialogAlbumInfo.xml
+++ b/addons/skin.confluence/720p/DialogAlbumInfo.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">5</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<control type="group">
<visible>!Window.IsVisible(FileBrowser)</visible>
diff --git a/addons/skin.confluence/720p/DialogAudioDSPManager.xml b/addons/skin.confluence/720p/DialogAudioDSPManager.xml
index 965ff7e7d9..62cedc76bf 100644
--- a/addons/skin.confluence/720p/DialogAudioDSPManager.xml
+++ b/addons/skin.confluence/720p/DialogAudioDSPManager.xml
@@ -3,7 +3,6 @@
<zorder>1</zorder>
<defaultcontrol>9000</defaultcontrol>
<include>dialogeffect</include>
- <allowoverlay>no</allowoverlay>
<coordinates>
<left>40</left>
<top>40</top>
diff --git a/addons/skin.confluence/720p/DialogPVRChannelManager.xml b/addons/skin.confluence/720p/DialogPVRChannelManager.xml
index b122979407..d81bf97aaa 100644
--- a/addons/skin.confluence/720p/DialogPVRChannelManager.xml
+++ b/addons/skin.confluence/720p/DialogPVRChannelManager.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">20</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<coordinates>
<left>80</left>
<top>65</top>
diff --git a/addons/skin.confluence/720p/DialogVideoInfo.xml b/addons/skin.confluence/720p/DialogVideoInfo.xml
index 9479c0dc3c..c60ff901a2 100644
--- a/addons/skin.confluence/720p/DialogVideoInfo.xml
+++ b/addons/skin.confluence/720p/DialogVideoInfo.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">8</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<control type="group">
<visible>!Window.IsVisible(FileBrowser)</visible>
diff --git a/addons/skin.confluence/720p/EventLog.xml b/addons/skin.confluence/720p/EventLog.xml
index 58821cefc7..5e6c074a6a 100644
--- a/addons/skin.confluence/720p/EventLog.xml
+++ b/addons/skin.confluence/720p/EventLog.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">570</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<onload condition="!Skin.HasSetting(FirstTimeRun)">ActivateWindow(1112)</onload>
<views>570</views>
<controls>
diff --git a/addons/skin.confluence/720p/FileBrowser.xml b/addons/skin.confluence/720p/FileBrowser.xml
index 83995fd008..be0bdb0b6c 100644
--- a/addons/skin.confluence/720p/FileBrowser.xml
+++ b/addons/skin.confluence/720p/FileBrowser.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">450</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<coordinates>
<left>0</left>
<top>0</top>
diff --git a/addons/skin.confluence/720p/FileManager.xml b/addons/skin.confluence/720p/FileManager.xml
index 2bf396ec98..8c1c157ade 100644
--- a/addons/skin.confluence/720p/FileManager.xml
+++ b/addons/skin.confluence/720p/FileManager.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol>20</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<include>CommonBackground</include>
<control type="image">
diff --git a/addons/skin.confluence/720p/Home.xml b/addons/skin.confluence/720p/Home.xml
index e08cb1c9c0..63394e6fad 100644
--- a/addons/skin.confluence/720p/Home.xml
+++ b/addons/skin.confluence/720p/Home.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">9000</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<onunload condition="Container(9000).Hasfocus(10) | Container(9000).Hasfocus(11) | ControlGroup(9010).HasFocus | ControlGroup(9016).HasFocus | ControlGroup(9017).HasFocus">SetProperty(VideosDirectLink,True)</onunload>
<onunload condition="ControlGroup(9011).HasFocus">SetProperty(MusicDirectLink,True)</onunload>
<onunload condition="Control.HasFocus(9000) + Container(9000).Hasfocus(2)">ClearProperty(VideosDirectLink)</onunload>
diff --git a/addons/skin.confluence/720p/LoginScreen.xml b/addons/skin.confluence/720p/LoginScreen.xml
index 869da79b0a..636df255ba 100644
--- a/addons/skin.confluence/720p/LoginScreen.xml
+++ b/addons/skin.confluence/720p/LoginScreen.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">52</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<coordinates>
<left>0</left>
<top>0</top>
diff --git a/addons/skin.confluence/720p/MusicVisualisation.xml b/addons/skin.confluence/720p/MusicVisualisation.xml
index 00c183fee3..3b97ac73b5 100644
--- a/addons/skin.confluence/720p/MusicVisualisation.xml
+++ b/addons/skin.confluence/720p/MusicVisualisation.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol>-</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<control type="visualisation" id="2">
<!-- FIX ME Music Visualization needs to have an id of 2 in this window to be able to lock or change preset -->
diff --git a/addons/skin.confluence/720p/MyMusicNav.xml b/addons/skin.confluence/720p/MyMusicNav.xml
index 1c77ae3edc..e5ce705d05 100644
--- a/addons/skin.confluence/720p/MyMusicNav.xml
+++ b/addons/skin.confluence/720p/MyMusicNav.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<onload condition="!Skin.HasSetting(FirstTimeRun)">ActivateWindow(1112)</onload>
<views>50,51,500,550,551,509,506,511,512,513</views>
<controls>
diff --git a/addons/skin.confluence/720p/MyMusicPlaylist.xml b/addons/skin.confluence/720p/MyMusicPlaylist.xml
index 70daf9b601..cdf36e6bc8 100644
--- a/addons/skin.confluence/720p/MyMusicPlaylist.xml
+++ b/addons/skin.confluence/720p/MyMusicPlaylist.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<onload condition="!Skin.HasSetting(FirstTimeRun)">ActivateWindow(1112)</onload>
<views>50,51,506</views>
<controls>
diff --git a/addons/skin.confluence/720p/MyMusicPlaylistEditor.xml b/addons/skin.confluence/720p/MyMusicPlaylistEditor.xml
index 110d1f27a1..4a84581d8a 100644
--- a/addons/skin.confluence/720p/MyMusicPlaylistEditor.xml
+++ b/addons/skin.confluence/720p/MyMusicPlaylistEditor.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">6</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<include>CommonBackground</include>
<control type="group">
diff --git a/addons/skin.confluence/720p/MyPVRChannels.xml b/addons/skin.confluence/720p/MyPVRChannels.xml
index fcc5e0c83b..64791e4cfc 100644
--- a/addons/skin.confluence/720p/MyPVRChannels.xml
+++ b/addons/skin.confluence/720p/MyPVRChannels.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<views>50,51</views>
<controls>
<include>CommonBackground</include>
diff --git a/addons/skin.confluence/720p/MyPVRGuide.xml b/addons/skin.confluence/720p/MyPVRGuide.xml
index a1dd2a7225..51858c066f 100644
--- a/addons/skin.confluence/720p/MyPVRGuide.xml
+++ b/addons/skin.confluence/720p/MyPVRGuide.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">10</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<views>10,11,12,13</views>
<controls>
<include>CommonBackground</include>
diff --git a/addons/skin.confluence/720p/MyPVRRecordings.xml b/addons/skin.confluence/720p/MyPVRRecordings.xml
index b517e6864e..f5a102746e 100644
--- a/addons/skin.confluence/720p/MyPVRRecordings.xml
+++ b/addons/skin.confluence/720p/MyPVRRecordings.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<views>50</views>
<controls>
<include>CommonBackground</include>
diff --git a/addons/skin.confluence/720p/MyPVRSearch.xml b/addons/skin.confluence/720p/MyPVRSearch.xml
index 417a684c31..7fe84d4d92 100644
--- a/addons/skin.confluence/720p/MyPVRSearch.xml
+++ b/addons/skin.confluence/720p/MyPVRSearch.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<views>50</views>
<controls>
<include>CommonBackground</include>
diff --git a/addons/skin.confluence/720p/MyPVRTimers.xml b/addons/skin.confluence/720p/MyPVRTimers.xml
index a20d2352e9..1b477ad887 100644
--- a/addons/skin.confluence/720p/MyPVRTimers.xml
+++ b/addons/skin.confluence/720p/MyPVRTimers.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<views>50</views>
<controls>
<include>CommonBackground</include>
diff --git a/addons/skin.confluence/720p/MyPics.xml b/addons/skin.confluence/720p/MyPics.xml
index b84fc2f9b4..4d97566c41 100644
--- a/addons/skin.confluence/720p/MyPics.xml
+++ b/addons/skin.confluence/720p/MyPics.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<onload condition="!Skin.HasSetting(FirstTimeRun)">ActivateWindow(1112)</onload>
<views>50,51,550,551,500,514,510</views>
<controls>
diff --git a/addons/skin.confluence/720p/MyPrograms.xml b/addons/skin.confluence/720p/MyPrograms.xml
index cc5bd98f65..607a05719f 100644
--- a/addons/skin.confluence/720p/MyPrograms.xml
+++ b/addons/skin.confluence/720p/MyPrograms.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<onload condition="!Skin.HasSetting(FirstTimeRun)">ActivateWindow(1112)</onload>
<views>50,51,500,550,551</views>
<controls>
diff --git a/addons/skin.confluence/720p/MyVideoNav.xml b/addons/skin.confluence/720p/MyVideoNav.xml
index cd5ff0e231..e41d6b7e43 100644
--- a/addons/skin.confluence/720p/MyVideoNav.xml
+++ b/addons/skin.confluence/720p/MyVideoNav.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<views>50,51,500,550,551,560,501,508,504,503,515,505,511</views>
<onload condition="!Skin.HasSetting(FirstTimeRun)">ActivateWindow(1112)</onload>
<controls>
diff --git a/addons/skin.confluence/720p/MyVideoPlaylist.xml b/addons/skin.confluence/720p/MyVideoPlaylist.xml
index b70ac5b022..e9cf5b9cf9 100644
--- a/addons/skin.confluence/720p/MyVideoPlaylist.xml
+++ b/addons/skin.confluence/720p/MyVideoPlaylist.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<onload condition="!Skin.HasSetting(FirstTimeRun)">ActivateWindow(1112)</onload>
<views>50,51</views>
<controls>
diff --git a/addons/skin.confluence/720p/MyWeather.xml b/addons/skin.confluence/720p/MyWeather.xml
index ce2531a316..425b0f66f6 100644
--- a/addons/skin.confluence/720p/MyWeather.xml
+++ b/addons/skin.confluence/720p/MyWeather.xml
@@ -2,7 +2,6 @@
<window>
<defaultcontrol always="true">50</defaultcontrol>
<menucontrol>9000</menucontrol>
- <allowoverlay>no</allowoverlay>
<onload condition="!Skin.HasSetting(FirstTimeRun)">ActivateWindow(1112)</onload>
<controls>
<include>CommonBackground</include>
diff --git a/addons/skin.confluence/720p/Settings.xml b/addons/skin.confluence/720p/Settings.xml
index e2332758f5..295ebfe52b 100644
--- a/addons/skin.confluence/720p/Settings.xml
+++ b/addons/skin.confluence/720p/Settings.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">9000</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<include>CommonBackground</include>
<control type="image">
diff --git a/addons/skin.confluence/720p/SettingsCategory.xml b/addons/skin.confluence/720p/SettingsCategory.xml
index 857f7b6a8f..cd8a9050f3 100644
--- a/addons/skin.confluence/720p/SettingsCategory.xml
+++ b/addons/skin.confluence/720p/SettingsCategory.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol>3</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<include>CommonBackground</include>
<control type="image">
diff --git a/addons/skin.confluence/720p/SettingsProfile.xml b/addons/skin.confluence/720p/SettingsProfile.xml
index 2cda4cd555..536730d57f 100644
--- a/addons/skin.confluence/720p/SettingsProfile.xml
+++ b/addons/skin.confluence/720p/SettingsProfile.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">9000</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<include>CommonBackground</include>
<control type="image">
diff --git a/addons/skin.confluence/720p/SettingsSystemInfo.xml b/addons/skin.confluence/720p/SettingsSystemInfo.xml
index 0c9284d6bc..fd9fa1cc5e 100644
--- a/addons/skin.confluence/720p/SettingsSystemInfo.xml
+++ b/addons/skin.confluence/720p/SettingsSystemInfo.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">95</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<include>CommonBackground</include>
<control type="image">
diff --git a/addons/skin.confluence/720p/SmartPlaylistEditor.xml b/addons/skin.confluence/720p/SmartPlaylistEditor.xml
index 4a924a7702..a35252433b 100644
--- a/addons/skin.confluence/720p/SmartPlaylistEditor.xml
+++ b/addons/skin.confluence/720p/SmartPlaylistEditor.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">22</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<coordinates>
<left>240</left>
<top>22</top>
diff --git a/addons/skin.confluence/720p/SmartPlaylistRule.xml b/addons/skin.confluence/720p/SmartPlaylistRule.xml
index ecaca05a8c..fdc89f4f62 100644
--- a/addons/skin.confluence/720p/SmartPlaylistRule.xml
+++ b/addons/skin.confluence/720p/SmartPlaylistRule.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">9001</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<coordinates>
<left>240</left>
<top>220</top>
diff --git a/addons/skin.confluence/720p/Startup.xml b/addons/skin.confluence/720p/Startup.xml
index 455f71fe19..c8b81856ad 100644
--- a/addons/skin.confluence/720p/Startup.xml
+++ b/addons/skin.confluence/720p/Startup.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
<defaultcontrol always="true">10</defaultcontrol>
- <allowoverlay>no</allowoverlay>
<controls>
<control type="button" id="10">
<description>trigger</description>
diff --git a/addons/skin.confluence/720p/script-NextAired-TVGuide.xml b/addons/skin.confluence/720p/script-NextAired-TVGuide.xml
index 9b96d728ca..27e1093408 100644
--- a/addons/skin.confluence/720p/script-NextAired-TVGuide.xml
+++ b/addons/skin.confluence/720p/script-NextAired-TVGuide.xml
@@ -7,7 +7,6 @@
<onload>ClearProperty(TVGuide.FridayList,Home)</onload>
<onload>ClearProperty(TVGuide.SaturdayList,Home)</onload>
<onload>ClearProperty(TVGuide.SundayList,Home)</onload>
- <allowoverlay>no</allowoverlay>
<controls>
<include>CommonBackground</include>
<control type="group">
diff --git a/addons/skin.confluence/720p/script-cu-lrclyrics-main.xml b/addons/skin.confluence/720p/script-cu-lrclyrics-main.xml
index 3b9c6fce47..f7ba7b5431 100644
--- a/addons/skin.confluence/720p/script-cu-lrclyrics-main.xml
+++ b/addons/skin.confluence/720p/script-cu-lrclyrics-main.xml
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
- <allowoverlay>no</allowoverlay>
<coordinates>
<left>680</left>
<top>0</top>
diff --git a/addons/skin.confluence/720p/script-globalsearch-main.xml b/addons/skin.confluence/720p/script-globalsearch-main.xml
index 75fad30293..9809708348 100644
--- a/addons/skin.confluence/720p/script-globalsearch-main.xml
+++ b/addons/skin.confluence/720p/script-globalsearch-main.xml
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<window>
- <allowoverlay>no</allowoverlay>
<coordinates>
<left>0</left>
<top>0</top>
diff --git a/tools/buildsteps/android/package b/tools/buildsteps/android/package
index cbbfb731c7..efcaab86fb 100644
--- a/tools/buildsteps/android/package
+++ b/tools/buildsteps/android/package
@@ -18,4 +18,4 @@ if [ -f *.obb ]
then
mv *.obb $UPLOAD_FILENAME.obb
fi
-mv tools/android/packaging/Kodi.symbols*.tar.bz2 $ANDROID_DEV_ROOT/debug-symbols/
+mv tools/android/packaging/Kodi.symbols*.tar.bz2 $WORKSPACE/
diff --git a/tools/buildsteps/androidx86/package b/tools/buildsteps/androidx86/package
index f7fed28eec..212ffc3b39 100644
--- a/tools/buildsteps/androidx86/package
+++ b/tools/buildsteps/androidx86/package
@@ -18,3 +18,4 @@ if [ -f *.obb ]
then
mv *.obb $UPLOAD_FILENAME.obb
fi
+mv tools/android/packaging/Kodi.symbols*.tar.bz2 $WORKSPACE/
diff --git a/xbmc/addons/AddonDatabase.cpp b/xbmc/addons/AddonDatabase.cpp
index e68259fc9d..c1ff8c49e9 100644
--- a/xbmc/addons/AddonDatabase.cpp
+++ b/xbmc/addons/AddonDatabase.cpp
@@ -462,11 +462,14 @@ int CAddonDatabase::AddRepository(const std::string& id, const VECADDONS& addons
if (idRepo > -1)
DeleteRepository(idRepo);
+ if (!SetLastChecked(id, version, CDateTime::GetCurrentDateTime().GetAsDBDateTime()))
+ return -1;
+
BeginTransaction();
- CDateTime time = CDateTime::GetCurrentDateTime();
- sql = PrepareSQL("insert into repo (id,addonID,checksum,lastcheck,version) values (NULL,'%s','%s','%s','%s')",
- id.c_str(), checksum.c_str(), time.GetAsDBDateTime().c_str(), version.asString().c_str());
+ sql = PrepareSQL("UPDATE repo SET checksum='%s', version='%s' WHERE addonID='%s'",
+ checksum.c_str(), version.asString().c_str(), id.c_str());
+
m_pDS->exec(sql);
idRepo = (int)m_pDS->lastinsertid();
for (unsigned int i=0;i<addons.size();++i)
@@ -539,10 +542,17 @@ bool CAddonDatabase::SetLastChecked(const std::string& id,
if (NULL == m_pDB.get()) return false;
if (NULL == m_pDS.get()) return false;
- std::string sql = PrepareSQL("UPDATE repo SET lastcheck='%s', version='%s' WHERE addonID='%s'",
- time.c_str(), version.asString().c_str(), id.c_str());
- m_pDS->exec(sql);
+ std::string sql = PrepareSQL("SELECT * FROM repo WHERE addonID='%s'", id.c_str());
+ m_pDS->query(sql);
+ if (m_pDS->eof())
+ sql = PrepareSQL("INSERT INTO repo (id, addonID, lastcheck, version) "
+ "VALUES (NULL, '%s', '%s', '%s')", id.c_str(), time.c_str(), version.asString().c_str());
+ else
+ sql = PrepareSQL("UPDATE repo SET lastcheck='%s', version='%s' WHERE addonID='%s'",
+ time.c_str(), version.asString().c_str(), id.c_str());
+
+ m_pDS->exec(sql);
return true;
}
catch (...)
diff --git a/xbmc/addons/Repository.cpp b/xbmc/addons/Repository.cpp
index 3ba0fab87a..efac86ea9e 100644
--- a/xbmc/addons/Repository.cpp
+++ b/xbmc/addons/Repository.cpp
@@ -217,7 +217,7 @@ bool CRepositoryUpdateJob::DoWork()
database.Open();
std::string oldChecksum;
- if (!database.GetRepoChecksum(m_repo->ID(), oldChecksum))
+ if (database.GetRepoChecksum(m_repo->ID(), oldChecksum) == -1)
oldChecksum = "";
std::string newChecksum;
diff --git a/xbmc/addons/RepositoryUpdater.cpp b/xbmc/addons/RepositoryUpdater.cpp
index 6fc3c52bcc..5e9a520043 100644
--- a/xbmc/addons/RepositoryUpdater.cpp
+++ b/xbmc/addons/RepositoryUpdater.cpp
@@ -178,10 +178,12 @@ void CRepositoryUpdater::ScheduleUpdate()
if (!CAddonMgr::GetInstance().HasAddons(ADDON_REPOSITORY))
return;
- auto next = std::max(CDateTime::GetCurrentDateTime(), LastUpdated() + interval);
+ auto prev = LastUpdated();
+ auto next = std::max(CDateTime::GetCurrentDateTime(), prev + interval);
int delta = std::max(1, (next - CDateTime::GetCurrentDateTime()).GetSecondsTotal() * 1000);
- CLog::Log(LOGDEBUG,"CRepositoryUpdater: next update at %s", next.GetAsLocalizedDateTime().c_str());
+ CLog::Log(LOGDEBUG,"CRepositoryUpdater: previous update at %s, next at %s",
+ prev.GetAsLocalizedDateTime().c_str(), next.GetAsLocalizedDateTime().c_str());
if (!m_timer.Start(delta))
CLog::Log(LOGERROR,"CRepositoryUpdater: failed to start timer");
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp
index 06f81c895c..dca4bdf0d1 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp
@@ -243,14 +243,17 @@ CDVDOverlay* CDVDOverlayCodecFFmpeg::GetOverlay()
m_height = m_pCodecContext->height;
m_width = m_pCodecContext->width;
- // ETSI EN 300 743 V1.3.1
- // 5.3.1
- // Absence of a DDS in a stream implies that the stream is coded in accordance with EN 300 743 (V1.2.1) [5] and that a
- // display width of 720 pixels and a display height of 576 lines may be assumed.
- if (!m_height && !m_width)
+ if (m_pCodecContext->codec_id == AV_CODEC_ID_DVB_SUBTITLE)
{
- m_width = 720;
- m_height = 576;
+ // ETSI EN 300 743 V1.3.1
+ // 5.3.1
+ // Absence of a DDS in a stream implies that the stream is coded in accordance with EN 300 743 (V1.2.1) [5] and that a
+ // display width of 720 pixels and a display height of 576 lines may be assumed.
+ if (!m_height && !m_width)
+ {
+ m_width = 720;
+ m_height = 576;
+ }
}
RENDER_STEREO_MODE render_stereo_mode = g_graphicsContext.GetStereoMode();
diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp
index 5a838fda52..2e7ad75c53 100644
--- a/xbmc/cores/dvdplayer/DVDPlayer.cpp
+++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp
@@ -4784,7 +4784,6 @@ bool CDVDPlayer::SwitchChannel(const CPVRChannelPtr &channel)
bool CDVDPlayer::CachePVRStream(void) const
{
return m_pInputStream->IsStreamType(DVDSTREAM_TYPE_PVRMANAGER) &&
- (!g_PVRManager.IsPlayingRecording() ||
- (m_item.HasPVRRecordingInfoTag() && m_item.GetPVRRecordingInfoTag()->IsBeingRecorded()))&&
+ !g_PVRManager.IsPlayingRecording() &&
g_advancedSettings.m_bPVRCacheInDvdPlayer;
}
diff --git a/xbmc/filesystem/win32/Win32File.cpp b/xbmc/filesystem/win32/Win32File.cpp
index 4cc4d930a0..9b34595c18 100644
--- a/xbmc/filesystem/win32/Win32File.cpp
+++ b/xbmc/filesystem/win32/Win32File.cpp
@@ -465,6 +465,12 @@ int CWin32File::Stat(const CURL& url, struct __stat64* statData)
return -1;
std::wstring pathnameW(CWIN32Util::ConvertPathToWin32Form(url));
+ if (pathnameW.empty())
+ {
+ errno = ENOENT;
+ return -1;
+ }
+
if (pathnameW.length() <= 6) // 6 is length of "\\?\x:"
return -1; // pathnameW is empty or points to device ("\\?\x:"), on win32 stat() for devices is not supported
diff --git a/xbmc/guilib/GUIControlGroupList.cpp b/xbmc/guilib/GUIControlGroupList.cpp
index 7a89fcd5f5..9f6a1cbe55 100644
--- a/xbmc/guilib/GUIControlGroupList.cpp
+++ b/xbmc/guilib/GUIControlGroupList.cpp
@@ -81,15 +81,17 @@ void CGUIControlGroupList::Process(unsigned int currentTime, CDirtyRegionList &d
g_graphicsContext.SetOrigin(m_posX + pos - m_scroller.GetValue(), m_posY);
control->DoProcess(currentTime, dirtyregions);
- if (IsControlOnScreen(pos, control))
+ if (control->IsVisible())
{
- if (control->HasFocus())
- m_focusedPosition = index;
- index++;
- }
+ if (IsControlOnScreen(pos, control))
+ {
+ if (control->HasFocus())
+ m_focusedPosition = index;
+ index++;
+ }
- if (control->IsVisible())
pos += Size(control) + m_itemGap;
+ }
g_graphicsContext.RestoreOrigin();
}
CGUIControl::Process(currentTime, dirtyregions);
diff --git a/xbmc/guilib/GUIIncludes.cpp b/xbmc/guilib/GUIIncludes.cpp
index 3decd4dddd..de1758395b 100644
--- a/xbmc/guilib/GUIIncludes.cpp
+++ b/xbmc/guilib/GUIIncludes.cpp
@@ -82,6 +82,7 @@ CGUIIncludes::CGUIIncludes()
m_constantNodes.insert("timeperimage");
m_constantNodes.insert("fadetime");
m_constantNodes.insert("pauseatend");
+ m_constantNodes.insert("depth");
}
CGUIIncludes::~CGUIIncludes()
diff --git a/xbmc/interfaces/builtins/LibraryBuiltins.cpp b/xbmc/interfaces/builtins/LibraryBuiltins.cpp
index e5a21579cf..3361003975 100644
--- a/xbmc/interfaces/builtins/LibraryBuiltins.cpp
+++ b/xbmc/interfaces/builtins/LibraryBuiltins.cpp
@@ -106,7 +106,7 @@ static int ExportLibrary(const std::vector<std::string>& params)
thumbs = StringUtils::EqualsNoCase(params[2], "true");
else
{
- HELPERS::DialogResponse result = HELPERS::ShowYesNoDialogText(CVariant{iHeading}, CVariant{20430}, CVariant{20428}, CVariant{20429});
+ HELPERS::DialogResponse result = HELPERS::ShowYesNoDialogText(CVariant{iHeading}, CVariant{20430});
cancelled = result == HELPERS::DialogResponse::CANCELLED;
thumbs = result == HELPERS::DialogResponse::YES;
}
@@ -147,7 +147,7 @@ static int ExportLibrary(const std::vector<std::string>& params)
if (params.size() > 2)
path=params[2];
- if (singleFile || !path.empty() ||
+ if (singleFile && !path.empty() ||
CGUIDialogFileBrowser::ShowAndGetDirectory(shares, g_localizeStrings.Get(661),
path, true))
{
diff --git a/xbmc/music/MusicDatabase.cpp b/xbmc/music/MusicDatabase.cpp
index a0b32b3217..91be41e093 100644
--- a/xbmc/music/MusicDatabase.cpp
+++ b/xbmc/music/MusicDatabase.cpp
@@ -2079,7 +2079,7 @@ bool CMusicDatabase::GetTop100AlbumSongs(const std::string& strBaseDir, CFileIte
if (!strBaseDir.empty() && baseUrl.FromString(strBaseDir))
return false;
- std::string strSQL = StringUtils::Format("select * from songview join albumview on (songview.idAlbum = albumview.idAlbum) where albumview.idAlbum in (select song.idAlbum from song where song.iTimesPlayed>0 group by idAlbum order by sum(song.iTimesPlayed) desc limit 100) order by albumview.idAlbum in (select song.idAlbum from song where song.iTimesPlayed>0 group by idAlbum order by sum(song.iTimesPlayed) desc limit 100)");
+ std::string strSQL = StringUtils::Format("SELECT songview.*, albumview.* FROM songview JOIN albumview ON (songview.idAlbum = albumview.idAlbum) JOIN (SELECT song.idAlbum, SUM(song.iTimesPlayed) AS iTimesPlayedSum FROM song WHERE song.iTimesPlayed > 0 GROUP BY idAlbum ORDER BY iTimesPlayedSum DESC LIMIT 100) AS _albumlimit ON (songview.idAlbum = _albumlimit.idAlbum) ORDER BY _albumlimit.iTimesPlayedSum DESC");
CLog::Log(LOGDEBUG,"GetTop100AlbumSongs() query: %s", strSQL.c_str());
if (!m_pDS->query(strSQL)) return false;
@@ -2156,7 +2156,7 @@ bool CMusicDatabase::GetRecentlyPlayedAlbumSongs(const std::string& strBaseDir,
if (!strBaseDir.empty() && !baseUrl.FromString(strBaseDir))
return false;
- std::string strSQL = StringUtils::Format("select * from songview join albumview on (songview.idAlbum = albumview.idAlbum) where albumview.idAlbum in (select distinct albumview.idAlbum from albumview join song on albumview.idAlbum=song.idAlbum where song.lastplayed IS NOT NULL order by song.lastplayed desc limit %i)", g_advancedSettings.m_iMusicLibraryRecentlyAddedItems);
+ std::string strSQL = StringUtils::Format("SELECT songview.*, albumview.* FROM songview JOIN albumview ON (songview.idAlbum = albumview.idAlbum) JOIN (SELECT DISTINCT album.idAlbum FROM album JOIN song ON album.idAlbum = song.idAlbum WHERE song.lastplayed IS NOT NULL ORDER BY song.lastplayed DESC LIMIT %i) AS _albumlimit ON (albumview.idAlbum = _albumlimit.idAlbum)", g_advancedSettings.m_iMusicLibraryRecentlyAddedItems);
CLog::Log(LOGDEBUG,"GetRecentlyPlayedAlbumSongs() query: %s", strSQL.c_str());
if (!m_pDS->query(strSQL)) return false;
diff --git a/xbmc/pvr/windows/GUIWindowPVRSearch.cpp b/xbmc/pvr/windows/GUIWindowPVRSearch.cpp
index cb11fe2354..a432045b4b 100644
--- a/xbmc/pvr/windows/GUIWindowPVRSearch.cpp
+++ b/xbmc/pvr/windows/GUIWindowPVRSearch.cpp
@@ -121,15 +121,21 @@ bool CGUIWindowPVRSearch::OnContextButton(const CFileItem &item, CONTEXT_BUTTON
m_searchfilter.m_strSearchTerm = "\"" + item.GetEPGInfoTag()->Title() + "\"";
else if (item.IsPVRChannel())
{
- CEpgInfoTagPtr tag(item.GetPVRChannelInfoTag()->GetEPGNow());
+ const CEpgInfoTagPtr tag(item.GetPVRChannelInfoTag()->GetEPGNow());
if (tag)
m_searchfilter.m_strSearchTerm = "\"" + tag->Title() + "\"";
}
else if (item.IsUsablePVRRecording())
m_searchfilter.m_strSearchTerm = "\"" + item.GetPVRRecordingInfoTag()->m_strTitle + "\"";
else if (item.IsPVRTimer())
- m_searchfilter.m_strSearchTerm = "\"" + item.GetPVRTimerInfoTag()->m_strTitle + "\"";
-
+ {
+ const CPVRTimerInfoTagPtr info(item.GetPVRTimerInfoTag());
+ const CEpgInfoTagPtr tag(info->GetEpgInfoTag());
+ if (tag)
+ m_searchfilter.m_strSearchTerm = "\"" + tag->Title() + "\"";
+ else
+ m_searchfilter.m_strSearchTerm = "\"" + info->m_strTitle + "\"";
+ }
m_bSearchConfirmed = true;
Refresh(true);
bReturn = true;
@@ -144,20 +150,19 @@ bool CGUIWindowPVRSearch::OnContextButton(const CFileItem &item, CONTEXT_BUTTON
void CGUIWindowPVRSearch::OnPrepareFileItems(CFileItemList &items)
{
- items.Clear();
-
- CFileItemPtr item(new CFileItem("pvr://guide/searchresults/search/", true));
- item->SetLabel(g_localizeStrings.Get(19140));
- item->SetLabelPreformated(true);
- item->SetSpecialSort(SortSpecialOnTop);
- items.Add(item);
+ bool bAddSpecialSearchItem = items.IsEmpty();
if (m_bSearchConfirmed)
{
+ m_bSearchConfirmed = false;
+
+ items.Clear();
+ bAddSpecialSearchItem = true;
+
CGUIDialogProgress* dlgProgress = (CGUIDialogProgress*)g_windowManager.GetWindow(WINDOW_DIALOG_PROGRESS);
if (dlgProgress)
{
- dlgProgress->SetHeading(CVariant{194});
+ dlgProgress->SetHeading(CVariant{194}); // "Searching..."
dlgProgress->SetText(CVariant{m_searchfilter.m_strSearchTerm});
dlgProgress->Open();
dlgProgress->Progress();
@@ -170,10 +175,17 @@ void CGUIWindowPVRSearch::OnPrepareFileItems(CFileItemList &items)
dlgProgress->Close();
if (items.IsEmpty())
- {
- CGUIDialogOK::ShowAndGetInput(CVariant{194}, CVariant{284});
- m_bSearchConfirmed = false;
- }
+ CGUIDialogOK::ShowAndGetInput(CVariant{194}, // "Searching..."
+ CVariant{284}); // "No results found"
+ }
+
+ if (bAddSpecialSearchItem)
+ {
+ CFileItemPtr item(new CFileItem("pvr://guide/searchresults/search/", true));
+ item->SetLabel(g_localizeStrings.Get(19140)); // "Search..."
+ item->SetLabelPreformated(true);
+ item->SetSpecialSort(SortSpecialOnTop);
+ items.Add(item);
}
}
diff --git a/xbmc/video/VideoDatabase.cpp b/xbmc/video/VideoDatabase.cpp
index b2a88be667..8b872cccc4 100644
--- a/xbmc/video/VideoDatabase.cpp
+++ b/xbmc/video/VideoDatabase.cpp
@@ -8182,7 +8182,7 @@ void CVideoDatabase::DumpToDummyFiles(const std::string &path)
}
}
-void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* = false */, bool images /* = false */, bool actorThumbs /* false */, bool overwrite /*=false*/)
+void CVideoDatabase::ExportToXML(const std::string &path, bool singleFile /* = true */, bool images /* = false */, bool actorThumbs /* false */, bool overwrite /*=false*/)
{
int iFailCount = 0;
CGUIDialogProgress *progress=NULL;
@@ -8208,7 +8208,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
std::string moviesDir = URIUtils::AddFileToFolder(exportRoot, "movies");
std::string musicvideosDir = URIUtils::AddFileToFolder(exportRoot, "musicvideos");
std::string tvshowsDir = URIUtils::AddFileToFolder(exportRoot, "tvshows");
- if (!singleFiles)
+ if (singleFile)
{
images = true;
overwrite = false;
@@ -8246,7 +8246,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
TiXmlDeclaration decl("1.0", "UTF-8", "yes");
xmlDoc.InsertEndChild(decl);
TiXmlNode *pMain = NULL;
- if (singleFiles)
+ if (!singleFile)
pMain = &xmlDoc;
else
{
@@ -8262,7 +8262,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
if (StringUtils::StartsWith(movie.m_strTrailer, movie.m_strPath))
movie.m_strTrailer = movie.m_strTrailer.substr(movie.m_strPath.size());
std::map<std::string, std::string> artwork;
- if (GetArtForItem(movie.m_iDbId, movie.m_type, artwork) && !singleFiles)
+ if (GetArtForItem(movie.m_iDbId, movie.m_type, artwork) && singleFile)
{
TiXmlElement additionalNode("art");
for (std::map<std::string, std::string>::const_iterator i = artwork.begin(); i != artwork.end(); ++i)
@@ -8270,7 +8270,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
movie.Save(pMain, "movie", true, &additionalNode);
}
else
- movie.Save(pMain, "movie", !singleFiles);
+ movie.Save(pMain, "movie", singleFile);
// reset old skip state
bool bSkip = false;
@@ -8289,7 +8289,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
CFileItem item(movie.m_strFileNameAndPath,false);
- if (singleFiles && CUtil::SupportsWriteFileOperations(movie.m_strFileNameAndPath))
+ if (!singleFile && CUtil::SupportsWriteFileOperations(movie.m_strFileNameAndPath))
{
if (!item.Exists(false))
{
@@ -8318,7 +8318,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
}
}
- if (singleFiles)
+ if (!singleFile)
{
xmlDoc.Clear();
TiXmlDeclaration decl("1.0", "UTF-8", "yes");
@@ -8327,7 +8327,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
if (images && !bSkip)
{
- if (!singleFiles)
+ if (singleFile)
{
std::string strFileName(movie.m_strTitle);
if (movie.m_iYear > 0)
@@ -8340,7 +8340,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
CTextureCache::GetInstance().Export(i->second, savedThumb, overwrite);
}
if (actorThumbs)
- ExportActorThumbs(actorsDir, movie, singleFiles, overwrite);
+ ExportActorThumbs(actorsDir, movie, !singleFile, overwrite);
}
m_pDS->next();
current++;
@@ -8359,7 +8359,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
{
CVideoInfoTag movie = GetDetailsForMusicVideo(m_pDS, true);
std::map<std::string, std::string> artwork;
- if (GetArtForItem(movie.m_iDbId, movie.m_type, artwork) && !singleFiles)
+ if (GetArtForItem(movie.m_iDbId, movie.m_type, artwork) && singleFile)
{
TiXmlElement additionalNode("art");
for (std::map<std::string, std::string>::const_iterator i = artwork.begin(); i != artwork.end(); ++i)
@@ -8367,7 +8367,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
movie.Save(pMain, "musicvideo", true, &additionalNode);
}
else
- movie.Save(pMain, "musicvideo", !singleFiles);
+ movie.Save(pMain, "musicvideo", singleFile);
// reset old skip state
bool bSkip = false;
@@ -8386,7 +8386,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
CFileItem item(movie.m_strFileNameAndPath,false);
- if (singleFiles && CUtil::SupportsWriteFileOperations(movie.m_strFileNameAndPath))
+ if (!singleFile && CUtil::SupportsWriteFileOperations(movie.m_strFileNameAndPath))
{
if (!item.Exists(false))
{
@@ -8408,7 +8408,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
}
}
- if (singleFiles)
+ if (!singleFile)
{
xmlDoc.Clear();
TiXmlDeclaration decl("1.0", "UTF-8", "yes");
@@ -8416,7 +8416,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
if (images && !bSkip)
{
- if (!singleFiles)
+ if (singleFile)
{
std::string strFileName(StringUtils::Join(movie.m_artist, g_advancedSettings.m_videoItemSeparator) + "." + movie.m_strTitle);
if (movie.m_iYear > 0)
@@ -8449,7 +8449,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
GetTvShowSeasonArt(tvshow.m_iDbId, seasonArt);
std::map<std::string, std::string> artwork;
- if (GetArtForItem(tvshow.m_iDbId, tvshow.m_type, artwork) && !singleFiles)
+ if (GetArtForItem(tvshow.m_iDbId, tvshow.m_type, artwork) && singleFile)
{
TiXmlElement additionalNode("art");
for (std::map<std::string, std::string>::const_iterator i = artwork.begin(); i != artwork.end(); ++i)
@@ -8465,7 +8465,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
tvshow.Save(pMain, "tvshow", true, &additionalNode);
}
else
- tvshow.Save(pMain, "tvshow", !singleFiles);
+ tvshow.Save(pMain, "tvshow", singleFile);
// reset old skip state
bool bSkip = false;
@@ -8484,7 +8484,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
CFileItem item(tvshow.m_strPath, true);
- if (singleFiles && CUtil::SupportsWriteFileOperations(tvshow.m_strPath))
+ if (!singleFile && CUtil::SupportsWriteFileOperations(tvshow.m_strPath))
{
if (!item.Exists(false))
{
@@ -8506,7 +8506,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
}
}
- if (singleFiles)
+ if (!singleFile)
{
xmlDoc.Clear();
TiXmlDeclaration decl("1.0", "UTF-8", "yes");
@@ -8514,7 +8514,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
if (images && !bSkip)
{
- if (!singleFiles)
+ if (singleFile)
item.SetPath(GetSafeFile(tvshowsDir, tvshow.m_strTitle));
for (std::map<std::string, std::string>::const_iterator i = artwork.begin(); i != artwork.end(); ++i)
@@ -8524,7 +8524,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
if (actorThumbs)
- ExportActorThumbs(actorsDir, tvshow, singleFiles, overwrite);
+ ExportActorThumbs(actorsDir, tvshow, !singleFile, overwrite);
// export season thumbs
for (std::map<int, std::map<std::string, std::string> >::const_iterator i = seasonArt.begin(); i != seasonArt.end(); ++i)
@@ -8554,24 +8554,24 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
{
CVideoInfoTag episode = GetDetailsForEpisode(pDS, true);
std::map<std::string, std::string> artwork;
- if (GetArtForItem(episode.m_iDbId, MediaTypeEpisode, artwork) && !singleFiles)
+ if (GetArtForItem(episode.m_iDbId, MediaTypeEpisode, artwork) && singleFile)
{
TiXmlElement additionalNode("art");
for (std::map<std::string, std::string>::const_iterator i = artwork.begin(); i != artwork.end(); ++i)
XMLUtils::SetString(&additionalNode, i->first.c_str(), i->second);
episode.Save(pMain->LastChild(), "episodedetails", true, &additionalNode);
}
- else if (!singleFiles)
- episode.Save(pMain->LastChild(), "episodedetails", !singleFiles);
+ else if (singleFile)
+ episode.Save(pMain->LastChild(), "episodedetails", singleFile);
else
- episode.Save(pMain, "episodedetails", !singleFiles);
+ episode.Save(pMain, "episodedetails", singleFile);
pDS->next();
// multi-episode files need dumping to the same XML
- while (singleFiles && !pDS->eof() &&
+ while (!singleFile && !pDS->eof() &&
episode.m_iFileId == pDS->fv("idFile").get_asInt())
{
episode = GetDetailsForEpisode(pDS, true);
- episode.Save(pMain, "episodedetails", !singleFiles);
+ episode.Save(pMain, "episodedetails", singleFile);
pDS->next();
}
@@ -8579,7 +8579,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
bool bSkip = false;
CFileItem item(episode.m_strFileNameAndPath, false);
- if (singleFiles && CUtil::SupportsWriteFileOperations(episode.m_strFileNameAndPath))
+ if (!singleFile && CUtil::SupportsWriteFileOperations(episode.m_strFileNameAndPath))
{
if (!item.Exists(false))
{
@@ -8601,7 +8601,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
}
}
- if (singleFiles)
+ if (!singleFile)
{
xmlDoc.Clear();
TiXmlDeclaration decl("1.0", "UTF-8", "yes");
@@ -8610,7 +8610,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
if (images && !bSkip)
{
- if (!singleFiles)
+ if (singleFile)
{
std::string epName = StringUtils::Format("s%02ie%02i.avi", episode.m_iSeason, episode.m_iEpisode);
item.SetPath(URIUtils::AddFileToFolder(showDir, epName));
@@ -8621,7 +8621,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
CTextureCache::GetInstance().Export(i->second, savedThumb, overwrite);
}
if (actorThumbs)
- ExportActorThumbs(actorsDir, episode, singleFiles, overwrite);
+ ExportActorThumbs(actorsDir, episode, !singleFile, overwrite);
}
}
pDS->close();
@@ -8630,13 +8630,13 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
}
m_pDS->close();
- if (singleFiles && progress)
+ if (!singleFile && progress)
{
progress->SetPercentage(100);
progress->Progress();
}
- if (!singleFiles)
+ if (singleFile)
{
// now dump path info
std::set<std::string> paths;
@@ -8662,7 +8662,7 @@ void CVideoDatabase::ExportToXML(const std::string &path, bool singleFiles /* =
xmlDoc.SaveFile(xmlFile);
}
CVariant data;
- if (!singleFiles)
+ if (singleFile)
{
data["root"] = exportRoot;
data["file"] = xmlFile;
diff --git a/xbmc/video/VideoDatabase.h b/xbmc/video/VideoDatabase.h
index 88a8df6d1e..b985f287e0 100644
--- a/xbmc/video/VideoDatabase.h
+++ b/xbmc/video/VideoDatabase.h
@@ -732,7 +732,7 @@ public:
*/
void UpdateFileDateAdded(int idFile, const std::string& strFileNameAndPath);
- void ExportToXML(const std::string &path, bool singleFiles = false, bool images=false, bool actorThumbs=false, bool overwrite=false);
+ void ExportToXML(const std::string &path, bool singleFile = true, bool images=false, bool actorThumbs=false, bool overwrite=false);
void ExportActorThumbs(const std::string &path, const CVideoInfoTag& tag, bool singleFiles, bool overwrite=false);
void ImportFromXML(const std::string &path);
void DumpToDummyFiles(const std::string &path);
diff --git a/xbmc/video/windows/GUIWindowVideoBase.cpp b/xbmc/video/windows/GUIWindowVideoBase.cpp
index 2da45c76e2..5a391ef3f2 100644
--- a/xbmc/video/windows/GUIWindowVideoBase.cpp
+++ b/xbmc/video/windows/GUIWindowVideoBase.cpp
@@ -1711,10 +1711,9 @@ void CGUIWindowVideoBase::OnAssignContent(const std::string &path)
if (OnUnAssignContent(path, 20442, 20443))
bScan = true;
}
+ db.SetScraperForPath(path, info, settings);
}
- db.SetScraperForPath(path,info,settings);
-
if (bScan)
{
g_application.StartVideoScan(path, true, true);