diff options
Diffstat (limited to 'src/ConfigParser.cpp')
-rw-r--r-- | src/ConfigParser.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/ConfigParser.cpp b/src/ConfigParser.cpp index c2f286d..17b34ca 100644 --- a/src/ConfigParser.cpp +++ b/src/ConfigParser.cpp @@ -3,7 +3,7 @@ 2011, 2012 Her Majesty the Queen in Right of Canada (Communications Research Center Canada) - Copyright (C) 2017 + Copyright (C) 2018 Matthias P. Braendli, matthias.braendli@mpb.li http://www.opendigitalradio.org @@ -589,7 +589,19 @@ void parse_ptree( } service->id = new_service_id; - service->pty = hexparse(pt_service.get("pty", "0")); + service->pty_settings.pty = hexparse(pt_service.get("pty", "0")); + // Default to dynamic for backward compatibility + const string dynamic_no_static_str = pt_service.get("pty-sd", "dynamic"); + if (dynamic_no_static_str == "dynamic") { + service->pty_settings.dynamic_no_static = true; + } + else if (dynamic_no_static_str == "static") { + service->pty_settings.dynamic_no_static = false; + } + else { + throw runtime_error("pty-sd setting for service " + + serviceuid + " is invalid"); + } service->language = hexparse(pt_service.get("language", "0")); allservices[serviceuid] = service; |