diff options
Diffstat (limited to 'core')
-rw-r--r-- | core/image.cpp | 3 | ||||
-rw-r--r-- | core/input_map.cpp | 8 | ||||
-rw-r--r-- | core/input_map.h | 1 | ||||
-rw-r--r-- | core/variant.h | 1 |
4 files changed, 12 insertions, 1 deletions
diff --git a/core/image.cpp b/core/image.cpp index 58f49d69e6..8cd2562bcb 100644 --- a/core/image.cpp +++ b/core/image.cpp @@ -1161,6 +1161,9 @@ PoolVector<uint8_t> Image::get_data() const { void Image::create(int p_width, int p_height, bool p_use_mipmaps, Format p_format) { + ERR_FAIL_INDEX(p_width - 1, MAX_WIDTH); + ERR_FAIL_INDEX(p_height - 1, MAX_HEIGHT); + int mm = 0; int size = _get_dst_image_size(p_width, p_height, p_format, mm, p_use_mipmaps ? -1 : 0); data.resize(size); diff --git a/core/input_map.cpp b/core/input_map.cpp index 67c0e4eb04..d33f40cbcf 100644 --- a/core/input_map.cpp +++ b/core/input_map.cpp @@ -48,6 +48,7 @@ void InputMap::_bind_methods() { ClassDB::bind_method(D_METHOD("action_add_event", "action", "event"), &InputMap::action_add_event); ClassDB::bind_method(D_METHOD("action_has_event", "action", "event"), &InputMap::action_has_event); ClassDB::bind_method(D_METHOD("action_erase_event", "action", "event"), &InputMap::action_erase_event); + ClassDB::bind_method(D_METHOD("action_erase_events", "action"), &InputMap::action_erase_events); ClassDB::bind_method(D_METHOD("get_action_list", "action"), &InputMap::_get_action_list); ClassDB::bind_method(D_METHOD("event_is_action", "event", "action"), &InputMap::event_is_action); ClassDB::bind_method(D_METHOD("load_from_globals"), &InputMap::load_from_globals); @@ -155,6 +156,13 @@ void InputMap::action_erase_event(const StringName &p_action, const Ref<InputEve input_map[p_action].inputs.erase(E); } +void InputMap::action_erase_events(const StringName &p_action) { + + ERR_FAIL_COND(!input_map.has(p_action)); + + input_map[p_action].inputs.clear(); +} + Array InputMap::_get_action_list(const StringName &p_action) { Array ret; diff --git a/core/input_map.h b/core/input_map.h index f497a2b86e..bdec75c65b 100644 --- a/core/input_map.h +++ b/core/input_map.h @@ -75,6 +75,7 @@ public: void action_add_event(const StringName &p_action, const Ref<InputEvent> &p_event); bool action_has_event(const StringName &p_action, const Ref<InputEvent> &p_event); void action_erase_event(const StringName &p_action, const Ref<InputEvent> &p_event); + void action_erase_events(const StringName &p_action); const List<Ref<InputEvent> > *get_action_list(const StringName &p_action); bool event_is_action(const Ref<InputEvent> &p_event, const StringName &p_action) const; diff --git a/core/variant.h b/core/variant.h index 2cdb5c9ab6..f227e4bfdb 100644 --- a/core/variant.h +++ b/core/variant.h @@ -140,7 +140,6 @@ private: ::AABB *_aabb; Basis *_basis; Transform *_transform; - RefPtr *_resource; void *_ptr; //generic pointer uint8_t _mem[sizeof(ObjData) > (sizeof(real_t) * 4) ? sizeof(ObjData) : (sizeof(real_t) * 4)]; } _data; |