From 017cd563dc181fd7bcc465c65a549833086e5777 Mon Sep 17 00:00:00 2001 From: Mike Welsh Date: Fri, 16 Aug 2019 10:41:02 -0700 Subject: [PATCH] avm1: Implement ActionPush for constant pool vals --- core/src/avm1.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/core/src/avm1.rs b/core/src/avm1.rs index 893fc4d85..e5434057a 100644 --- a/core/src/avm1.rs +++ b/core/src/avm1.rs @@ -795,7 +795,14 @@ impl Avm1 { SwfValue::Double(v) => Value::Number(*v), SwfValue::Str(v) => Value::String(v.clone()), SwfValue::Register(_v) => unimplemented!(), - SwfValue::ConstantPool(_v) => unimplemented!(), + SwfValue::ConstantPool(i) => { + if let Some(value) = self.constant_pool.get(*i as usize) { + Value::String(value.clone()) + } else { + log::warn!("ActionPush: Constant pool index {} out of range (len = {})", i, self.constant_pool.len()); + Value::Undefined + } + } }; self.push(value); }