core: Allow NetStream script data to call any functions
This commit is contained in:
parent
dd0d4f7eea
commit
7c33932f53
|
@ -24,7 +24,6 @@ use gc_arena::{Collect, GcCell, MutationContext};
|
|||
use ruffle_render::bitmap::BitmapInfo;
|
||||
use ruffle_video::frame::EncodedFrame;
|
||||
use ruffle_video::VideoStreamHandle;
|
||||
use ruffle_wstr::WStr;
|
||||
use std::cmp::max;
|
||||
use std::io::Seek;
|
||||
use std::sync::{Arc, Mutex};
|
||||
|
@ -713,10 +712,7 @@ impl<'gc> NetStream<'gc> {
|
|||
) -> Result<(), Avm2Error<'gc>> {
|
||||
match avm_object {
|
||||
Some(AvmObject::Avm1(object)) => {
|
||||
match variable_name {
|
||||
b"onCuePoint" | b"onMetaData" => {
|
||||
let avm_string_name =
|
||||
AvmString::new_utf8_bytes(context.gc_context, variable_name);
|
||||
let avm_string_name = AvmString::new_utf8_bytes(context.gc_context, variable_name);
|
||||
|
||||
let root = context.stage.root_clip().expect("root");
|
||||
let mut activation = Avm1Activation::from_nothing(
|
||||
|
@ -734,29 +730,17 @@ impl<'gc> NetStream<'gc> {
|
|||
Avm1ExecutionReason::Special,
|
||||
) {
|
||||
tracing::error!(
|
||||
"Got error when dispatching AVM1 onCuePoint event from NetStream: {}",
|
||||
e
|
||||
"Got error when dispatching AVM1 {} script data handler from NetStream: {}",
|
||||
avm_string_name,
|
||||
e,
|
||||
);
|
||||
}
|
||||
}
|
||||
b"onXMPData" => {
|
||||
tracing::warn!("Stub: FLV stream data onXMPData for AVM1");
|
||||
}
|
||||
_ => {
|
||||
tracing::warn!(
|
||||
"Stub: FLV stream data {} for AVM1",
|
||||
WStr::from_units(variable_name)
|
||||
);
|
||||
}
|
||||
};
|
||||
}
|
||||
Some(AvmObject::Avm2(_object)) => {
|
||||
match variable_name {
|
||||
b"onCuePoint" | b"onMetaData" => {
|
||||
let mut activation = Avm2Activation::from_nothing(context.reborrow());
|
||||
let client_object = self.client().expect(
|
||||
"Client should be initialized if script data is being accessed",
|
||||
);
|
||||
let client_object = self
|
||||
.client()
|
||||
.expect("Client should be initialized if script data is being accessed");
|
||||
|
||||
let data_object = variable_data.to_avm2_value(&mut activation);
|
||||
|
||||
|
@ -766,14 +750,6 @@ impl<'gc> NetStream<'gc> {
|
|||
&mut activation,
|
||||
)?;
|
||||
}
|
||||
_ => {
|
||||
tracing::warn!(
|
||||
"Stub: FLV stream data {} for AVM2",
|
||||
WStr::from_units(variable_name)
|
||||
);
|
||||
}
|
||||
};
|
||||
}
|
||||
None => {}
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue