Skip to content

Commit b2c79f9

Browse files
Bale001Herschel
authored andcommitted
avm2: Make resolve_parameters throw an AVM error
1 parent f8ea7ac commit b2c79f9

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

core/src/avm2/activation.rs

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ use crate::avm2::class::Class;
55
use crate::avm2::domain::Domain;
66
use crate::avm2::e4x::{escape_attribute_value, escape_element_value};
77
use crate::avm2::error::{
8-
make_null_or_undefined_error, make_reference_error, type_error, ReferenceErrorCode,
8+
argument_error, make_null_or_undefined_error, make_reference_error, type_error,
9+
ReferenceErrorCode,
910
};
1011
use crate::avm2::method::{BytecodeMethod, Method, ParamConfig};
1112
use crate::avm2::object::{
@@ -345,11 +346,14 @@ impl<'a, 'gc> Activation<'a, 'gc> {
345346
} else if param_config.param_type_name.is_any_name() {
346347
return Ok(Value::Undefined);
347348
} else {
348-
return Err(format!(
349-
"Param {} (index {index}) was missing when calling {method_name}",
350-
param_config.param_name
351-
)
352-
.into());
349+
return Err(Error::AvmError(argument_error(
350+
self,
351+
&format!(
352+
"Error #1063: Argument count mismatch on {} on index {}.",
353+
method_name, index
354+
),
355+
1063,
356+
)?));
353357
};
354358

355359
arg.coerce_to_type_name(self, &param_config.param_type_name)

0 commit comments

Comments
 (0)