Fix uninitialized data reads in Input

Found by Valgrind.

(cherry picked from commit d60eae3dbc)
This commit is contained in:
lawnjelly 2022-09-06 14:21:01 +01:00 committed by Rémi Verschelde
parent 70b55faa38
commit c7d9c3b21f
2 changed files with 5 additions and 5 deletions

View File

@ -49,25 +49,25 @@ bool InputEvent::is_action(const StringName &p_action, bool p_exact_match) const
}
bool InputEvent::is_action_pressed(const StringName &p_action, bool p_allow_echo, bool p_exact_match) const {
bool pressed;
bool pressed = false;
bool valid = InputMap::get_singleton()->event_get_action_status(Ref<InputEvent>((InputEvent *)this), p_action, p_exact_match, &pressed, nullptr, nullptr);
return valid && pressed && (p_allow_echo || !is_echo());
}
bool InputEvent::is_action_released(const StringName &p_action, bool p_exact_match) const {
bool pressed;
bool pressed = false;
bool valid = InputMap::get_singleton()->event_get_action_status(Ref<InputEvent>((InputEvent *)this), p_action, p_exact_match, &pressed, nullptr, nullptr);
return valid && !pressed;
}
float InputEvent::get_action_strength(const StringName &p_action, bool p_exact_match) const {
float strength;
float strength = 0.0f;
bool valid = InputMap::get_singleton()->event_get_action_status(Ref<InputEvent>((InputEvent *)this), p_action, p_exact_match, nullptr, &strength, nullptr);
return valid ? strength : 0.0f;
}
float InputEvent::get_action_raw_strength(const StringName &p_action, bool p_exact_match) const {
float raw_strength;
float raw_strength = 0.0f;
bool valid = InputMap::get_singleton()->event_get_action_status(Ref<InputEvent>((InputEvent *)this), p_action, p_exact_match, nullptr, nullptr, &raw_strength);
return valid ? raw_strength : 0.0f;
}

View File

@ -2405,7 +2405,7 @@ void Tree::_gui_input(Ref<InputEvent> p_event) {
TreeItem *old_it = cache.hover_item;
int old_col = cache.hover_cell;
int col, h, section;
int col = 0, h = 0, section = 0;
TreeItem *it = _find_item_at_pos(root, mpos, col, h, section);
if (drop_mode_flags) {