Commit graph

8 commits

Author SHA1 Message Date
Pedro J. Estébanez
48da11372e Fix random crashes when using yield() 2017-03-21 02:54:46 +01:00
Rémi Verschelde
f8db8a3faa Bring that Whole New World to the Old Continent too
Applies the clang-format style to the 2.1 branch as done for master in
5dbf1809c6.
2017-03-19 00:36:26 +01:00
Hein-Pieter van Braam
38e86c8c24 Remove bounds check when resuming from yield.
The code would get a pointer to the beginning of the call_args by using
operator[] at the stack Vector. This does bound checking. When there are
no call_args this bound check fails and the error mentioned in #7796
gets triggered.

This bound check is actually not necessary as call_args just gets set to
NULL and never dereferenced. This new code will just unconditionally set
the pointer to the place where the call_args are if there are any. There
is no NULL check for call_args anywhere so this is safe.

Fixes #7796

(cherry picked from commit e8611966de)
2017-03-18 20:09:45 +01:00
Bojidar Marinov
f25e9a08e1 Fix #5891 by not expecting the script instance to be a GDInstance
It could be a placeholder instance as well

(cherry picked from commit 76ea995228)
2016-08-08 18:14:44 +02:00
Juan Linietsky
36e754457f Warn instad of crashing when class instance is gone after yield. Closes #5247 , probably closes other yield related crashes 2016-06-29 21:06:16 -03:00
Juan Linietsky
5e816fd8c8 Property reporty base type when a function fails, fixes #4581 probably also closes other issues 2016-06-20 01:15:02 -03:00
Juan Linietsky
f860915ae0 Made many built-in gdscript functions return more descriptive errors, closes #5150 2016-06-11 19:43:38 -03:00
Juan Linietsky
df139f57b3 Some cleanup to GDScript
separated GDFunction (VM) from GDScript in two different files
2016-05-31 22:33:43 -03:00