From e46b5183199dbe00c63f79332a2e04e516cb646f Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Wed, 15 Jul 2015 14:08:52 -0400 Subject: classes derived from WindowProxy are responsible for their own window creation in ::set_state(). Fixes a crash reported by A.Prokoudine when opening a session with visible plugin GUIs --- libs/gtkmm2ext/window_proxy.cc | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'libs') diff --git a/libs/gtkmm2ext/window_proxy.cc b/libs/gtkmm2ext/window_proxy.cc index dd1d4c35bd..e18596dd9e 100644 --- a/libs/gtkmm2ext/window_proxy.cc +++ b/libs/gtkmm2ext/window_proxy.cc @@ -97,6 +97,8 @@ WindowProxy::set_state (const XMLNode& node, int /* version */) XMLProperty* prop; + std::cerr << " PB setting state\n"; + if ((prop = (*i)->property (X_("visible"))) != 0) { _visible = PBD::string_is_affirmative (prop->value ()); } @@ -115,14 +117,6 @@ WindowProxy::set_state (const XMLNode& node, int /* version */) } } - /* if the window is marked visible but doesn't yet exist, create it */ - - if (_visible) { - if (!_window) { - _window = get (true); - } - } - if (_window) { setup (); } -- cgit v1.2.3