aboutsummaryrefslogtreecommitdiffstats
path: root/src/FigParser.cpp
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2024-07-24 16:21:52 +0200
committerMatthias P. Braendli <matthias.braendli@mpb.li>2024-07-24 16:21:52 +0200
commit2306377230caee715de737ba6edd68e8a878fa97 (patch)
treeef4a5f96f2211493a786fccf0f3a69a0206176eb /src/FigParser.cpp
parentf97fdac0193ab2053bd43c3d92a69b14faf9d15c (diff)
downloaddabmod-2306377230caee715de737ba6edd68e8a878fa97.tar.gz
dabmod-2306377230caee715de737ba6edd68e8a878fa97.tar.bz2
dabmod-2306377230caee715de737ba6edd68e8a878fa97.zip
Do not clear service list when ensemble stays the same
Diffstat (limited to 'src/FigParser.cpp')
-rw-r--r--src/FigParser.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/FigParser.cpp b/src/FigParser.cpp
index bda2f83..4df4cb3 100644
--- a/src/FigParser.cpp
+++ b/src/FigParser.cpp
@@ -60,9 +60,14 @@ static bool checkCRC(const uint8_t *buf, size_t size)
void FICDecoderObserver::FICChangeEnsemble(const FIC_ENSEMBLE& e)
{
+ if (ensemble.has_value() and e.eid == ensemble->eid and e.ecc == ensemble->ecc) {
+ return;
+ }
+
services.clear();
ensemble = e;
}
+
void FICDecoderObserver::FICChangeService(const LISTED_SERVICE& ls)
{
services[ls.sid] = ls;