87d73faa66
Storing script references to pointer only in result.script_type could lead to losing the last reference, causing further conversions from Script* to Ref<Script> to fail. Now result.script_type_ref is always set first, and then cleared in the specific case of the script being the owner, to avoid cyclic reference issues.