From 1eb040719607dd1a5434c462a12eb828391cbc78 Mon Sep 17 00:00:00 2001
From: sc29wg11 <zhangkai.video@bytedance.com>
Date: Sun, 24 May 2020 16:18:43 -0700
Subject: [PATCH] Fix a missing condition

---
 source/Lib/DecoderLib/VLCReader.cpp | 5 ++++-
 source/Lib/EncoderLib/VLCWriter.cpp | 5 ++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/source/Lib/DecoderLib/VLCReader.cpp b/source/Lib/DecoderLib/VLCReader.cpp
index 6c6c2fba91..c78b081e17 100644
--- a/source/Lib/DecoderLib/VLCReader.cpp
+++ b/source/Lib/DecoderLib/VLCReader.cpp
@@ -2173,7 +2173,10 @@ void HLSyntaxReader::parseSPS(SPS* pcSPS)
   READ_FLAG(uiCode, "sps_explicit_scaling_list_enabled_flag");                 pcSPS->setScalingListFlag(uiCode);
 
 #if JVET_R0064
-  READ_FLAG(uiCode, "scaling_matrix_for_lfnst_disabled_flag"); pcSPS->setDisableScalingMatrixForLfnstBlks(uiCode ? true : false);
+  if (pcSPS->getUseLFNST() && pcSPS->getScalingListFlag())
+  {
+    READ_FLAG(uiCode, "scaling_matrix_for_lfnst_disabled_flag"); pcSPS->setDisableScalingMatrixForLfnstBlks(uiCode ? true : false);
+  }
 #endif
 
 #if JVET_R0380_SCALING_MATRIX_DISABLE_YCC_OR_RGB
diff --git a/source/Lib/EncoderLib/VLCWriter.cpp b/source/Lib/EncoderLib/VLCWriter.cpp
index aa47a6eeef..eedb5d8b60 100644
--- a/source/Lib/EncoderLib/VLCWriter.cpp
+++ b/source/Lib/EncoderLib/VLCWriter.cpp
@@ -1352,7 +1352,10 @@ void HLSWriter::codeSPS( const SPS* pcSPS )
   WRITE_FLAG( pcSPS->getScalingListFlag() ? 1 : 0,                                   "sps_scaling_list_enabled_flag" );
 
 #if JVET_R0064
-  WRITE_FLAG( pcSPS->getDisableScalingMatrixForLfnstBlks(), "scaling_matrix_for_lfnst_disabled_flag");
+  if (pcSPS->getUseLFNST() && pcSPS->getScalingListFlag())
+  {
+    WRITE_FLAG(pcSPS->getDisableScalingMatrixForLfnstBlks(), "scaling_matrix_for_lfnst_disabled_flag");
+  }
 #endif
 
 #if JVET_R0380_SCALING_MATRIX_DISABLE_YCC_OR_RGB
-- 
GitLab