diff options
author | qarmin <mikrutrafal54@gmail.com> | 2019-10-11 09:13:30 +0200 |
---|---|---|
committer | qarmin <mikrutrafal54@gmail.com> | 2019-10-11 09:13:30 +0200 |
commit | c62da553cbc3581e68e9526474f46100afd2c87a (patch) | |
tree | 0bca1a78e470494fc0450a78d9293b90e3bbd91e | |
parent | 01481127301b7defadb69cd712f82ad7f840340e (diff) |
Don't use to_utf8() and to_ascii() on empty String
-rw-r--r-- | core/variant_call.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/core/variant_call.cpp b/core/variant_call.cpp index 1b5ca9d3e5..a1b75266ff 100644 --- a/core/variant_call.cpp +++ b/core/variant_call.cpp @@ -316,6 +316,10 @@ struct _VariantCall { static void _call_String_to_ascii(Variant &r_ret, Variant &p_self, const Variant **p_args) { String *s = reinterpret_cast<String *>(p_self._data._mem); + if (s->empty()) { + r_ret = PoolByteArray(); + return; + } CharString charstr = s->ascii(); PoolByteArray retval; @@ -331,6 +335,10 @@ struct _VariantCall { static void _call_String_to_utf8(Variant &r_ret, Variant &p_self, const Variant **p_args) { String *s = reinterpret_cast<String *>(p_self._data._mem); + if (s->empty()) { + r_ret = PoolByteArray(); + return; + } CharString charstr = s->utf8(); PoolByteArray retval; |