From 39b7eb8de6031eb763b72aa24ca9fbdfa6ea71c2 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sat, 13 Jul 2013 15:42:18 +0200 Subject: [PATCH] xbmc: fix PR2890, this fixes #2466 Signed-off-by: Stephan Raue --- .../12.2.0/xbmc-990.26.03-PR2890.patch | 68 +++++++++++++++++++ .../12.2.0/xbmc-990.26.04-PR2890.patch | 31 +++++++++ 2 files changed, 99 insertions(+) create mode 100644 packages/mediacenter/xbmc/patches/12.2.0/xbmc-990.26.03-PR2890.patch create mode 100644 packages/mediacenter/xbmc/patches/12.2.0/xbmc-990.26.04-PR2890.patch diff --git a/packages/mediacenter/xbmc/patches/12.2.0/xbmc-990.26.03-PR2890.patch b/packages/mediacenter/xbmc/patches/12.2.0/xbmc-990.26.03-PR2890.patch new file mode 100644 index 0000000000..8bca4acf61 --- /dev/null +++ b/packages/mediacenter/xbmc/patches/12.2.0/xbmc-990.26.03-PR2890.patch @@ -0,0 +1,68 @@ +From 94817e6fa85e2e0b39d1f0f96795435a4256fe7b Mon Sep 17 00:00:00 2001 +From: arnova +Date: Sun, 7 Jul 2013 12:27:08 +0200 +Subject: [PATCH] fixed: MusicInfoTag loader locked up after + 9752e490e40e69d53e9dbb10a972dff533192570 + +--- + xbmc/BackgroundInfoLoader.cpp | 6 +++++- + xbmc/BackgroundInfoLoader.h | 1 + + 2 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/xbmc/BackgroundInfoLoader.cpp b/xbmc/BackgroundInfoLoader.cpp +index 8e488d0..1cd6e62 100644 +--- a/xbmc/BackgroundInfoLoader.cpp ++++ b/xbmc/BackgroundInfoLoader.cpp +@@ -32,6 +32,7 @@ + m_pObserver=NULL; + m_pProgressCallback=NULL; + m_pVecItems = NULL; ++ m_bIsLoading = false; + } + + CBackgroundInfoLoader::~CBackgroundInfoLoader() +@@ -88,6 +89,7 @@ void CBackgroundInfoLoader::Run() + } + } + ++ m_bIsLoading = false; + OnLoaderFinish(); + } + catch (...) +@@ -110,6 +112,7 @@ void CBackgroundInfoLoader::Load(CFileItemList& items) + + m_pVecItems = &items; + m_bStop = false; ++ m_bIsLoading = true; + + m_thread = new CThread(this, "BackgroundLoader"); + m_thread->Create(); +@@ -136,11 +139,12 @@ void CBackgroundInfoLoader::StopThread() + } + m_vecItems.clear(); + m_pVecItems = NULL; ++ m_bIsLoading = false; + } + + bool CBackgroundInfoLoader::IsLoading() + { +- return m_thread != NULL; ++ return m_bIsLoading; + } + + void CBackgroundInfoLoader::SetObserver(IBackgroundLoaderObserver* pObserver) +diff --git a/xbmc/BackgroundInfoLoader.h b/xbmc/BackgroundInfoLoader.h +index 3a214a3..3cf28db 100644 +--- a/xbmc/BackgroundInfoLoader.h ++++ b/xbmc/BackgroundInfoLoader.h +@@ -63,6 +63,7 @@ class CBackgroundInfoLoader : public IRunnable + std::vector m_vecItems; // FileItemList would delete the items and we only want to keep a reference. + CCriticalSection m_lock; + ++ volatile bool m_bIsLoading; + volatile bool m_bStop; + CThread *m_thread; + +-- +1.8.1.6 + diff --git a/packages/mediacenter/xbmc/patches/12.2.0/xbmc-990.26.04-PR2890.patch b/packages/mediacenter/xbmc/patches/12.2.0/xbmc-990.26.04-PR2890.patch new file mode 100644 index 0000000000..7b47dc3bf7 --- /dev/null +++ b/packages/mediacenter/xbmc/patches/12.2.0/xbmc-990.26.04-PR2890.patch @@ -0,0 +1,31 @@ +From fe1856c912e47a86081d08e25d95b2efcc3e14ac Mon Sep 17 00:00:00 2001 +From: arnova +Date: Mon, 8 Jul 2013 08:29:37 +0200 +Subject: [PATCH] fixed: Little fixup for + 94817e6fa85e2e0b39d1f0f96795435a4256fe7b (thanks JM) + +--- + xbmc/BackgroundInfoLoader.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/xbmc/BackgroundInfoLoader.cpp b/xbmc/BackgroundInfoLoader.cpp +index 1cd6e62..43dfb49 100644 +--- a/xbmc/BackgroundInfoLoader.cpp ++++ b/xbmc/BackgroundInfoLoader.cpp +@@ -89,11 +89,12 @@ void CBackgroundInfoLoader::Run() + } + } + +- m_bIsLoading = false; + OnLoaderFinish(); ++ m_bIsLoading = false; + } + catch (...) + { ++ m_bIsLoading = false; + CLog::Log(LOGERROR, "%s - Unhandled exception", __FUNCTION__); + } + } +-- +1.8.1.6 +