Skip to content

Commit a14fd4a

Browse files
authored
Merge pull request #290 from phunkyfish/fix-instance-settings
Read from instance settings instead of old settings
2 parents be79ffe + 88d81d2 commit a14fd4a

File tree

3 files changed

+30
-14
lines changed

3 files changed

+30
-14
lines changed

pvr.vbox/addon.xml.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<addon
33
id="pvr.vbox"
4-
version="20.4.1"
4+
version="20.4.2"
55
name="VBox TV Gateway PVR Client"
66
provider-name="Sam Stenvall">
77
<requires>@ADDON_DEPENDS@</requires>

pvr.vbox/changelog.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
v20.4.2
2+
- Read from instance settings instead of old settings
3+
14
v20.4.1
25
- Set default timeshift path correctly
36

src/vbox/InstanceSettings.cpp

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -17,21 +17,34 @@ InstanceSettings::InstanceSettings(kodi::addon::IAddonInstance& instance)
1717

1818
void InstanceSettings::ReadSettings()
1919
{
20-
m_internalConnectionParams.hostname = kodi::addon::GetSettingString("hostname", "");
21-
m_internalConnectionParams.httpPort = kodi::addon::GetSettingInt("http_port", 80);
22-
m_internalConnectionParams.httpsPort = kodi::addon::GetSettingInt("https_port", 0);
23-
m_internalConnectionParams.upnpPort = kodi::addon::GetSettingInt("upnp_port", 55555);
24-
m_internalConnectionParams.timeout = kodi::addon::GetSettingInt("connection_timeout", 3);
20+
if (!m_instance.CheckInstanceSettingString("hostname", m_internalConnectionParams.hostname))
21+
m_internalConnectionParams.hostname = "";
22+
if (!m_instance.CheckInstanceSettingInt("http_port", m_internalConnectionParams.httpPort))
23+
m_internalConnectionParams.httpPort = 80;
24+
if (!m_instance.CheckInstanceSettingInt("https_port", m_internalConnectionParams.httpsPort))
25+
m_internalConnectionParams.httpsPort = 0;
26+
if (!m_instance.CheckInstanceSettingInt("upnp_port", m_internalConnectionParams.upnpPort))
27+
m_internalConnectionParams.upnpPort = 55555;
28+
if (!m_instance.CheckInstanceSettingInt("connection_timeout", m_internalConnectionParams.timeout))
29+
m_internalConnectionParams.timeout = 3;
2530

26-
m_externalConnectionParams.hostname = kodi::addon::GetSettingString("external_hostname", "");
27-
m_externalConnectionParams.httpPort = kodi::addon::GetSettingInt("external_http_port", 19999);
28-
m_externalConnectionParams.httpsPort = kodi::addon::GetSettingInt("external_https_port", 0);
29-
m_externalConnectionParams.upnpPort = kodi::addon::GetSettingInt("external_upnp_port", 55555);
30-
m_externalConnectionParams.timeout = kodi::addon::GetSettingInt("connection_timeout", 10);
31+
if (!m_instance.CheckInstanceSettingString("external_hostname", m_externalConnectionParams.hostname))
32+
m_externalConnectionParams.hostname = "";
33+
if (!m_instance.CheckInstanceSettingInt("external_http_port", m_externalConnectionParams.httpPort))
34+
m_externalConnectionParams.httpPort = 19999;
35+
if (!m_instance.CheckInstanceSettingInt("external_https_port", m_externalConnectionParams.httpsPort))
36+
m_externalConnectionParams.httpsPort = 0;
37+
if (!m_instance.CheckInstanceSettingInt("external_upnp_port", m_externalConnectionParams.upnpPort))
38+
m_externalConnectionParams.upnpPort = 55555;
39+
if (!m_instance.CheckInstanceSettingInt("external_connection_timeout", m_externalConnectionParams.timeout))
40+
m_externalConnectionParams.timeout = 10;
3141

32-
m_setChannelIdUsingOrder = kodi::addon::GetSettingEnum<vbox::ChannelOrder>("set_channelid_using_order", CH_ORDER_BY_LCN);
33-
m_timeshiftEnabled = kodi::addon::GetSettingBoolean("timeshift_enabled", false);
34-
m_timeshiftBufferPath = kodi::addon::GetSettingString("timeshift_path", "special://userdata/addon_data/pvr.vbox");
42+
if (!m_instance.CheckInstanceSettingEnum<vbox::ChannelOrder>("set_channelid_using_order", m_setChannelIdUsingOrder))
43+
m_setChannelIdUsingOrder = CH_ORDER_BY_LCN;
44+
if (!m_instance.CheckInstanceSettingBoolean("timeshift_enabled", m_timeshiftEnabled))
45+
m_timeshiftEnabled = false;
46+
if (!m_instance.CheckInstanceSettingString("timeshift_path", m_timeshiftBufferPath))
47+
m_timeshiftBufferPath = "special://userdata/addon_data/pvr.vbox";
3548
}
3649

3750
ADDON_STATUS InstanceSettings::SetSetting(const std::string& settingName, const kodi::addon::CSettingValue& settingValue)

0 commit comments

Comments
 (0)