From aaa5669ee9354876e966f9b47b1c45ba825d4531 Mon Sep 17 00:00:00 2001
From: Vadim Seregin <vseregin@qti.qualcomm.com>
Date: Mon, 21 Oct 2019 17:48:28 -0700
Subject: [PATCH] fix memory leak

---
 source/App/EncoderApp/encmain.cpp | 3 +++
 source/Lib/CommonLib/Slice.cpp    | 3 +++
 source/Lib/EncoderLib/EncLib.cpp  | 3 ++-
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/source/App/EncoderApp/encmain.cpp b/source/App/EncoderApp/encmain.cpp
index abe16cd00..b2bda223c 100644
--- a/source/App/EncoderApp/encmain.cpp
+++ b/source/App/EncoderApp/encmain.cpp
@@ -121,6 +121,9 @@ int main(int argc, char* argv[])
   bool resized = false;
   int layerIdx = 0;
 
+  initROM();
+  TComHash::initBlockSizeToIndex();
+
   char** layerArgv = new char*[argc];
 
   do
diff --git a/source/Lib/CommonLib/Slice.cpp b/source/Lib/CommonLib/Slice.cpp
index cd8cb2658..9c3613593 100644
--- a/source/Lib/CommonLib/Slice.cpp
+++ b/source/Lib/CommonLib/Slice.cpp
@@ -1887,6 +1887,9 @@ PPS::~PPS()
 APS::APS()
 : m_APSId(0)
 , m_temporalId( 0 )
+#if JVET_N0278_FIXES
+, m_layerId( 0 )
+#endif
 {
 }
 
diff --git a/source/Lib/EncoderLib/EncLib.cpp b/source/Lib/EncoderLib/EncLib.cpp
index ce9583ba5..0919b23fb 100644
--- a/source/Lib/EncoderLib/EncLib.cpp
+++ b/source/Lib/EncoderLib/EncLib.cpp
@@ -112,10 +112,11 @@ void EncLib::create ()
 {
 #if JVET_N0278_FIXES
   m_layerId = layerId;
-#endif
+#else
   // initialize global variables
   initROM();
   TComHash::initBlockSizeToIndex();
+#endif
   m_iPOCLast = m_compositeRefEnabled ? -2 : -1;
   // create processing unit classes
   m_cGOPEncoder.        create( );
-- 
GitLab