Merge "QMF configuration flag QMF_FLAG_MPSLDFB has always priority over QMF_FLAG_CLDFB"
am: cf4098ed3b

Change-Id: I0166285d3129440c9caa444fe4fcfa9d59c1f6c1
diff --git a/libFDK/src/FDK_qmf_domain.cpp b/libFDK/src/FDK_qmf_domain.cpp
index 409f222..dd63dab 100644
--- a/libFDK/src/FDK_qmf_domain.cpp
+++ b/libFDK/src/FDK_qmf_domain.cpp
@@ -889,10 +889,6 @@
         !(hgc->flags & (QMF_FLAG_CLDFB | QMF_FLAG_MPSLDFB))) {
       hgc->flags_requested |= QMF_FLAG_DOWNSAMPLED;
     }
-    if ((hgc->flags_requested & QMF_FLAG_MPSLDFB) &&
-        (hgc->flags_requested & QMF_FLAG_CLDFB)) {
-      hgc->flags_requested &= ~QMF_FLAG_CLDFB;
-    }
 
     hasChanged = 1;
   }
@@ -901,6 +897,10 @@
 
   /* 5. set requested flags */
   if (hgc->flags != hgc->flags_requested) {
+    if ((hgc->flags_requested & QMF_FLAG_MPSLDFB) &&
+        (hgc->flags_requested & QMF_FLAG_CLDFB)) {
+      hgc->flags_requested &= ~QMF_FLAG_CLDFB;
+    }
     hgc->flags = hgc->flags_requested;
     hasChanged = 1;
   }
diff --git a/libSACdec/src/sac_dec_lib.cpp b/libSACdec/src/sac_dec_lib.cpp
index e881599..7549e51 100644
--- a/libSACdec/src/sac_dec_lib.cpp
+++ b/libSACdec/src/sac_dec_lib.cpp
@@ -1087,6 +1087,7 @@
 
   if (coreCodec == AOT_ER_AAC_ELD) {
     pGC->flags_requested |= QMF_FLAG_MPSLDFB;
+    pGC->flags_requested &= ~QMF_FLAG_CLDFB;
   }
 
   return err;