From f8a4bacfec67257dfd66486cd98e8d6b1329cbed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=88=B1=E7=89=B9=E6=AF=8F=E7=BE=8A=E9=98=9F?= Date: Wed, 12 Aug 2026 17:55:58 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20accessor=20getter=20=E8=B0=83=E7=94=A8?= =?UTF-8?q?=E5=BC=82=E5=B8=B8=E7=BB=8F=20raise=5Fcall=5Ferror=20=E8=B5=B0?= =?UTF-8?q?=20unwind=EF=BC=88JS=20try/catch=20=E5=8F=AF=E6=8D=95=E8=8E=B7?= =?UTF-8?q?=EF=BC=8C=E6=AD=A4=E5=89=8D=E9=80=83=E9=80=B8=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- crates/oxide_vm/src/vm_props.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/crates/oxide_vm/src/vm_props.rs b/crates/oxide_vm/src/vm_props.rs index a3e1d8c..54b301e 100644 --- a/crates/oxide_vm/src/vm_props.rs +++ b/crates/oxide_vm/src/vm_props.rs @@ -46,7 +46,10 @@ impl Vm { } Ok(self.regs[tr as usize]) } else { - self.call_function_sync(meta.get, receiver, &[]) + match self.call_function_sync(meta.get, receiver, &[]) { + Ok(v) => Ok(v), + Err(err) => Ok(self.raise_call_error(&err)?), + } }; } } @@ -72,7 +75,10 @@ impl Vm { } Ok(self.regs[tr as usize]) } else { - self.call_function_sync(meta.get, receiver, &[]) + match self.call_function_sync(meta.get, receiver, &[]) { + Ok(v) => Ok(v), + Err(err) => Ok(self.raise_call_error(&err)?), + } }; } }