Browse Source

fixed a branch on uninitialised data in gui/tree

I don't think it was really causing any harm, but this makes things a
little more explicit and helps clean up valgrind output.
Ibrahn Sahir 7 years ago
parent
commit
fb32adfcf8
1 changed files with 14 additions and 5 deletions
  1. 14 5
      scene/gui/tree.cpp

+ 14 - 5
scene/gui/tree.cpp

@@ -2426,14 +2426,23 @@ void Tree::_gui_input(Ref<InputEvent> p_event) {
 				int col, h, section;
 				TreeItem *it = _find_item_at_pos(root, mpos, col, h, section);
 
-				if ((drop_mode_flags && it != drop_mode_over) || section != drop_mode_section) {
-					drop_mode_over = it;
-					drop_mode_section = section;
-					update();
+				if (drop_mode_flags) {
+					if (it != drop_mode_over) {
+						drop_mode_over = it;
+						update();
+					}
+					if (it && section != drop_mode_section) {
+						drop_mode_section = section;
+						update();
+					}
 				}
 
-				if (it != cache.hover_item || col != cache.hover_cell) {
+				if (it != cache.hover_item) {
 					cache.hover_item = it;
+					update();
+				}
+
+				if (it && col != cache.hover_cell) {
 					cache.hover_cell = col;
 					update();
 				}