From b107dde4dce75e85302c75c0fe51aac615919ec7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?David=20B=C3=BChler?= <david.buhler@cea.fr>
Date: Fri, 19 Jul 2019 15:32:06 +0200
Subject: [PATCH] [Wp] Fixes a segmentation fault on lablgtk3: do not create a
 gtk button too early.

---
 src/plugins/wp/GuiConfig.ml  | 2 +-
 src/plugins/wp/GuiConfig.mli | 2 +-
 src/plugins/wp/GuiPanel.ml   | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/plugins/wp/GuiConfig.ml b/src/plugins/wp/GuiConfig.ml
index c7cd8abf553..349477b5351 100644
--- a/src/plugins/wp/GuiConfig.ml
+++ b/src/plugins/wp/GuiConfig.ml
@@ -165,7 +165,7 @@ type mprover =
   | COQ
   | WHY of VCS.Why3_prover.t
 
-class dp_button =
+class dp_button () =
   let render = function
     | NONE -> "(none)"
     | ERGO -> "Alt-Ergo (native)"
diff --git a/src/plugins/wp/GuiConfig.mli b/src/plugins/wp/GuiConfig.mli
index e62ee8ca77f..4e068822df1 100644
--- a/src/plugins/wp/GuiConfig.mli
+++ b/src/plugins/wp/GuiConfig.mli
@@ -33,7 +33,7 @@ class dp_chooser :
     method run : unit -> unit (** Edit enabled provers *)
   end
 
-class dp_button :
+class dp_button : unit ->
   object
     inherit Widget.widget
     method update : unit -> unit
diff --git a/src/plugins/wp/GuiPanel.ml b/src/plugins/wp/GuiPanel.ml
index 8e8186e992b..856a047be4e 100644
--- a/src/plugins/wp/GuiPanel.ml
+++ b/src/plugins/wp/GuiPanel.ml
@@ -220,7 +220,7 @@ let wp_panel
     ~label:"Provers..." ~tooltip:"Detect WP Provers" () in
   prover_cfg#connect configure_provers ;
   form#add_label_widget prover_cfg#coerce ;
-  let prover_menu = new GuiConfig.dp_button in
+  let prover_menu = new GuiConfig.dp_button () in
   form#add_field prover_menu#coerce ;
   Gtk_form.register demon prover_menu#update ;
   (* End Form *)
-- 
GitLab