summaryrefslogtreecommitdiffstats
path: root/main/xbmc/0001-CEC-fixed-don-t-try-to-stick-a-value-255-in-a-byte.patch
blob: f2fc11b8501b495e1cf02241b54a6fd57df8015a (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
37
38
39
40
41
From 4037c9fd07fbec1873549e71e0b1c2833a5a87db Mon Sep 17 00:00:00 2001
From: Lars Op den Kamp <lars@opdenkamp.eu>
Date: Mon, 27 Oct 2014 14:42:30 +0100
Subject: [PATCH 1/8] [CEC] fixed: don't try to stick a value > 255 in a byte

---
 system/peripherals.xml                            | 2 +-
 xbmc/peripherals/devices/PeripheralCecAdapter.cpp | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/system/peripherals.xml b/system/peripherals.xml
index 57af5d1..5fcff7c 100644
--- a/system/peripherals.xml
+++ b/system/peripherals.xml
@@ -30,7 +30,7 @@
     <setting key="device_type" type="int" value="1" configurable="0" />
     <setting key="wake_devices_advanced" type="string" value="" configurable="0" />
     <setting key="standby_devices_advanced" type="string" value="" configurable="0" />
-    <setting key="double_tap_timeout_ms" type="int" min="0" value="2000" configurable="0" />
+    <setting key="double_tap_timeout_ms" type="int" min="0" value="300" configurable="0" />
   </peripheral>
 
   <peripheral vendor_product="2548:1001,2548:1002" bus="usb" name="Pulse-Eight CEC Adapter" mapTo="cec">
diff --git a/xbmc/peripherals/devices/PeripheralCecAdapter.cpp b/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
index 9907ba2..1d068dc 100644
--- a/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
+++ b/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
@@ -1347,8 +1347,8 @@ void CPeripheralCecAdapter::SetConfigurationFromSettings(void)
   m_configuration.bPowerOffOnStandby = iStandbyAction == 13011 ? 1 : 0;
   m_configuration.bShutdownOnStandby = iStandbyAction == 13005 ? 1 : 0;
 
-  // double tap prevention timeout in ms
-  m_configuration.iDoubleTapTimeoutMs = GetSettingInt("double_tap_timeout_ms");
+  // double tap prevention timeout in ms. libCEC uses 50ms units for this in 2.2.0, so divide by 50
+  m_configuration.iDoubleTapTimeoutMs = GetSettingInt("double_tap_timeout_ms") / 50;
 }
 
 void CPeripheralCecAdapter::ReadLogicalAddresses(const CStdString &strString, cec_logical_addresses &addresses)
-- 
2.1.2