Commit Graph

254 Commits

Author SHA1 Message Date
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
Michael Stefaniuc eb168bcbbf jscript: Use the global HeapAlloc() wrappers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Jacek Caban<jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-01 22:24:59 +01:00
Francois Gouget 1731629fd3 jscript: Add __WINE_ALLOC_SIZE attributes to heap_xxx() functions.
And standardize their parameter names.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 13:57:35 +01: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 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 32d9c59868 jscript: Get rid of no longer needed exec_ctx_t.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-26 12:07:17 +09:00
Jacek Caban 0224f1829b jscript: Moved stack from execution context to script context.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-26 12:07:05 +09:00
Jacek Caban 8a17cf89fb jscript: Keep track of active call in a separated structure.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-25 20:09:07 +09:00
Jacek Caban 95bdd084a1 jscript: Added JSON.stringify implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 13:43:35 +09:00
Jacek Caban 4e1e2ee451 jscript: Added JSON object stub implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 13:43:10 +09:00
Jacek Caban e00708e3aa jscript: Added new is_finite helper.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 13:42:57 +09:00
Francois Gouget f0584081c9 jscript: Mark internal symbols with hidden visibility. 2015-03-18 19:39:04 +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 0eec97e29b jscript: Don't use builtin property for exposing ActiveXObject constructor. 2014-10-13 19:43:28 +09:00
Jacek Caban 5ec69474cf jscript: Added conditional compilation @set support. 2014-09-30 18:15:14 +02:00
Jacek Caban d2886a05f9 wine/debug.h: Added debugstr_variant and debugstr_vt aliases and removed all duplicated implementations. 2014-07-24 17:05:55 +02:00
Jacek Caban 3bf7255d23 jscript: Added to_flat_string helper and use it to access string buffer in activex.c. 2013-03-27 12:13:32 +01:00
Jacek Caban c3eecec680 jscript: Use (index,length) pair as match result. 2013-03-07 14:56:17 +01:00
Jacek Caban 1926b5617d jscript: Use to_int32 in to_uint32 implementation. 2013-02-19 19:50:53 +01:00
Piotr Caban f16c9877bd jscript: Avoid copying regular expression results. 2013-02-19 19:50:40 +01:00
Piotr Caban 02d63cb312 jscript: Rename jsheap_t to heap_pool_t. 2013-02-15 14:42:58 +01:00
Jacek Caban b568d88815 jscript: Throw an error if return statement is in eval code. 2012-12-12 20:23:13 +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
André Hentschel 6804ae26fb jscript: Fix possible NULL pointer access in heap_strdupW. 2012-11-19 16:36:41 +01:00
Jacek Caban 78652f7602 jscript: Added propertyIsEnumerable implementation. 2012-11-05 17:44:16 +01:00
Jacek Caban 79a30a4e0a jscript: Optimize object refcount handling. 2012-10-26 13:59:08 +02:00
Jacek Caban 2d962d0395 jscript: Use jsstr_t for passing strings to regexp matching functions. 2012-10-18 19:23:07 +02:00
Jacek Caban 3182852293 jscript: Store regexp source as jsstr_t. 2012-10-11 18:53:08 +02:00
Jacek Caban 7f1e3300fe jscript: Use custom string container instead of BSTR. 2012-10-11 18:53:04 +02:00
Francois Gouget a809803a92 jscript: Make regexp_match() static. 2012-10-01 11:59:43 +02:00
Jacek Caban 87d6e2385a jscript: Added support for RegExp.$* properties. 2012-09-20 19:23:08 +02:00
Jacek Caban 33331b1ccf jscript: Don't store jsexcept_t in exec_ctx_t. 2012-09-19 13:04:24 +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 29f4194d74 jscript: Return BOOL instead of VARIANT_BOOL from jsdisp_is_own_prop. 2012-09-17 18:29:54 +02:00
Jacek Caban bc768b0906 jscript: Store Boolean object's value as BOOL instead of VARIANT_BOOL. 2012-09-17 18:29:49 +02:00
Jacek Caban 5fecc71d34 jscript: Get rid of no longer needed VARIANT helpers. 2012-09-17 18:29:42 +02:00
Jacek Caban 228aab23be jscript: Always use jsval-based to_object implementation. 2012-09-17 18:29:19 +02:00
Jacek Caban acfd2b98c3 jscript: Always use jsval-based to_string implementation. 2012-09-17 18:29:11 +02:00
Jacek Caban 2fc71ab6d5 jscript: Always use jsval-based to_uint32 implementation. 2012-09-17 18:29:02 +02:00
Jacek Caban 0bab034fac jscript: Always use jsval-based to_number implementation. 2012-09-17 18:28:52 +02:00
Jacek Caban 26576b83da jscript: Always use jsval-based to_boolean. 2012-09-17 18:28:41 +02:00
Jacek Caban c1eb4326a0 jscript: Always use jsval-based to_primitive. 2012-09-17 18:28:35 +02:00
Jacek Caban daf0b8dad2 jscript: Store exception value as jsval_t instead of VARIANT. 2012-09-17 18:28:05 +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 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 cf8029717c jscript: Properly set Number.prototyp.constructor. 2012-07-16 16:29:21 +02:00
Francois Gouget b7f74922a4 jscript: Make int_to_bstr() static. 2012-06-26 17:06:11 +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 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 4a335142f9 jscript: Use INFINITY macro instead of num_set_inf(). 2012-06-21 18:04:32 +02:00
Jacek Caban c7c8cd780a jscript: Use INFINITY macro instead of ret_inf() hack. 2012-06-20 19:21:08 +02:00
Jacek Caban db737291fc jscript: Get rid of num_set_nan hack. 2012-05-29 18:20:14 +02:00
Jacek Caban d0a719a79d jscript: Get rid of ret_nan hack. 2012-05-29 18:20:13 +02:00
Jacek Caban 56bf46fda0 jscript: Return double from to_integer. 2012-05-03 20:44:11 +02:00
Jacek Caban 5b83abced7 jscript: Properly test if double may be converted to int32. 2012-05-02 20:14:56 +02:00
Jacek Caban c9c8c6165e jscript: Added support for VT_I2 in invoke_prop_func. 2012-05-01 15:28:22 +02:00
Piotr Caban 4c4c7c047f jscript: Added Number.toPrecision implementation. 2012-04-19 19:28:11 +02:00
Piotr Caban a20c0d1141 jscript: Added Number.toFixed implementation. 2012-04-19 19:28:11 +02:00
Jacek Caban 7bb41e75b6 jscript: Store value as double in NumberInstance object. 2012-03-27 11:43:17 +02:00
Jacek Caban 451169fb93 jscript: Return double instead of VARIANT from to_number. 2012-03-27 11:43:01 +02:00
Jacek Caban f7a8650500 jscript: Added decoding support. 2012-03-26 18:15:11 +02:00
Jacek Caban 4a9eea3516 jscript: Added beginning support for JScriptEncode object. 2012-03-26 18:15:09 +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 c6360c3e6e jscript: Added QueryService(SID_VariantConversion) implementation. 2012-03-12 16:37:18 +01:00
Jacek Caban bac7c1ef36 jscript: Added ChangeType implementation. 2012-03-12 16:37:17 +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 9a4e12aa93 jscript: Added labelled break statement implementation. 2012-01-17 14:07:54 +01:00
Jacek Caban 383e2b1a0e jscript: Added labelled statement implementation. 2012-01-17 14:06:13 +01:00
Marcus Meissner 0648a567a8 jscript: Mark some function DECLSPEC_HIDDEN. 2012-01-03 12:37:31 +01:00
Jacek Caban 11ccf0f33e jscript: Handle invalid continue statements in compiler. 2011-12-30 15:41:01 +01:00
Jacek Caban 7361cdc2f3 jscript: Handle invalid break statements in compiler. 2011-12-30 15:40:58 +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
Jacek Caban fd6ecbd781 jscript: Throw type error on invalid delete. 2011-12-15 17:46:42 +01:00
Jacek Caban 2c8e8948df jscript: Properly handle NULL IDispatch in stack_pop_object. 2011-12-12 15:50:46 +01:00
Piotr Caban e4ec169fd9 jscript: Added decodeURI implementation. 2011-09-02 18:28:14 +02:00
Piotr Caban 71b58e56c2 jscript: Added Object.hasOwnProperty implementation. 2011-09-02 18:10:07 +02:00
Marcus Meissner c2f2f1911c jscript: Mark internal symbols as having hidden visibility. 2011-04-26 15:31:27 +02:00
Michael Stefaniuc 568b0d5c08 jscript: COM cleanup for the IServiceProvider iface. 2011-01-17 13:22:14 +01:00