Commit Graph

1325 Commits

Author SHA1 Message Date
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
Jacek Caban 11f41aa05a jscript: Treat VT_UNKNOWN VARIANTs supporting IDispatch interface as VT_DISPATCH. 2012-12-05 20:23:51 +01:00
Jacek Caban 0e5933f70a jscript: Added support for indexed string access. 2012-11-30 19:12:16 +01:00
Jacek Caban 956cb343b2 jscript: Cut arguments circular reference after returning from the function. 2012-11-30 19:12:15 +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
André Hentschel 6804ae26fb jscript: Fix possible NULL pointer access in heap_strdupW. 2012-11-19 16:36:41 +01:00
Jacek Caban 55f0663e3e jscript: Use proper object as 'this' when function is called on an activation object. 2012-11-14 16:37:49 +01:00
Jacek Caban 74a83150ab jscript: Fixed leak in disp_propget. 2012-11-09 16:42:47 +01:00
Jacek Caban 25ffa3d97b jscript: Added more enumerable attribute tests. 2012-11-05 17:44:16 +01:00
Jacek Caban 78652f7602 jscript: Added propertyIsEnumerable implementation. 2012-11-05 17:44:16 +01:00
Jacek Caban ea34e01493 jscript: Use jsdisp_propput_dontenum where appropriate. 2012-11-05 17:44:15 +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 2d962d0395 jscript: Use jsstr_t for passing strings to regexp matching functions. 2012-10-18 19:23:07 +02:00
Michael Stefaniuc f3d15811b4 jscript: Move 'inline' to the beginning of the declaration. 2012-10-15 15:24:37 +02:00
Jacek Caban ec8a57b6de jscript: Removed SysFreeString calls missed in previous patch. 2012-10-12 12:04:28 +02:00
Jacek Caban c2df65eeef jscript: Get rid of BSTR in date.c. 2012-10-11 18:53:14 +02:00
Jacek Caban be885e287b jscript: Use jsstr_t for compiler constant strings. 2012-10-11 18:53:11 +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
Jacek Caban bf65003271 jscript: Added support for pstrFormalParams argument in ParseProcedureText. 2012-10-04 16:29:24 +02:00
Jacek Caban 1d542e3aa4 jscript: Added ParseProcedureText tests. 2012-10-04 16:29:18 +02:00
Jacek Caban 730479e6a4 jscript: Removed useless return statement in jsval_number. 2012-10-03 18:17:02 +02:00
Francois Gouget a809803a92 jscript: Make regexp_match() static. 2012-10-01 11:59:43 +02:00
Jacek Caban fa0dfd0bb6 jscript: Properly invoke regexp matching in String.split. 2012-09-24 22:27:29 +02:00
Jacek Caban 77c3dc544b jscript: Added support for limit argument in String.split. 2012-09-24 22:27:29 +02:00
Jacek Caban c0d2029560 jscript: Fixed conversion in place in IVariantChangeType::ChangeType. 2012-09-21 20:02:58 +02:00
Jacek Caban e374449e30 jscript: Get rid of unused hres.
Spotted by Michael Stefaniuc.
2012-09-20 19:23:16 +02:00
Jacek Caban 87d6e2385a jscript: Added support for RegExp.$* properties. 2012-09-20 19:23:08 +02:00
Francois Gouget d75a4ba17f jscript: Make jsval_variant() static. 2012-09-20 00:00:14 +02:00
Jacek Caban 37509e540f jscript: Pack jsval_t to 64-bit structure on i386. 2012-09-19 13:04:34 +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 c0cd0d17aa jscript: Avoid direct access to jsval_t struct. 2012-09-17 18:30:25 +02:00
Jacek Caban 9e7829828e jscript: Don't assume that undefined variable is zeroed. 2012-09-17 18:30:20 +02:00
Jacek Caban c4df88b7fa jscript: Use helper to access jsval_t type. 2012-09-17 18:30:14 +02:00
Jacek Caban c5183bb505 jscript: Use BOOL instead of VARIANT_BOOL in lexer. 2012-09-17 18:30:08 +02:00
Jacek Caban 6920b289b0 jscript: Use BOOL instead of VARIANT_BOOL in a few more places. 2012-09-17 18:30:03 +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 a3f7f0f7de jscript: Store regexp last_index value as jsval. 2012-09-17 18:29:35 +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 8c5f5b49ec jscript: Added support for host objects being part of scope chain. 2012-09-13 16:47:29 +02:00
Jacek Caban fdbd536983 jscript: Don't leave current scope in return statement before evaluating the expression. 2012-09-13 16:47:22 +02:00
Jacek Caban dd0fe98646 jscript: Added support for no new line between return and expression rule. 2012-09-10 17:36:08 +02:00
Jacek Caban f1642ce1fc jscript: Added support for no new line between continue and identifier rule. 2012-09-10 17:36:05 +02:00
Jacek Caban dc2133cc66 jscript: Added support for no new line between break and identifier rule. 2012-09-10 17:36:02 +02:00