Explicitly set up Grok logger rather than relying on a static variable.
authorCarl Hetherington <cth@carlh.net>
Sun, 24 Sep 2023 10:02:19 +0000 (12:02 +0200)
committerCarl Hetherington <cth@carlh.net>
Sat, 16 Dec 2023 01:07:38 +0000 (02:07 +0100)
src/lib/grok/context.h
src/lib/j2k_encoder.cc
src/tools/dcpomatic.cc
src/tools/dcpomatic_batch.cc
src/tools/dcpomatic_server.cc
src/tools/dcpomatic_server_cli.cc

index 8e03c1d541c71bb5aa2c6cd5129e7f2d1d41186e..2513f8863d44758263f55c07b4d65244eadc40d4 100644 (file)
@@ -59,13 +59,6 @@ struct GrokLogger : public MessengerLogger {
        }
 };
 
-struct GrokInitializer {
-       GrokInitializer(void) {
-               setMessengerLogger(new GrokLogger("[GROK] "));
-       }
-       ~GrokInitializer()  = default;
-};
-
 struct FrameProxy {
        FrameProxy(int index, Eyes eyes, DCPVideo dcpv) : index_(index), eyes_(eyes), vf(dcpv)
        {}
index 8c7a1ef1be60c8c69babcc68d9bb03a450eb315c..c023e4bf366ab087f5c26d2a2a098cd1cd85dd54 100644 (file)
@@ -58,8 +58,6 @@ using dcp::Data;
 using namespace dcpomatic;
 
 
-static grk_plugin::GrokInitializer grokInitializer;
-
 /** @param film Film that we are encoding.
  *  @param writer Writer that we are using.
  */
index 7d1d7a66512e260fe360d8bc07d2b636dc840eae..90ae920eeabd4f587331052cda415202342dd35c 100644 (file)
@@ -75,6 +75,7 @@
 #include "lib/ffmpeg_encoder.h"
 #include "lib/film.h"
 #include "lib/font_config.h"
+#include "lib/grok/context.h"
 #include "lib/hints.h"
 #include "lib/job_manager.h"
 #include "lib/kdm_with_metadata.h"
@@ -1721,6 +1722,8 @@ private:
                                notes.Centre();
                                notes.ShowModal();
                        }
+
+                       grk_plugin::setMessengerLogger(new grk_plugin::GrokLogger("[GROK] "));
                }
                catch (exception& e)
                {
index e39a71529b0114bc92bab8fe2bfba43f9868d0e9..590ddafd5960bfdcc8a9eae3348bb66c419f9b48 100644 (file)
@@ -31,6 +31,7 @@
 #include "lib/config.h"
 #include "lib/dcpomatic_socket.h"
 #include "lib/film.h"
+#include "lib/grok/context.h"
 #include "lib/job.h"
 #include "lib/job_manager.h"
 #include "lib/make_dcp.h"
@@ -498,6 +499,8 @@ class App : public wxApp
                        }
                }
 
+               grk_plugin::setMessengerLogger(new grk_plugin::GrokLogger("[GROK] "));
+
                return true;
        }
 
index e5e3a7e5a072e6a5838f8ff40e149cd49e3bae51..528af885843bd2eb51e76fbc693bbfe90dee0603 100644 (file)
@@ -25,6 +25,7 @@
 #include "lib/encoded_log_entry.h"
 #include "lib/encode_server.h"
 #include "lib/config.h"
+#include "lib/grok/context.h"
 #include "lib/log.h"
 #include "lib/signaller.h"
 #include "lib/cross.h"
@@ -326,6 +327,8 @@ private:
 
                SetExitOnFrameDelete (false);
 
+               grk_plugin::setMessengerLogger(new grk_plugin::GrokLogger("[GROK] "));
+
                return true;
        }
 
index 6d7f6aba729ae06113de78f76ae9bbd5ab8dba68..30f119a5e0cb21bf9a0739a1d5fef638e8ac8ce6 100644 (file)
@@ -25,6 +25,7 @@
 #include "lib/config.h"
 #include "lib/image.h"
 #include "lib/file_log.h"
+#include "lib/grok/context.h"
 #include "lib/null_log.h"
 #include "lib/version.h"
 #include "lib/encode_server.h"
@@ -109,6 +110,8 @@ main (int argc, char* argv[])
                dcpomatic_log.reset (new FileLog("dcpomatic_server_cli.log"));
        }
 
+       setMessengerLogger(new grk_plugin::GrokLogger("[GROK] "));
+
        EncodeServer server (verbose, num_threads);
 
        try {