156 Commits

Author SHA1 Message Date
Jacek Caban
9e3c806e53 vbscript: Fix array reference handling in do_icall.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-23 18:53:33 +02:00
Jacek Caban
410154e280 vbscript: Improve exec_script debug traces.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-23 18:53:31 +02:00
Jacek Caban
79f39c2a8c vbscript: Fix NULL IDispatch handling in get_disp_value.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-18 18:05:32 +02:00
Jacek Caban
087adea7dc vbscript: Use global object property to expose Err object.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-18 18:05:32 +02:00
Jacek Caban
d061ba0e35 vbscript: Use separated IDispatch implementation for objects exposing builtin functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 22:48:26 +02:00
Jacek Caban
4c3e2f2b4f vbscript: Introduce get_builtin_id.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 22:48:19 +02:00
Jacek Caban
681cee4ed6 vbscript: Call OnScriptError for runtime errors.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 22:11:20 +02:00
Jacek Caban
e050ff5eb8 vbscript: Move OnEnterScript/OnLeaveScript calls to exec_script.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 22:11:20 +02:00
Jacek Caban
707f7eb2a1 vbscript: Add err.source implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 22:58:07 +02:00
Jacek Caban
0d9f024d6a vbscript: Add err.description implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 22:58:07 +02:00
Jacek Caban
8277c24806 vbscript: Store entire EXCEPINFO in script context.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 22:58:07 +02:00
Gabriel Ivăncescu
8037b13078 vbscript: Add support for the SCRIPTTEXT_ISEXPRESSION flag in ParseScriptText.
To simplify the amount of special cases both in ParseScriptText and
ParseProcedureText, add a new pseudo statement and opcode to return the
expression and value at the top of the stack, respectively. Script texts
that have this flag will be parsed specially as a single expression with
such a statement at the end.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-17 18:49:47 +02:00
Jacek Caban
9b18772c0b vbscript: Rename OP_long expression to OP_int.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-22 21:56:15 +02:00
Jacek Caban
d01d629420 vbscript: Handle long/short distinction in interpreter.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-22 21:56:12 +02:00
Alexandre Julliard
3911e6696a vbscript: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-25 08:46:31 +02:00
Jacek Caban
7e10941083 vbscript: Added support for script context in ParseScriptText.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:35:11 +01:00
Jacek Caban
aa5b68ac40 vbscript: Split named item lookup into a helper function.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:35:11 +01:00
Piotr Caban
f595523413 vbscript: Don't leak IEnumVARIANT in interp_enumnext.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 20:22:09 +01:00
Piotr Caban
a85d12af44 vbscript: Add support for "for each" on arrays.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 20:21:52 +01:00
Piotr Caban
0b5473c166 vbscript: Reimplement array_access function.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 14:23:25 +02:00
Jacek Caban
c46dbfb131 vbscript: Call GetItemInfo() with original item name.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-07 16:59:55 +01:00
Jacek Caban
0de7b95c37 vbscript: Added a helper for getting default IDispatch value. 2015-03-06 00:02:08 +09:00
Jacek Caban
bd42594da9 vbscript: Leave converting object to trivial values up to calee. 2015-03-03 23:16:52 +09:00
Jacek Caban
62bc8aeb0f vbscript: Leave assigning value up to add_dynamic_var callers. 2015-03-03 23:16:51 +09:00
Jacek Caban
571b09ce42 vbscript: Pass DISPATCH_PROPERTYPUTREF flag to InvokeEx when apropriate. 2015-03-03 23:16:48 +09:00
Jacek Caban
3873c93891 vbscript: Allow omitting optional function parameters in call expressions. 2015-01-28 21:30:10 +01:00
Jacek Caban
e73bd253ea wscript: Added support for calling object by DISPID_VALUE in do_icall. 2014-07-21 18:44:22 +02:00
Jacek Caban
be583662d4 vbscript: Reset error number on error mode change. 2014-06-16 09:28:16 +02:00
Jacek Caban
ccf1567555 vbscript: Map some known error codes to vbscript errors.
Special thanks to Eric Lippert for the list of such errors.
2014-03-27 14:53:04 +01:00
Jacek Caban
f6d6238e93 vbscript: Store required stack offset before doing jump. 2014-03-25 19:01:34 +01:00
Jacek Caban
fc0ef22a44 vbscript: Added support for exception unwinding. 2014-03-21 16:51:23 +01:00
Jacek Caban
f123556f07 vbscript: Allow creating RegExp object by new expression. 2014-03-18 16:10:38 +01:00
Jacek Caban
86ee4e959a vbscript: Added support for VARIANT references to interp_newenum. 2014-03-10 10:41:52 +01:00
Jacek Caban
6ad651bf77 vbscipt: Use VariantCopyInd in exec_script. 2014-03-10 10:41:42 +01:00
Jacek Caban
70628f80c0 vbscript: Directly access 'this' object properties in interpreter. 2014-03-07 14:34:47 +01:00
Nikolay Sivov
9b037d559e vbscript: Support VT_BYREF|VT_DISPATCH as a DISPID_NEWENUM source. 2014-02-05 13:49:27 +01:00
Jacek Caban
1c1a261122 vbscript: Don't allow OP_dim on already initialized arrays. 2013-11-25 15:15:52 +01:00
Francois Gouget
73bf5f1ae6 vbscript: Fix a trailing FIXME() '\n'. 2013-11-14 10:37:26 +01:00
Jacek Caban
7917b67a18 vbscript: Added support for setting array elements. 2013-11-13 18:31:07 +01:00
Jacek Caban
79c55e1255 vbscript: Added support for getting array elements. 2013-11-13 18:31:04 +01:00
Jacek Caban
853c6c4eea vbscript: Added interp_dim implementation. 2013-11-13 18:30:58 +01:00
Jacek Caban
fc713bfc12 vbscript: Added bytecode support for arrays. 2013-11-13 18:30:55 +01:00
Piotr Caban
fb29bf7d2f vbscript: Rename vbsheap to heap_pool. 2013-02-15 16:26:30 +01:00
Andrew Eikum
39d3453209 vbscript: Undefined variables resolve as EMPTY without Option Explicit. 2012-10-10 20:34:10 +02:00
Jacek Caban
81766a740e vbscript: Added support for VT_NULL in stack_pop_bool. 2012-09-10 12:15:40 +02:00
Jacek Caban
167174d88b vbscript: Added support for comparing to null. 2012-09-10 12:15:38 +02:00
Jacek Caban
374280aa04 vbscript: Added interp_case implementation. 2012-07-20 21:30:04 +02:00
Jacek Caban
f17aaf8da7 vbscript: Added compiler support for select case statement. 2012-07-20 21:30:04 +02:00
Jacek Caban
8de35a4514 vbscript: Fixed 'exit do' statements crossing for in loops. 2012-07-09 09:58:49 -04:00
Jacek Caban
44266442ed vbscript: Added interpreter and compiler support for for each loops. 2012-07-03 17:11:57 +02:00