summaryrefslogtreecommitdiffstats
path: root/package/libcec/libcec-0001-Fix-unregistering-a-callback-that-wasn-t-register.patch
blob: 41d93aa5a4bf675785455d2b7936a39c0d73ccff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
From 78e52d55d6fc079b9a96d1a663d1991d9a0f2a2b Mon Sep 17 00:00:00 2001
From: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Date: Wed, 7 May 2014 08:41:27 +0200
Subject: [PATCH] Fix unregistering a callback that wasn't register

This patchs fixes an asserts that get's thrown when you start XBMC and thus
prevents it from starting.
The asserts you'll endup getting is:
assertion failure:
[...]/interface/vmcs_host/vc_vchi_tvservice.c:430:vc_tv_unregister_callback():done

Found: https://github.com/raspberrypi/userland/issues/159

Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
---
 src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp b/src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp
index 76c61b3..1eb6417 100644
--- a/src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp
+++ b/src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp
@@ -353,7 +353,9 @@ void CRPiCECAdapterCommunication::Close(void)
     else
       return;
   }
-  vc_tv_unregister_callback(rpi_tv_callback);
+
+  if (m_bInitialised)
+    vc_tv_unregister_callback(rpi_tv_callback);

   UnregisterLogicalAddress();

--
1.9.2

OpenPOWER on IntegriCloud