diff libinterp/dldfcn/__init_fltk__.cc @ 30766:db0335e1b6e0 stable

Backed out changeset fc530ec01070 (bug #61994)
author John W. Eaton <jwe@octave.org>
date Sat, 19 Feb 2022 13:14:20 -0500
parents fc530ec01070
children 753e48aa488c
line wrap: on
line diff
--- a/libinterp/dldfcn/__init_fltk__.cc	Sat Feb 19 13:19:37 2022 +0100
+++ b/libinterp/dldfcn/__init_fltk__.cc	Sat Feb 19 13:14:20 2022 -0500
@@ -38,7 +38,6 @@
 #  include "config.h"
 #endif
 
-#include "auto-shlib.h"
 #include "defun-dld.h"
 #include "error.h"
 #include "errwarn.h"
@@ -2268,16 +2267,12 @@
 
   fltk_graphics_toolkit (octave::interpreter& interp)
     : octave::base_graphics_toolkit (FLTK_GRAPHICS_TOOLKIT_NAME),
-      m_interpreter (interp), input_event_hook_fcn_id (),
-      m_containing_dynamic_library ()
+      m_interpreter (interp), input_event_hook_fcn_id ()
   {
     Fl::visual (FL_RGB);
   }
 
-  ~fltk_graphics_toolkit (void)
-  {
-    m_containing_dynamic_library.delete_later ();
-  }
+  ~fltk_graphics_toolkit (void) = default;
 
   bool is_valid (void) const { return true; }
 
@@ -2489,8 +2484,6 @@
   octave::interpreter& m_interpreter;
 
   octave_value_list input_event_hook_fcn_id;
-
-  octave::auto_shlib m_containing_dynamic_library;
 };
 
 #endif
@@ -2530,6 +2523,8 @@
     error ("__init_fltk__: no graphics DISPLAY available");
   else if (! toolkit_loaded)
     {
+      interp.mlock ();
+
       octave::gtk_manager& gtk_mgr = interp.get_gtk_manager ();
 
       fltk_graphics_toolkit *fltk = new fltk_graphics_toolkit (interp);