Jacek Caban
23e4a530c5
jscript: Remove unused prop_get arguments.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-20 18:43:29 +02:00
Jacek Caban
d95a8b2bb4
jscript: Introduce Wine-specific extension allowing IE9+ JavaScript mode implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-01 19:27:23 +01:00
Jacek Caban
2f9c2186cc
jscript: Do not pass DISPATCH_JSCRIPT_CALLEREXECSSOURCE flag for calls across different script contexts.
...
Fixes regression in calls between different contexts. Spotted by Nikolay.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-12 16:00:08 +01:00
Jacek Caban
abba963006
jscript: Use exprval_t to represent property references passed on JS stack.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-02 16:18:04 -05:00
Jacek Caban
e641469f9f
jscript: Set output to undefined in jsval_copy on failure.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 11:59:34 +09:00
Jacek Caban
798ba715e3
jscript: Optimize iface_to_jsdisp by using vtbl comparison.
...
This is 14% win on SunSpider 0.9 benchmark.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-20 23:05:14 +09:00
Jacek Caban
be37b894a4
jscript: Use IDispatch* as iface_to_jsdisp argument type.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-20 23:04:53 +09:00
Jacek Caban
6a03b38f33
jscript: Use already running interpreter for eval() execution.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-30 11:54:44 +09:00
Jacek Caban
813609b843
jscript: Use already running interpreter for Function.apply() execution.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-30 11:54:40 +09:00
Jacek Caban
66632091bf
jscript: Use already running interpreter for execution of member source function.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-30 11:54:33 +09:00
Jacek Caban
1316403770
jscript: Pass 'this' as jsdisp_t to setters.
2015-02-06 22:20:36 +09:00
Jacek Caban
d541b525e4
jscript: Pass 'this' as jsdisp_t to getters.
2015-02-06 22:20:34 +09:00
Jacek Caban
b7fae52964
jscript: Use separated functions for implementing builtin call, get and set operation.
2015-02-06 00:28:35 +09:00
Jacek Caban
7e43408eaa
jscript: Use DISPATCH_PROPERTYPUTREF flag when setting a property to VT_DISPATCH.
2014-11-28 17:05:50 +01:00
Jacek Caban
02406d4fd4
jscript: Add DISPATCH_PROPERTYGET flag only for DISPATCH_METHOD call in disp_call_value.
...
Spotted by Qian Hong.
2014-09-16 21:00:30 +02:00
Jacek Caban
b11d47fc90
jscript: Use jsstr_flatten to access string buffer in dispex.c.
2013-03-26 12:16:01 +01:00
Jacek Caban
587d007d69
jscript: Use BSTR also for pure IDispatch call in disp_delete_name.
2013-03-11 17:01:47 +01:00
Jacek Caban
7726e01844
jscript: Don't pass 'this' argument to DISPID_VALUE of pure IDispatch interfaces.
2012-12-24 13:33:14 +01:00
Jacek Caban
f780ae0f86
jscript: Fixed deleting property by ID from IDispatchEx interface.
2012-12-17 20:31:19 +01:00
Jacek Caban
2d7a3bb482
jscript: Fixed deleting properties by name from IDispatchEx interface.
2012-12-17 20:31:18 +01:00
Jacek Caban
7202f1a32f
jscript: Fixed deleting properties of pure dispatch interface.
2012-12-17 20:31:18 +01:00
Jacek Caban
7f07bb9a7a
jscript: Fixed deleting nonexisting properties from member expression.
2012-12-17 20:31:16 +01:00
Jacek Caban
d9d8c8b716
jscript: Added support for DontDelete attribute and use it for arguments object.
2012-11-30 19:12:15 +01:00
Jacek Caban
466fae6444
jscript: Added disp_delete_name helper and use it in interp_delete.
2012-11-30 19:12:14 +01:00
Jacek Caban
e6fc8d9b0c
jscript: Added disp_delete helper and use it in interp_delete_ident.
2012-11-30 19:12:14 +01:00
Jacek Caban
6b56c65f8d
jscript: Alias arguments properties to real values.
2012-11-30 19:12:14 +01:00
Jacek Caban
ac41380b94
jscript: Fixed some Coverity issues.
2012-11-27 17:00:45 +01:00
Jacek Caban
74a83150ab
jscript: Fixed leak in disp_propget.
2012-11-09 16:42:47 +01:00
Jacek Caban
78652f7602
jscript: Added propertyIsEnumerable implementation.
2012-11-05 17:44:16 +01:00
Jacek Caban
57f7a6fa4e
jscript: Create non-enumerable properties in jsdisp_propput_const.
2012-11-05 17:44:15 +01:00
Jacek Caban
7491d480a9
jscript: Use prop_put in jsdisp_propput_dontenum.
2012-11-05 17:44:14 +01:00
Jacek Caban
12adc67782
jscript: Fixed some leaks (coverity).
2012-10-31 16:12:27 +01:00
Jacek Caban
79a30a4e0a
jscript: Optimize object refcount handling.
2012-10-26 13:59:08 +02:00
Jacek Caban
7f1e3300fe
jscript: Use custom string container instead of BSTR.
2012-10-11 18:53:04 +02:00
Jacek Caban
6f5475dd26
jscript: Store exception value in script_ctx_t instead of passing it everywhere.
2012-09-19 13:04:16 +02:00
Jacek Caban
9e7829828e
jscript: Don't assume that undefined variable is zeroed.
2012-09-17 18:30:20 +02:00
Jacek Caban
29f4194d74
jscript: Return BOOL instead of VARIANT_BOOL from jsdisp_is_own_prop.
2012-09-17 18:29:54 +02:00
Jacek Caban
c1eb4326a0
jscript: Always use jsval-based to_primitive.
2012-09-17 18:28:35 +02:00
Jacek Caban
80f7f3c246
jscript: Store jsdisp_t values as jsval_t instead of VARIANT.
2012-09-17 18:27:57 +02:00
Jacek Caban
16b2b019b8
jscript: Use jsval_t instead of VARIANT for stack values.
2012-09-17 18:27:42 +02:00
Jacek Caban
847aebdc87
jscript: Use jsval instead of VARIANT to pass arguments to builtin functions.
2012-09-17 18:27:36 +02:00
Jacek Caban
932b3dd088
jscript: Added new variable representation and use it for internal function return values.
2012-09-17 18:27:17 +02:00
Jacek Caban
7fec767864
jscript: Fixed argument conversion in disp_call_value when 'this' is specified.
2012-09-03 16:13:21 +02:00
Jacek Caban
10179c210e
jscript: Properly handle builtin properties in Object.prototype.hasOwnProperty implementation.
2012-07-23 19:53:48 +02:00
Jacek Caban
d0aa78c096
jscript: Don't set constructor property to each object instance, it belongs to their prototypes.
2012-07-16 16:29:57 +02:00
Jacek Caban
14138e6f09
jscript: Removed no longer needed arg_cnt and get_arg helpers.
2012-06-25 18:12:52 +02:00
Jacek Caban
f8383c3417
jscript: Don't use DISPPARAMS for internal arguments.
2012-06-25 18:12:51 +02:00
Jacek Caban
0307d73569
jscript: Don't use DISPPARAMS named args for internal parameter passing.
2012-06-25 18:12:51 +02:00
Jacek Caban
00b5ba5355
jscript: Moved DISPPARAMS conversion to InvokeEx.
2012-06-21 18:04:56 +02:00
Jacek Caban
1dd4cbc491
jscript: Pass jsthis internally without using DISPPARAMS.
2012-06-21 18:04:52 +02:00
Jacek Caban
17ff7829d3
jscript: Make Function object invocation a special case in IDispatchEx implementation.
2012-06-21 18:04:39 +02:00
Jacek Caban
c8a28a9671
jscript: Added support for VT_INT.
2012-05-04 18:08:33 +02:00
Jacek Caban
c9c8c6165e
jscript: Added support for VT_I2 in invoke_prop_func.
2012-05-01 15:28:22 +02:00
Jacek Caban
da125450da
jscript: Added support for VT_I2 in disp_call.
2012-05-01 15:28:18 +02:00
Jacek Caban
b6a1912392
jscript: Added support for VT_I2 in disp_propget.
2012-05-01 15:28:16 +02:00
Frédéric Delanoy
69f3d23045
jscript: Assorted spelling fixes.
2012-04-18 13:59:44 +02:00
Jacek Caban
0b0e34ab39
jscript: Addded parameterized property assignment support.
2012-04-17 19:19:03 +02:00
Jacek Caban
84ed86c431
jscript: Get rid of no longer needed caller argument from builtin_invoke_t.
2012-03-14 17:34:00 +01:00
Jacek Caban
29b9237c91
jscript: Removed no longer needed caller argument from jsdisp_get_idx.
2012-03-12 16:37:21 +01:00
Jacek Caban
0d9cc45406
jscript: Removed no longer needed caller argument from jsdisp_propget_name.
2012-03-12 16:37:21 +01:00
Jacek Caban
7d4ba8db63
jscript: Removed no longer needed caller argument from jsdisp_propput_idx.
2012-03-12 16:37:20 +01:00
Jacek Caban
12bc6e0cc7
jscript: Removed no longer needed caller argument from jsdisp_propput_name and jsdisp_propget.
2012-03-12 16:37:20 +01:00
Jacek Caban
a80dd7cb79
jscript: Removed no longer needed caller argument from jsdisp_call_name.
2012-03-12 16:37:19 +01:00
Jacek Caban
07be020a48
jscript: Removed no longer needed caller argument from jsdisp_call_value.
2012-03-12 16:37:19 +01:00
Jacek Caban
fb79915803
jscript: Removed no longer needed disp_propput caller argument.
2012-03-09 11:31:29 +01:00
Jacek Caban
f560e98346
jscript: Removed no longer needed disp_propget caller argument.
2012-03-09 11:31:24 +01:00
Jacek Caban
e0ae18260e
jscript: Removed no longer needed caller argument of disp_call function.
2012-03-09 11:31:19 +01:00
Jacek Caban
dfb59c6049
jscript: Pass proper caller argument to InvokeEx.
2012-03-09 11:31:15 +01:00
Jacek Caban
abffe88e19
jscript: Added bytecode version of with statement.
2011-12-27 16:55:08 +01:00
Jacek Caban
5e6faaea12
jscript: Use bytecode for object literal implementation.
2011-12-16 16:38:28 +01:00
Andrew Talbot
30cab39056
jscript: Mark a fall-through in a switch statement.
2011-10-10 13:30:05 +02:00
Piotr Caban
65a7f47531
jscript: Limit name hash computations number.
2011-09-02 18:10:12 +02:00
Piotr Caban
f1a237d682
jscript: Use hash table when accessing object properties by name.
2011-09-02 18:10:09 +02:00
Piotr Caban
71b58e56c2
jscript: Added Object.hasOwnProperty implementation.
2011-09-02 18:10:07 +02:00
Michael Stefaniuc
3cb9886ea7
jscript: COM cleanup for the IDispatchEx iface.
2011-01-17 13:22:10 +01:00
Piotr Caban
cac0620fa5
jscript: Added DISPATCH_PROPERTYGET flag to some calls.
2010-10-20 10:24:19 +02:00
Alexandre Julliard
58825125ce
jscript: Add a missing terminator to a string constant.
2010-10-11 12:54:17 +02:00
Jacek Caban
f46f926134
jscript: Addd jsdisp_addref helper function.
2010-09-07 16:01:57 +02:00
Jacek Caban
ac8d2f1fae
jscript: jsdisp_t to IDispatch casts clean up.
2010-09-07 16:01:52 +02:00
Jacek Caban
2ae0f44033
jscript: Added a helper function for setting VARIANT value to jsdisp_t.
2010-09-07 16:01:46 +02:00
Jacek Caban
8c2a548b54
jscript: Rename DispatchEx to jsdisp_t to match jscript naming convention.
2010-09-06 17:09:57 +02:00
Jacek Caban
0cbe1574fe
jscript: Store builtin constructor's length in instance object.
2010-05-27 14:46:42 +02:00
Jacek Caban
9fd4f4a44a
jscript: Added support for constructor property.
2010-02-08 17:14:43 +01:00
Jacek Caban
75ab8e2027
jscript: Avoid unnecessary prototype lookup.
2010-02-08 17:14:43 +01:00
Jacek Caban
10c9931051
jscript: Get value as VARIANT in prop_put.
2010-02-08 17:14:43 +01:00
Jacek Caban
10c99b5735
jscript: Moved property creation out of find_prop_name_prot.
2010-02-08 17:14:43 +01:00
Jacek Caban
bf17483a19
jscript: Don't try to create property in jsdisp_call_name.
2010-02-08 17:14:43 +01:00
Piotr Caban
352ae8b480
jscript: Fix jsdisp_propget_idx implementation.
2010-01-25 13:00:51 +01:00
Rob Shearman
9dc584d0a2
jscript: Fix various memory and reference count leaks.
2009-12-31 14:27:06 +01:00
Jacek Caban
48eef3bc67
jscript: Ignore version bits in grfdex.
2009-10-20 13:47:53 +02:00
Jacek Caban
f8c2b42de4
jscript: Allow 'this' to be host object in builtin functions.
2009-09-23 16:25:23 +02:00
Jacek Caban
5511f7173f
jscript: Pass script_ctx_t to builtin functions.
2009-09-23 16:19:44 +02:00
Jacek Caban
f14c5f074a
jscript: Get rid of lcid argument in builtin function implementations.
2009-09-23 16:19:31 +02:00
Jacek Caban
fadfab5ff6
jscript: Use script LCID in *disp_propput* functions.
2009-09-23 16:19:11 +02:00
Jacek Caban
8b338786aa
jscript: Use script LCID in *disp_propget* functions.
2009-09-23 16:19:01 +02:00
Jacek Caban
1f565ac095
jscript: Use script global LCID in *disp_call* functions.
2009-09-23 16:18:54 +02:00
Jacek Caban
d918a1890b
jscript: Added Function.toString implementation for builtin functions.
2009-09-17 10:07:51 -05:00
Jacek Caban
c444a4907e
jscript: Code clean up.
2009-09-01 15:59:10 +02:00
Piotr Caban
5323a454c8
jscript: Fixed Object.toLocaleString implementation.
2009-08-12 17:04:38 +02:00
Piotr Caban
346619d093
jscript: Added Array length setting implementation.
2009-07-14 10:46:18 +02:00