Jacek Caban
2c21d0344c
jscript: Don't realloc interpreter stack.
...
We share the stack for all calls in script instance, so it no loner
makes sense.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 22:36:39 +02:00
Jacek Caban
0841b60b8d
jscript: Inline add_eval implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 22:36:39 +02:00
Jacek Caban
6de0a658f1
jscript: Throw proper exception in RegExp.prototype.toString when called on non-RegExp object.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:31:23 +02:00
Jacek Caban
f207ded345
jscript: Support context argument in Array.prototype.forEach.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:29:45 +02:00
Jacek Caban
6682290d17
jscript: Support ES5 Array.prototype.sort arguments handling.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:29:28 +02:00
Jeff Smith
fd8e83eab0
jscript/tests: Fix some function-to-string failure message typos.
...
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 22:54:26 +02:00
Jacek Caban
edd4316492
jscript: Support null this in Function.prototype.bind.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 21:51:40 +02:00
Jacek Caban
99929c0896
jscript: Clear SCRIPTITEM_CODEONLY flag on script re-initialization.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Jacek Caban
133918e69c
jscript: Lookup the identifier in the named item's disp before the global context.
...
Based on patch by Gabriel Ivăncescu.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Gabriel Ivăncescu
fa0ec37077
jscript/tests: Add more persistent named items tests.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Gabriel Ivăncescu
8baf4a2a55
jscript/tests: Add tests for persistent named items.
...
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>
2020-03-26 22:02:11 +01:00
Gabriel Ivăncescu
f2c4594505
jscript: Implement persistent named items.
...
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>
2020-03-26 22:02:09 +01:00
Gabriel Ivăncescu
70d8c011d2
jscript: Retrieve the item's dispatch in a helper function.
...
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>
2020-03-26 22:02:06 +01:00
Jeff Smith
d9a8485f00
jscript: Use wide-string literals in-place for object.
...
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 19:43:38 +01:00
Jacek Caban
2be65404d2
jscript: Simplify Object.prototype.toString implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-20 16:42:09 +01:00
Gabriel Ivăncescu
23bc78c199
jscript: Create separate script dispatches for each named item.
...
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>
2020-03-18 19:36:41 +01:00
Gabriel Ivăncescu
0cc48cfd87
jscript: Lookup and ref the named item's dispatch first, during interpretion.
...
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>
2020-03-18 19:36:39 +01:00
Gabriel Ivăncescu
b7ddcbbc18
jscript: Use the proper variable_obj for bytecodes with named items.
...
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>
2020-03-18 19:36:37 +01:00
Gabriel Ivăncescu
7ad740cd29
jscript: Get rid of the variable_obj parameter to exec_source.
...
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>
2020-03-17 20:27:13 +01:00
Jeff Smith
f2e4955d5a
jscript: Fix typo in Object_toString fixme message.
...
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 19:33:31 +01:00
Jeff Smith
dd678df789
jscript: Set return object's class to 'object' in Object.create.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48762
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 19:33:28 +01:00
Jeff Smith
79cde059ea
mshtml/tests: Add tests showing how toString has changed in IE9+.
...
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 19:33:25 +01:00
Gabriel Ivăncescu
c2402a92ae
jscript: Retrieve the proper 'this' object for bytecodes with named items.
...
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>
2020-03-12 21:18:18 +01:00
Gabriel Ivăncescu
5b28c43dd4
jscript: Don't lookup global members for bytecodes with a named item.
...
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>
2020-03-11 10:04:00 +01:00
Gabriel Ivăncescu
b526077189
jscript/tests: Add test for function constructor in named item context.
...
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>
2020-03-09 22:16:30 +01:00
Gabriel Ivăncescu
335e0073c5
jscript: Retrieve the proper script dispatch from the named item in GetScriptDispatch.
...
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>
2020-03-09 22:16:30 +01:00
Gabriel Ivăncescu
c2a5aa7d37
jscript: Add stub implementation of separate script dispatches for named items.
...
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>
2020-03-09 22:16:30 +01:00
Gabriel Ivăncescu
f6201b4b11
jscript: Lookup the named item and keep a ref to it from the associated bytecode.
...
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>
2020-03-09 22:16:30 +01:00
Gabriel Ivăncescu
acb076c820
jscript: Lookup host global object on demand instead of storing it in script context.
...
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>
2020-03-06 17:54:31 +01:00
Gabriel Ivăncescu
fcba99c52e
jscript: Use NULL in frame->this_obj for the global code object.
...
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>
2020-03-06 17:54:28 +01:00
Gabriel Ivăncescu
eb80cc0f4a
jscript/tests: Add tests for named items.
...
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>
2020-03-05 19:50:15 +01:00
Gabriel Ivăncescu
e560489e50
jscript: Use struct list for named items.
...
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>
2020-03-05 19:50:13 +01:00
Gabriel Ivăncescu
3d23f095bf
jscript: Reference-count the named items.
...
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>
2020-02-28 19:37:38 +01:00
Gabriel Ivăncescu
9576ff7048
jscript: Preserve the 'enter_notified' field when an error occurs.
...
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>
2020-02-21 00:55:44 +01:00
Gabriel Ivăncescu
f32a729032
jscript: Implement the SCRIPTITEM_CODEONLY flag.
...
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>
2020-02-21 00:55:44 +01:00
Gabriel Ivăncescu
0242ae52e6
jscript: Lookup the named item using a helper function.
...
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>
2020-02-21 00:55:44 +01:00
Gabriel Ivăncescu
f6a4dda977
jscript: Move the named_item_t definition.
...
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>
2020-02-21 00:55:44 +01:00
Gabriel Ivăncescu
3c517f502b
jscript: Move the clear_script_queue up to SCRIPTSTATE_INITIALIZED.
...
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>
2020-02-21 00:55:44 +01:00
Gabriel Ivăncescu
522340aeb3
jscript: Initialize the script context in SetScriptSite.
...
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>
2020-02-21 00:55:44 +01:00
Jacek Caban
150b7391b8
jscript: Add GetSourceLineText implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:27 +01:00
Jacek Caban
348eef2e02
jscript: Add GetSourcePosition implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:04 +01:00
Jacek Caban
ed3e5404dd
jscript: Return error source and description from GetExceptionInfo.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:04 +01:00
Jacek Caban
ed22d71fd2
jscript: Propagate compiler error location.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:04 +01:00
Jacek Caban
27e4881c68
jscript: Propagate parser error location.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:04 +01:00
Jacek Caban
bfb2e5d959
jscript: Delay error object creation for builtin errors with message string until it's needed.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:04 +01:00
Jacek Caban
bcba07229a
jscript: Support propagating error message.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:03 +01:00
Jacek Caban
0f4d4f7184
jscript: Store error location in jsexcept_t.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:03 +01:00
Jacek Caban
83fa76c25e
jscript: Propagate Invoke error code using jsexcept_t.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:03 +01:00
Jacek Caban
8b836797e2
jscript: Directly return error code instead of using throw_type_error where possible.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:25:12 +01:00
Jacek Caban
b6e91906d3
jscript: Directly return error code instead of using throw_type_error in date.c.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:25:09 +01:00
Jacek Caban
df70647b00
jscript: Directly return error code instead of using throw_syntax_error.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:25:07 +01:00
Jacek Caban
2224736967
jscript: Directly return error code instead of using throw_uri_error.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:25:05 +01:00
Jacek Caban
0167f4a7dd
jscript: Directly return error code instead of using throw_regexp_error.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:25:03 +01:00
Jacek Caban
c372e79e25
jscript: Directly return error code instead of using throw_reference_error.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:25:00 +01:00
Jacek Caban
b67c957f39
jscript: Directly return error code instead of using throw_range_error.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:24:58 +01:00
Jacek Caban
1d487027a0
jscript: Directly return error code instead of using throw_generic_error.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:24:55 +01:00
Jacek Caban
940b02584e
jscript: Factor out format_error_message implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:24:53 +01:00
Jacek Caban
f6c5da47f7
jscript: Suport generic error object for exception with no associated JavaScript exception value.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-02 16:24:51 +01:00
Jacek Caban
7548238297
jscript: Add IActiveScriptError implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 16:22:33 +01:00
Jacek Caban
33984c390d
jscript: Use enter_script and leave_script to call script site notifications.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 16:22:33 +01:00
Jacek Caban
9855c248f8
jscript: Store error code in jsexcept_t.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 16:22:33 +01:00
Jacek Caban
3c9b7011ff
jscript: Store separated flag indicating if current exception value is valid.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 15:58:42 +01:00
Jacek Caban
63683b42f7
jscript: Use separated jsexcept_t instance for each external call.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 15:58:40 +01:00
Jacek Caban
274503c839
jscript: Support DISP_E_EXCEPTION InvokeEx result.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 15:58:38 +01:00
Jacek Caban
ba500a6a9e
jscript: Store source context and starting line in bytecode_t.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 15:58:36 +01:00
Jacek Caban
614ea7e624
jscript: Use internal jsdisp calls only within the same script context.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 15:58:34 +01:00
Jacek Caban
9a9a1821a3
jscript/tests: Add more script enter notification tests.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-24 21:24:01 +01:00
Jacek Caban
f58420b4ad
jscript/tests: Add more error reporting tests.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-24 21:23:58 +01:00
Jacek Caban
78853e3853
jscript: Store source position in instr_t.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-24 21:23:56 +01:00
Jacek Caban
7828df17e2
jscript: Introduce jsstr_to_bstr helper.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-24 21:23:53 +01:00
Jacek Caban
152bd21d95
jscript: Store source location in statement_t.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 16:39:42 +01:00
Jacek Caban
84179c16f7
jscript: Always set parser error code on error.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 16:39:37 +01:00
Jacek Caban
0fb086d573
jscript: Use parser location to calculate function body string.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 16:39:33 +01:00
Jacek Caban
fc009bf882
jscript/tests: Use wide char string literals in caller.c.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-15 22:03:36 +01:00
Jacek Caban
740bcc4bd7
jscript/tests: Use wide char string literals in activex.c.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-15 22:03:36 +01:00
Jacek Caban
c2f94b8488
jscript/tests: Use wide char strings in a few more places.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-14 17:29:33 +01:00
Jacek Caban
1670e6e46a
jscript/tests: Use wide char string literals instead of strcmp_wa.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-14 17:29:31 +01:00
Jacek Caban
0c0c5607f8
jscript/tests: Use wide char string literals instead of a2bstr.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-14 17:29:29 +01:00
Jacek Caban
363301a897
jscript/tests: Use wide char string literals instead of parse_script_a.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-14 17:29:27 +01:00
Jacek Caban
2a6119814a
jscript/tests: Use wide char string literals instead of parse_htmlscript_a.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-14 17:29:25 +01:00
Jacek Caban
3fc0c96512
jscript/tests: Use wide char string literals instead of parse_script_with_error_a.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-14 17:29:21 +01:00
Nikolay Sivov
aa3eb3015f
jscript/tests: Add missing checks for Close() calls (Coverity).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-07 21:51:20 +01:00
Jacek Caban
5bcc65d330
jscript/tests: Allow GetTypeInfo calls.
...
It's called by some win10 versions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-16 21:26:04 +01:00
Gabriel Ivăncescu
a416b0380e
jscript/tests: Add more tests for the script TypeInfo.
...
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-12-13 21:02:01 +01:00
Gabriel Ivăncescu
691faf0eae
jscript: Implement ScriptTypeInfo_GetMops.
...
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-12-13 21:02:01 +01:00
Gabriel Ivăncescu
0dc32852cb
jscript: Implement ScriptTypeInfo_CreateInstance.
...
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-12-13 21:02:00 +01:00
Gabriel Ivăncescu
26c7b39407
jscript: Implement ScriptTypeInfo_AddressOfMember.
...
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-12-13 21:02:00 +01:00
Gabriel Ivăncescu
dff51ec933
jscript: Implement ScriptTypeInfo_GetDllEntry.
...
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-12-13 21:02:00 +01:00
Gabriel Ivăncescu
4a38774b53
jscript: Implement ScriptTypeInfo_GetDocumentation.
...
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-12-13 21:02:00 +01:00
Gabriel Ivăncescu
35521e9e07
jscript: Implement ScriptTypeInfo_Invoke.
...
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-12-13 21:02:00 +01:00
Gabriel Ivăncescu
d9a560b1ce
jscript: Implement ScriptTypeInfo_GetImplTypeFlags.
...
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-12-13 21:02:00 +01:00
Gabriel Ivăncescu
f6197e7454
jscript: Implement ScriptTypeInfo_GetRefTypeInfo.
...
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-12-13 21:02:00 +01:00
Gabriel Ivăncescu
2990bc3515
jscript: Implement ScriptTypeInfo_GetRefTypeOfImplType.
...
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-12-13 21:02:00 +01:00
Gabriel Ivăncescu
7be12525aa
jscript: Implement ScriptTypeInfo_GetNames.
...
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-12-13 21:01:59 +01:00
Gabriel Ivăncescu
cf7a432df5
jscript/tests: Add initial tests for the script TypeInfo.
...
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-12-12 23:17:05 +01:00
Gabriel Ivăncescu
2e3ebd64e7
jscript: Implement ScriptTypeComp_BindType.
...
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-12-12 23:17:05 +01:00
Gabriel Ivăncescu
245dabd813
jscript: Implement ScriptTypeComp_Bind.
...
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-12-12 23:17:05 +01:00
Gabriel Ivăncescu
6872cf1cfc
jscript: Implement ScriptTypeInfo_GetTypeComp.
...
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-12-12 23:17:05 +01:00
Gabriel Ivăncescu
a6ac60dcc3
jscript: Implement ScriptTypeInfo_GetIDsOfNames.
...
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-12-12 23:17:05 +01:00
Gabriel Ivăncescu
93cc9e557d
jscript: Implement ScriptTypeInfo_GetVarDesc.
...
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-12-12 23:17:05 +01:00
Gabriel Ivăncescu
a7b8503417
jscript: Implement ScriptTypeInfo_GetFuncDesc.
...
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-12-12 23:17:05 +01:00
Gabriel Ivăncescu
89c0b42fc6
jscript: Implement ScriptTypeInfo_GetTypeAttr.
...
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-12-12 23:17:05 +01:00
Gabriel Ivăncescu
94bd9ab8a9
jscript: Store the necessary function and variable info in the TypeInfo.
...
The TypeInfo is built when it is retrieved and frozen at that moment, even
if the script changes after that and more identifiers are added to it,
or existing ones deleted.
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-12-12 23:17:05 +01:00
Gabriel Ivăncescu
c70c10564a
jscript: Keep a pointer to the bytecode in function_code_t.
...
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-12-11 21:51:28 +01:00
Gabriel Ivăncescu
4277112af5
jscript: Add script TypeInfo stub.
...
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-12-10 22:15:05 +01:00
Francois Gouget
72a7d94586
jscript: Fix the spelling of a couple of comments.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 20:59:19 +01:00
Jacek Caban
cac0fedd33
jscript: Import to_int32 implementation from WebKit.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-05 23:36:23 +01:00
Alexandre Julliard
0d0b7a1451
jscript: Always check for errors in UTF8 conversions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-04 16:03:48 +01:00
Gabriel Ivăncescu
ad1860e31a
jscript: Trace the pstrItemName parameter.
...
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-11-22 13:31:05 +01:00
Gabriel Ivăncescu
a4db4606e1
jscript: Fix a copy-paste mistake.
...
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-11-22 13:31:02 +01:00
Jacek Caban
f34cecbae2
jscript: Treat only ASCII digits as digits.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-08 23:38:07 +01:00
Jacek Caban
f51a80f4ac
jscript/tests: Use wchar string literals instead of a2bstr helper.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-08 17:52:04 +01:00
Gabriel Ivăncescu
c01b4bdebe
jscript/tests: Add tests for pending and executed code persistence.
...
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-11-07 19:49:08 +01:00
Gabriel Ivăncescu
af245b027b
jscript/tests: Use integers instead of booleans for counting call expectations.
...
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-11-07 19:49:06 +01:00
Gabriel Ivăncescu
a42666f590
jscript: Implement script persistence.
...
Persistent code has to be re-executed if the script is uninitialized and
then reinitialized and restarted.
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-11-07 19:49:04 +01:00
Gabriel Ivăncescu
5e4f0f4086
jscript: Use standard list for the queued code.
...
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-11-07 19:49:01 +01:00
Gabriel Ivăncescu
d8e8d1639f
jscript: Also clear the thread_id if the script state is set to Closed.
...
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-11-06 21:59:54 +01:00
Gabriel Ivăncescu
15fce35b59
jscript: Set the DISPID to DISPID_UNKNOWN if unknown.
...
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-11-06 21:59:54 +01:00
Jacek Caban
a20555ea5f
jscript: Use _ltow_s instead of int_to_string.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-31 19:25:28 +01:00
Francois Gouget
a22153005d
jscript/tests: Fix the spelling of a couple of jscript ok() messages.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:17 +02:00
Francois Gouget
a4a1ba5a22
jscript/tests: Fix the spelling and slightly reword an ok() message.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:17 +02:00
Jacek Caban
78beca7887
jscript: Use wide-char literals in lexer.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-16 22:58:41 +02:00
Isira Seneviratne
e0e57b140a
jscript: Replace '%pure-parser' with '%define api.pure'.
...
Signed-off-by: Isira Seneviratne <isirasen96@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 18:34:05 +02:00
Jacek Caban
7dab372271
jscript: Fix Object.defineProperty return value.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 14:18:49 +02:00
Jacek Caban
e458e70636
jscript: Support properties argument in Object.create.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 14:18:49 +02:00
Jacek Caban
34d4a9c751
jscript: Add Object.defineProperties implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 14:18:49 +02:00
Jacek Caban
9b4267b04d
jscript: Support enumerating own properties.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 14:18:49 +02:00
Jacek Caban
11a9b373e7
jscript: Implement Function.prototype.bind.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 17:41:01 +02:00
Jacek Caban
462ab9b42b
jscript: Move function name to NativeFunction.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 17:41:01 +02:00
Jacek Caban
cc22ee7f2e
jscript: Introduce InterpretedFunction struct.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 17:41:01 +02:00
Jacek Caban
2204c06909
jscript: Move value_proc to BuiltinFunction struct.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 17:41:01 +02:00
Jacek Caban
5c5397d1ef
jscript: Move function call implementation into vtbl.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 17:41:01 +02:00
Jacek Caban
4960f9e338
jscript: Move function destructor implementation into vtbl.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 17:41:01 +02:00
Jacek Caban
bad132acae
jscript: Introduce function vtbl and use it for toString implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 17:41:01 +02:00
Francois Gouget
bb62fe7f51
jscript: Add a trailing '\n' to a WARN() message.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-08 17:53:36 +02:00
Francois Gouget
0479b6b3fd
jscript: A spelling fix in a comment.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-08 17:53:36 +02:00
Francois Gouget
326fcdf967
jscript/tests: A spelling fix in an ok() message.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-08 17:53:36 +02:00
Jacek Caban
febfcdae40
jscript: Add support for parametrized compound assignments.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-08 17:53:36 +02:00
Jacek Caban
9dd50eae06
jscript: Allow 0x strings with explicit radix 16 in parseInt.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-08 17:53:36 +02:00
Jacek Caban
58dd9c2b99
jscript: Support VT_UI1 and VT_I1 types.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-08 17:53:36 +02:00
Alexandre Julliard
784b3f611a
jscript: Consistently use wcscmp() instead of lstrcmpW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-13 14:49:04 +02:00
Alexandre Julliard
29ea8b42db
jscript: Build with msvcrt.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-06 11:15:24 +02:00
Jacek Caban
aac2110e8f
jscript: Allow calling eval function from external code.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-20 22:09:42 +02:00
Andreas Maier
f010569c3d
jscript/tests: Add more Enumerator tests.
...
Signed-off-by: Andreas Maier <staubim@quantentunnel.de>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-17 20:02:50 +02:00
Andreas Maier
a015c62643
jscript: Implement Enumerator object.
...
Signed-off-by: Andreas Maier <staubim@quantentunnel.de>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-17 20:02:47 +02:00
Francois Gouget
cfcb7b7473
jscript: Make the Enumerator_props functions static.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Jacek Caban<jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-10 16:04:25 +02:00
Jacek Caban
88d2576ae7
jscript: Don't skip empty strings in String.prototype.split in ES5 mode.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-22 19:48:26 +02:00
Jacek Caban
b48cc9614e
jscript: Fix handling empty string regexp matches in String.prototype.split implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-22 19:48:26 +02:00
Andreas Maier
6ab3ed7ce4
jscript_test: Simple test for Enumerator().
...
Signed-off-by: Andreas Maier <staubim@quantentunnel.de>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-20 00:17:43 +02:00
Andreas Maier
6630bc4096
jscript: Stub Enumerator object.
...
Enumerator is an MS extension.
It's needed to succeed VyChat219.msi installation.
Signed-off-by: Andreas Maier <staubim@quantentunnel.de>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-20 00:17:37 +02:00