summaryrefslogtreecommitdiff
path: root/scene/gui
diff options
context:
space:
mode:
authorBojidar Marinov <bojidar.marinov.bg@gmail.com>2016-03-10 21:00:01 +0200
committerBojidar Marinov <bojidar.marinov.bg@gmail.com>2016-03-10 21:01:49 +0200
commitbac875be66073d3f36adc3f03c391e724986888e (patch)
treee3a409be658744b597003a8ca084bc9bfc0b1b1e /scene/gui
parentaaad24e6fb1528fc6c773c0225ed9500c3fdd2bb (diff)
Fix a crash when running a game with Controls with a tools build
Regression from #3997 TOOLS_ENABLED is defined, even when running from editor, but EDITOR_DEF SEGFAULTs
Diffstat (limited to 'scene/gui')
-rw-r--r--scene/gui/control.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/scene/gui/control.cpp b/scene/gui/control.cpp
index 0364f73275..d7befd6e11 100644
--- a/scene/gui/control.cpp
+++ b/scene/gui/control.cpp
@@ -1175,7 +1175,12 @@ void Control::set_anchor(Margin p_margin,AnchorType p_anchor, bool p_keep_margin
void Control::_set_anchor(Margin p_margin,AnchorType p_anchor) {
#ifdef TOOLS_ENABLED
- set_anchor(p_margin, p_anchor, EDITOR_DEF("2d_editor/keep_margins_when_changing_anchors", false));
+ SceneTree *st=OS::get_singleton()->get_main_loop()->cast_to<SceneTree>();
+ if (st && st->is_editor_hint()) {
+ set_anchor(p_margin, p_anchor, EDITOR_DEF("2d_editor/keep_margins_when_changing_anchors", false));
+ } else {
+ set_anchor(p_margin, p_anchor);
+ }
#else
set_anchor(p_margin, p_anchor);
#endif