Commit Graph

1388 Commits

Author SHA1 Message Date
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 f0be56e17c jscript: Added JSON.parse implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 13:43:27 +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
Jacek Caban b1197a15ec jscript: Make parse_decimal a more generic helper.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 13:42:41 +09:00
Jacek Caban d7e4193df2 jscript: Added support for Function constructor called as a function.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-06 18:14:44 +01:00
Jacek Caban 79361d3bc0 jscript: Added a test of DeleteMembedByDispID returning an error.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-15 20:00:42 +09:00
Nikolay Sivov fca682435d jscript: Return error code disp_delete() failed with (PVS-Studio).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-15 19:47:55 +09:00
Jacek Caban 326c1e61b4 jscript: Added 'automagic' test. 2015-06-03 14:47:15 +09:00
Jacek Caban 170bb3771f jscript: Added beginning support for 'automagic' event binding feature. 2015-06-03 14:47:12 +09:00
Jacek Caban ccccd1c435 jscript: Correctly handle pvarResult in ParseScriptText. 2015-06-01 14:43:28 +09:00
Alexandre Julliard f324ae7f09 jscript: Avoid UINT32_MAX. 2015-05-14 17:15:14 +09:00
Thomas Faller fdd22f197a jscript: Date.parse: long date with '/' or '-'. 2015-05-04 20:20:26 +09:00
Francois Gouget f0584081c9 jscript: Mark internal symbols with hidden visibility. 2015-03-18 19:39:04 +09:00
Jacek Caban a1543a3f7b jscript: Fixed handling VT_VARIANT|VY_BYREF types. 2015-02-06 22:20:39 +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 90d3569c62 jscript: Don't use builtin property for *Error constructors. 2015-02-06 00:28:35 +09:00
Jacek Caban b7a27333e3 jscript: Don't use builtin property for a few more constructors. 2015-02-06 00:28:34 +09:00
Jacek Caban 6eb49669aa jscript: Don't use builtin property for exposing Boolean constructor. 2015-02-05 00:23:14 +09:00
Jacek Caban b0632af980 jscript: Added support for VT_UI4 variants. 2015-02-04 21:32:50 +09:00
Jacek Caban a2a57791cd jscript: Added more SCRIPTSTATE_STARTED tests. 2015-01-14 13:18:27 +01:00
Jacek Caban 091738ffdf jscript: Don't allow function execution if script engine is not in started state. 2015-01-14 13:18:24 +01:00
Francois Gouget 861f02b5d1 jscript: Add a trailing '\n' to an ok() call. 2015-01-05 20:16:05 +01:00
Jacek Caban ceaf8bfd83 jscript: Added test of Date object default value. 2014-12-15 14:20:50 +01:00
Alistair Leslie-Hughes 6e8490a582 jscript: Support PROPERTYGET in Date Value. 2014-12-15 14:20:45 +01:00
Michael Stefaniuc 59af425d53 jscript: Merge two if blocks with identical condition (PVS-Studio). 2014-12-05 11:24:14 +01:00
Jacek Caban 7e43408eaa jscript: Use DISPATCH_PROPERTYPUTREF flag when setting a property to VT_DISPATCH. 2014-11-28 17:05:50 +01:00
André Hentschel dec5bbbec4 jscript: Remove unused code (Clang). 2014-11-25 19:49:40 +01:00
Jacek Caban 0eec97e29b jscript: Don't use builtin property for exposing ActiveXObject constructor. 2014-10-13 19:43:28 +09:00
Qian Hong 66ba778cad jscript: Ignore BOM mark in next_token. 2014-10-02 20:34:10 +02:00
Jacek Caban e7b8459bc3 jscript: Added support for relational CC expressions. 2014-10-02 16:59:24 +02:00
Jacek Caban d9e8c013c6 jscript: Added support for '==' CC expression. 2014-10-02 16:59:22 +02:00
Jacek Caban a0f038963b jscript: Added parser rules for missing expressions. 2014-10-02 16:59:20 +02:00
Jacek Caban 9b41bb0345 jscript: Added support for '-' CC expression. 2014-10-01 10:53:52 +02:00
Jacek Caban fcd9817581 jscript: Implicitly turn CC on for @if instruction. 2014-10-01 10:53:49 +02:00
Jacek Caban 8b36388797 jscript: Implicitly turn CC on for @set instruction. 2014-10-01 10:53:47 +02:00
Jacek Caban 68c61d17e0 jscript: Added tests for @if/@elif/@else/@end. 2014-10-01 10:53:45 +02:00
Jacek Caban afba44d324 jscript: Added support for conditional compilation @if/@elif/@else/@end. 2014-10-01 10:53:43 +02:00
Jacek Caban ad842c42f0 jscript/tests: Added @set tests. 2014-09-30 18:15:16 +02:00
Jacek Caban 5ec69474cf jscript: Added conditional compilation @set support. 2014-09-30 18:15:14 +02:00
Jacek Caban 77d0c2a44c jscript: Moved skipping spaces to separated function. 2014-09-30 17:40:12 +02:00
Jacek Caban 79dc3bc72e jscript: Added new ccval_t type for CC variable values. 2014-09-30 17:40:11 +02:00
Jacek Caban 166c97d549 jscript: Return double from parse_numeric_literal and parse_double_literal. 2014-09-30 17:40:11 +02:00
Jacek Caban 615f6a6e8b jscript: Move parser related declarations to separated header. 2014-09-30 17:40:10 +02: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
Gerald Pfeifer 2d56e77537 jscript: Remove unused propertyIsEnumerableW and isPrototypeOfW. 2014-08-25 20:39:53 +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
Akihiro Sagawa e29fd54292 jscript: Improve CollectGarbage stub. 2014-06-24 20:26:55 +02:00
Jacek Caban cbe63d977c jscript: Added accessing not existing property on IDispatchEx tests. 2014-06-12 18:05:16 +02:00
Jacek Caban 755eac8f0c jscript: Properly handle NULL pvarResult in ParseScriptText. 2014-06-11 19:15:25 +02:00
Jacek Caban 2d752d1a93 jscript: Fixed uninitialized variable access in interp_end_finally. 2014-04-29 11:27:02 +02:00
Jacek Caban 5cf20ceffd jscript: Represent NULL VT_UNKNOWN VARIANT as NULL VT_DISPATCH. 2014-03-19 16:50:34 +01:00
Jacek Caban cd22e8c223 jscript: Skip tests if we can't register ActiveX object. 2014-02-17 20:16:19 +01:00
Frédéric Delanoy 0f2bed51bd Assorted spelling fixes. 2014-02-10 15:47:29 +01:00
Frédéric Delanoy bb2a07f81e jscript/tests: Use common wine_dbgstr_guid implementation from test.h. 2014-01-30 12:42:55 +01:00
Alexandre Julliard 99ef0d6ff0 makefiles: Get rid of the MAKE_TEST_RULES variable. 2014-01-02 12:13:16 +01:00
Alexandre Julliard 5e7416e5c8 makefiles: Get rid of the MAKE_DLL_RULES variable. 2014-01-02 12:08:18 +01:00
Alexandre Julliard d08ff3ff19 makefiles: Use a single variable for all types of idl files. 2013-12-31 18:15:17 +01:00
Alexandre Julliard 566d3418af makedep: Add a separate pragma flag for typelibs that need registration. 2013-12-26 13:32:49 +01:00
Alexandre Julliard ca41acc1f9 makefiles: Automatically update the IDL_H_SRCS variable. 2013-12-15 10:23:06 +01:00
Alexandre Julliard 4f3d71cef3 makefiles: Get rid of the no longer used PO_SRCS variables. 2013-12-15 10:23:04 +01:00
Jacek Caban 1a89ea7043 jscript: Improved error handling in numeric literal parser. 2013-11-06 18:01:04 +01:00
Jacek Caban 4d9ea4b563 jscript: Added support for octal literals. 2013-11-06 18:01:00 +01:00
Alexandre Julliard 5756ee09f3 makefiles: Add makedep pragmas for rc files that contain translations. 2013-11-05 20:38:19 +01:00
Alexandre Julliard c7803b885b makefiles: Add makedep pragmas for registration idl files. 2013-11-05 20:38:18 +01:00
Alexandre Julliard f8421142e7 makefiles: Add makedep pragmas for typelib idl files. 2013-11-05 20:38:18 +01:00
Alexandre Julliard 82c4fa35aa jscript: Reorganize StringConstr_value slightly to avoid confusing gcc. 2013-10-21 16:26:50 +02:00
Jacek Caban 71d1df73b5 jscript: Compile tests with -D__WINESRC__. 2013-10-14 17:26:15 +02:00
Alexandre Julliard a804cc711b jscript: Use the official Windows constant for MAXLONGLONG. 2013-10-14 17:26:14 +02:00
Michael Stefaniuc 0e681027a2 tests: Compile the tests by default with -D__WINESRC__. 2013-10-02 11:04:02 +02:00
Piotr Caban 2e752a115a jscript: Fix compilation issues when dtoa is defined in headers. 2013-08-15 16:13:27 +02:00
Alexandre Julliard ffbe1ca986 jscript: Use bison directives instead of defines to specify extra lexer parameters. 2013-08-01 11:59:12 +02:00
Jacek Caban f34722e772 jscript: Added RegExp.toString() implementation. 2013-05-27 19:29:13 +02:00
Alexandre Julliard 56c6916894 jscript: Don't bother to free memory at process exit. 2013-05-15 10:21:12 +02:00
Jacek Caban b46ace51f8 jscript: Optimize String.concat implementation. 2013-04-25 15:41:53 +02:00
Jacek Caban 2ac35ac441 jscript: Use single string instance for strings representing NULL BSTR instead of a flag. 2013-04-24 14:34:26 +02:00
Jacek Caban 6d8359fcc5 jscript: Run some SunSpider benchmarks in interactive mode. 2013-04-23 17:20:14 +02:00
Jacek Caban 8541f94e2c jscript: Store concatenated strings as a rope string to avoid useless copying. 2013-04-23 17:20:14 +02:00
Jacek Caban 29d9d668f7 jscript: Moved string buffer to separated struct from jsstr_t. 2013-04-01 12:19:06 +02:00
Jacek Caban c79180a978 jscript: Use helpers to access string buffer in string.c. 2013-04-01 12:19:04 +02:00
Jacek Caban c3cf79ac25 jscript: Use helpers to access string buffers in jsregexp.c. 2013-04-01 12:19:01 +02:00
Jacek Caban 03395f2d2e jscript: Use helpers to access string buffer in some String functions. 2013-03-28 17:36:53 +01:00
Jacek Caban 618b88ef30 jscript: Added jsstr_extract helper and use it in String.charCodeAt implementation. 2013-03-28 17:36:53 +01:00
Jacek Caban b7ffca591d jscript: Use helpers to access string buffer in object.c. 2013-03-27 12:13:44 +01:00
Jacek Caban e67169c114 jscript: Use helpers to access string buffer in global.c. 2013-03-27 12:13:41 +01:00
Jacek Caban 20530c55b8 jscript: Use helpers to access string buffer in engine.c. 2013-03-27 12:13:39 +01:00
Jacek Caban ecdf62d324 jscript: Use to_flat_string to access string buffer in array.c. 2013-03-27 12:13:36 +01: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 96ace8cbcb jscript: Use jsstr_flatten to access string buffer in jsutils.c. 2013-03-26 12:16:04 +01: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 e3d940334f jscript: Added jsstr_flatten helper and use it to access string buffer in date.c. 2013-03-26 12:15:57 +01:00
Jacek Caban 4ece40f86b jscript: Return buffer pointer separately from jsstr_t from jsstr_alloc_len. 2013-03-25 14:10:08 +01:00
Marcus Meissner 874c66e086 jscript: Fix warning with older compilers. 2013-03-25 13:56:17 +01:00
Marcus Meissner 339ec9c4ed jscript: Check the correct heap return condition (Coverity). 2013-03-25 13:55:32 +01:00
Jacek Caban 3faeffc5f4 jscript: Use DEFAULT_UNREACHABLE macro where appropriate. 2013-03-13 16:27:49 +01:00
Jacek Caban 52fc8b3d94 jscript: Use BSTR also for pure IDispatch call in Object.hasOwnProperty. 2013-03-11 17:01:53 +01:00
Jacek Caban 67d86e630e jscript: Use BSTR also for pure IDispatch call in disp_get_id. 2013-03-11 17:01:50 +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
Alexandre Julliard a27ecc40ba jscript: Return after assert(0) to silence warnings. 2013-03-08 19:35:20 +01:00
Jacek Caban 9323dc57af jscript: Avoid direct access to string buffer in a few more places. 2013-03-08 18:11:05 +01:00
Jacek Caban d7f24b0956 jscript: Reuse static instance of 'undefined' string. 2013-03-08 18:11:05 +01:00
Jacek Caban c7c71b87b8 jscript: Pass msg as jsstr_t to create_error. 2013-03-08 18:11:05 +01:00
Jacek Caban 324d8b6fa3 jscript: Use jsstr_flush in literal_as_bstr. 2013-03-07 14:56:17 +01:00
Jacek Caban c3eecec680 jscript: Use (index,length) pair as match result. 2013-03-07 14:56:17 +01:00
Jacek Caban 6eaef96dad jscript: Reimplemented do_attribute_tag_format without direct access to object's string buffer. 2013-03-06 15:10:34 +01:00
Jacek Caban 25dbf32b5d jscript: Reimplemented do_attributeless_tag_format without direct access to object's string buffer. 2013-03-06 15:10:31 +01:00
Jacek Caban 895d059ebe jscript: Use jsstr_flush in String_concat. 2013-03-05 12:43:29 +01:00
Jacek Caban 88e78eb16e jscript: Use jsstr_flush in variant_change_type. 2013-03-05 12:43:26 +01:00
Jacek Caban 0eeb5c17b4 jscript: Use jsstr_flush in jsval_to_variant. 2013-03-05 12:43:24 +01:00
Jacek Caban 721d3ec1b4 jscript: Use jsstr_flush in jsstr_concat. 2013-03-05 12:43:22 +01:00
Jacek Caban 3f30c34827 jscript: Use jsstr_flush in construct_function. 2013-03-05 12:43:20 +01:00
Jacek Caban 55f67035c4 jscript: Use jsstr_flush in Error_toString. 2013-03-05 12:43:18 +01:00
Jacek Caban 29ff14493d jscript: Added jsstr_flush helper and use it in array_join. 2013-03-05 12:43:16 +01:00
Jacek Caban 20e85dd21b jscript: Use jsstr_substr in jsregexp.c where possible. 2013-03-04 11:19:30 +01:00
Jacek Caban 6e3895ad76 jscript: Added jsstr_substr helper and use it in String object implementation. 2013-03-04 11:19:27 +01:00
Jacek Caban ee880b28c5 jscript: Fixed BSTR leak. 2013-02-19 19:50:53 +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 67c7cc5517 jscript: Cleanup regular expressions engine API. 2013-02-19 19:50:36 +01:00
Piotr Caban 4c6a1d1d92 jscript: Rename JSREG_* defines to REG_*. 2013-02-19 13:47:57 +01:00
Piotr Caban 06e8d830e2 jscript: Moved generic regular expressions code to separate file. 2013-02-15 14:43:17 +01:00
Piotr Caban 5f06c6de28 jscript: Make context generic in internal regular expression functions. 2013-02-15 14:43:09 +01:00
Piotr Caban deca5e1aca jscript: Move code operating on JSRegExp out of do_regexp_match_next function. 2013-02-15 14:43:06 +01:00
Piotr Caban 1d61b4581a jscript: Don't use jsstr_t in js_NewRegExp. 2013-02-15 14:43:04 +01:00
Piotr Caban 89711e35c1 jscript: Don't use jsstr_t in JSRegExp structure. 2013-02-15 14:43:01 +01:00
Piotr Caban 02d63cb312 jscript: Rename jsheap_t to heap_pool_t. 2013-02-15 14:42:58 +01:00
Andrew Talbot 6b5a18f619 jscript: Avoid signed-unsigned integer comparisons. 2013-02-11 11:46:05 +01:00
Piotr Caban c3bdaf59a8 jscript: Update buffer size in do_regexp_match_next. 2013-01-28 13:59:54 +01:00
Piotr Caban c45c7bf94c jscript: Fixed a leak in regexp_match function. 2013-01-25 17:33:05 +01:00
Piotr Caban 1548d0ef7b jscript: Fixed a leak in do_regexp_match_next function. 2013-01-25 17:31:21 +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 99d1a8529b jscript: Added null and undefined values support to to_object. 2012-12-21 17:28:55 +01:00
Jacek Caban 0e6d3b8611 jscript: Optimized concatenation of empty strings. 2012-12-18 12:37:14 +01:00
Jacek Caban f0c0c14241 jscript: Moved string concatenation to helper function. 2012-12-18 12:37:08 +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 4dbd777de2 jscript: Fixed deleting nonexistent identifiers. 2012-12-17 20:31:17 +01:00
Jacek Caban 7f07bb9a7a jscript: Fixed deleting nonexisting properties from member expression. 2012-12-17 20:31:16 +01:00
Jacek Caban 9de9c353ac jscript: Fixed Number.toFixed for value 0 with 0 precision. 2012-12-17 20:31:16 +01:00
Jacek Caban 0f0f76ce6b jscript: Allow poping multiple stack values at the time. 2012-12-14 11:54:47 +01:00
Jacek Caban 10c2a2bba4 jscript: Properly handle return value evaluation in comma expression. 2012-12-14 11:54:44 +01:00
Jacek Caban 1000a6bf34 jscript: Ensure correct stack state for non-returning expression evaluation in compile_expression. 2012-12-13 12:24:15 +01:00
Jacek Caban 162f2e6be2 jscript: Moved eval return value logic to specific statement handlers. 2012-12-13 12:24:07 +01:00
Jacek Caban 2c41c4c1cb jscript: Added SCRIPTTEXT_ISEXPRESSION tests. 2012-12-12 20:23:20 +01:00
Jacek Caban 5e4a16819e jscript: Added support for SCRIPTTEXT_ISEXPRESSION. 2012-12-12 20:23:17 +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 e8766bb66f jscript: Added more useful debug traces. 2012-12-07 12:04:25 +01:00