Module: wine Branch: master Commit: aad758921c2efc6442fc6dfc3836b3a27658527e URL: http://source.winehq.org/git/wine.git/?a=commit;h=aad758921c2efc6442fc6dfc38...
Author: Jacek Caban jacek@codeweavers.com Date: Thu Sep 22 14:23:25 2011 +0200
vbscript: Added interp_val implementation.
---
dlls/vbscript/interp.c | 20 ++++++++++++++++++-- 1 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/dlls/vbscript/interp.c b/dlls/vbscript/interp.c index 1327c17..5e41845 100644 --- a/dlls/vbscript/interp.c +++ b/dlls/vbscript/interp.c @@ -684,8 +684,24 @@ static HRESULT interp_const(exec_ctx_t *ctx)
static HRESULT interp_val(exec_ctx_t *ctx) { - FIXME("\n"); - return E_NOTIMPL; + variant_val_t val; + VARIANT v; + HRESULT hres; + + TRACE("\n"); + + hres = stack_pop_val(ctx, &val); + if(FAILED(hres)) + return hres; + + if(!val.owned) { + V_VT(&v) = VT_EMPTY; + hres = VariantCopy(&v, val.v); + if(FAILED(hres)) + return hres; + } + + return stack_push(ctx, val.owned ? val.v : &v); }
static HRESULT interp_pop(exec_ctx_t *ctx)