diff --git a/Fltk/FlGui.cpp b/Fltk/FlGui.cpp
index 9c7898e897156adeea2a60636234f580000464eb..7a3924078190dac9d5489149d9e4a5fc2e18ce24 100644
--- a/Fltk/FlGui.cpp
+++ b/Fltk/FlGui.cpp
@@ -74,8 +74,18 @@ static int globalShortcut(int event)
   return FlGui::instance()->testGlobalShortcuts(event);
 }
 
-int FlGui::lock(){_in_main_thread++; Fl::lock();}
-void FlGui::unlock(){Fl::unlock(); _in_main_thread--;}
+int FlGui::lock()
+{
+  _in_main_thread++;
+  Fl::lock();
+  return _in_main_thread;
+}
+
+void FlGui::unlock()
+{
+  Fl::unlock();
+  _in_main_thread--;
+}
 
 static void simple_right_box_draw(int x, int y, int w, int h, Fl_Color c)
 {