From f23b56e3ecc5de8fc823dfa1c63f71d51ea12993 Mon Sep 17 00:00:00 2001 From: Karroffel Date: Tue, 23 May 2017 22:55:51 +0200 Subject: [GDNative] fixed some functions that returned references Those errors were introduced with #8821 (6fd217d). These functions need to return reference types, otherwise setting values on those containers does not work. --- modules/gdnative/godot/godot_array.cpp | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'modules/gdnative/godot/godot_array.cpp') diff --git a/modules/gdnative/godot/godot_array.cpp b/modules/gdnative/godot/godot_array.cpp index 65353c5b0f..bf2ef35972 100644 --- a/modules/gdnative/godot/godot_array.cpp +++ b/modules/gdnative/godot/godot_array.cpp @@ -139,13 +139,9 @@ void GDAPI godot_array_set(godot_array *p_arr, const godot_int p_idx, const godo a->operator[](p_idx) = *val; } -godot_variant GDAPI godot_array_get(const godot_array *p_arr, const godot_int p_idx) { - godot_variant raw_dest; - Variant *dest = (Variant *)&raw_dest; - memnew_placement(dest, Variant); - const Array *a = (const Array *)p_arr; - *dest = a->operator[](p_idx); - return raw_dest; +godot_variant GDAPI *godot_array_get(const godot_array *p_arr, const godot_int p_idx) { + Array *a = (Array *)p_arr; + return (godot_variant *)&a->operator[](p_idx); } void GDAPI godot_array_append(godot_array *p_arr, const godot_variant *p_value) { -- cgit v1.2.3