parent
78d97b060a
commit
e59820ac94
2 changed files with 14 additions and 1 deletions
|
@ -840,8 +840,13 @@ void GDFunctions::call(Function p_func,const Variant **p_args,int p_arg_count,Va
|
||||||
r_error.error=Variant::CallError::CALL_ERROR_INVALID_ARGUMENT;
|
r_error.error=Variant::CallError::CALL_ERROR_INVALID_ARGUMENT;
|
||||||
r_error.argument=0;
|
r_error.argument=0;
|
||||||
r_ret=Variant();
|
r_ret=Variant();
|
||||||
}
|
} else if(((String)(*p_args[0])).begins_with("/")) {
|
||||||
|
r_error.error=Variant::CallError::CALL_ERROR_INVALID_ARGUMENT;
|
||||||
|
r_error.argument=0;
|
||||||
|
r_ret=RTR("Paths cannot start with '/', absolute paths must start with \'res://\', \'user://\', or \'local://\'");
|
||||||
|
} else {
|
||||||
r_ret=ResourceLoader::load(*p_args[0]);
|
r_ret=ResourceLoader::load(*p_args[0]);
|
||||||
|
}
|
||||||
|
|
||||||
} break;
|
} break;
|
||||||
case INST2DICT: {
|
case INST2DICT: {
|
||||||
|
|
|
@ -307,6 +307,10 @@ GDParser::Node* GDParser::_parse_expression(Node *p_parent,bool p_static,bool p_
|
||||||
_set_error("expected string constant as 'preload' argument.");
|
_set_error("expected string constant as 'preload' argument.");
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
if (path.begins_with("/")) {
|
||||||
|
_set_error("Paths cannot start with '/', absolute paths must start with \'res://\', \'user://\', or \'local://\'");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
if (!path.is_abs_path() && base_path!="")
|
if (!path.is_abs_path() && base_path!="")
|
||||||
path=base_path+"/"+path;
|
path=base_path+"/"+path;
|
||||||
path = path.replace("///","//").simplify_path();
|
path = path.replace("///","//").simplify_path();
|
||||||
|
@ -2109,6 +2113,10 @@ void GDParser::_parse_extends(ClassNode *p_class) {
|
||||||
_set_error("'extends' constant must be a string.");
|
_set_error("'extends' constant must be a string.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (((String)(constant)).begins_with("/")) {
|
||||||
|
_set_error("Paths cannot start with '/', absolute paths must start with \'res://\', \'user://\', or \'local://\'");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
p_class->extends_file=constant;
|
p_class->extends_file=constant;
|
||||||
tokenizer->advance();
|
tokenizer->advance();
|
||||||
|
|
Loading…
Reference in a new issue