Commit graph

4853 commits

Author SHA1 Message Date
Gabriel Ivăncescu 0c99a89b15 mshtml: Use unlink and destructor in the vtbl for HTMLElementCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:08 +09:00
Gabriel Ivăncescu 20b769dcb9 mshtml: Use unlink and destructor in the vtbl for HTMLDOMChildrenCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:08 +09:00
Gabriel Ivăncescu 6919d553aa mshtml: Use unlink and destructor in the vtbl for HTMLAttributeCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:07 +09:00
Gabriel Ivăncescu d5e6c2a581 mshtml: Use unlink and destructor in the vtbl for HTMLFiltersCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:07 +09:00
Gabriel Ivăncescu ee24cfe6be mshtml: Use unlink and destructor in the vtbl for DOMTokenList.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:07 +09:00
Gabriel Ivăncescu ab784433bc mshtml: Use unlink and destructor in the vtbl for HTMLRectCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:07 +09:00
Gabriel Ivăncescu adefacfd12 mshtml: Use unlink and destructor in the vtbl for HTMLRect.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:07 +09:00
Gabriel Ivăncescu 7913019fd0 mshtml: Use unlink and destructor in the vtbl for XMLHttpRequest.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:07 +09:00
Gabriel Ivăncescu ce02f4d98a mshtml: Use unlink and destructor in the vtbl for MutationObserver.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:07 +09:00
Gabriel Ivăncescu 7bf4cd17ea mshtml: Use unlink and destructor in the vtbl for MediaQueryList.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:07 +09:00
Gabriel Ivăncescu a916bc768d mshtml: Use unlink and destructor in the vtbl for Console.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-08 11:56:07 +09:00
Gabriel Ivăncescu 59865c9e51 mshtml: Use unlink and destructor in the vtbl for HTMLNamespaceCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 21abb999d9 mshtml: Use unlink and destructor in the vtbl for HTMLPerformance.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 8dac93e6d1 mshtml: Use unlink and destructor in the vtbl for HTMLPerformanceNavigation.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 6306e86bfd mshtml: Use unlink and destructor in the vtbl for Navigator.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 530c68d829 mshtml: Use unlink and destructor in the vtbl for HTMLMimeTypesCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 679617179c mshtml: Use unlink and destructor in the vtbl for HTMLPluginsCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu d373377765 mshtml: Use unlink and destructor in the vtbl for History.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 94c85bf9bf mshtml: Use unlink and destructor in the vtbl for HTMLScreen.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 5a687bb49c mshtml: Use unlink and destructor in the vtbl for HTMLDOMImplementation.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 62d39e86b3 mshtml: Use unlink and destructor in the vtbl for HTMLDOMAttribute.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 1904dd0be3 mshtml: Use unlink and destructor in the vtbl for HTMLTxtRange.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 5c3f4e4b7c mshtml: Use unlink and destructor in the vtbl for HTMLDOMRange.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 159b6d75d0 mshtml: Use unlink and destructor in the vtbl for HTMLSelectionObject.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 9541020f16 mshtml: Use unlink and destructor in the vtbl for HTMLStorage.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:39 +09:00
Gabriel Ivăncescu 392a15cdc9 mshtml: Unlink variants using a helper function.
And move the clear to the destructor.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-04 19:20:36 +09:00
Gabriel Ivăncescu f937b89cd7 mshtml: Use unlink and destructor in the vtbl for the MutationObserver constructor.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:33 +09:00
Gabriel Ivăncescu 2e5ac78a7c mshtml: Use unlink and destructor in the vtbl for HTMLXMLHttpRequestFactory.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:32 +09:00
Gabriel Ivăncescu 67d7cb3a62 mshtml: Use unlink and destructor in the vtbl for HTMLOptionElementFactory.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:32 +09:00
Gabriel Ivăncescu df6316cdbc mshtml: Use unlink and destructor in the vtbl for HTMLImageElementFactory.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:32 +09:00
Gabriel Ivăncescu 9019e969ad mshtml: Use unlink and destructor in the vtbl for HTMLStyleSheet.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:32 +09:00
Gabriel Ivăncescu cfe112d70c mshtml: Use unlink and destructor in the vtbl for HTMLStyleSheetsCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:32 +09:00
Gabriel Ivăncescu 2e188c9681 mshtml: Use unlink and destructor in the vtbl for HTMLStyleSheetRulesCollection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:27 +09:00
Gabriel Ivăncescu 6d63a630fe mshtml: Use unlink and destructor in the vtbl for HTMLStyleSheetRule.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:27 +09:00
Gabriel Ivăncescu ae9aa7ec23 mshtml: Use unlink and destructor in the vtbl for CSSStyle.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:27 +09:00
Gabriel Ivăncescu 6ad4dd01dd mshtml: Use unlink and destructor in the vtbl for inner windows.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:27 +09:00
Gabriel Ivăncescu 9bad7be301 mshtml: Use unlink and destructor in the vtbl for HTMLEventObj.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:27 +09:00
Gabriel Ivăncescu 548b681185 mshtml: Use separate dispex destructors for different event types.
And get rid of the destroy method. This especially simplifies it when
traversal and unlinking is implemented.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:26 +09:00
Gabriel Ivăncescu 6a2ca11c65 mshtml: Use unlink and destructor in the vtbl for function disps.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:26 +09:00
Gabriel Ivăncescu 3c92edfdf2 mshtml: Introduce unlink_ref helper.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:25 +09:00
Gabriel Ivăncescu 7b30e3d34e mshtml: Use the common HTMLElement dispex vtbl in the dispex definitions.
Rather than filling it during initialization, which was a bit confusing,
even more later on when dispex will handle Cycle Collection.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-02 19:59:23 +09:00
Gabriel Ivăncescu 954dd16fb1 jscript: Use the object containing the prop for builtin getters.
Since they act like values.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-01 21:51:13 +09:00
Gabriel Ivăncescu 1b1d09724a jscript: Call the getter with the proper 'this' in invoke_prop_func.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-01 21:51:13 +09:00
Yuxuan Shui 724e54d54f mshtml: Add stubs for MutationObserver methods. 2023-07-31 21:04:23 +09:00
Yuxuan Shui 02994bdd10 mshtml: Implement window.MutationObserver with MutationObserver stub. 2023-07-31 21:04:21 +09:00
Gabriel Ivăncescu 9e8c4fd940 mshtml: Add some basic documentation for the dispex and its vtbl.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-07-27 13:12:06 +09:00
Gabriel Ivăncescu 62cee99658 mshtml/tests: Add tests for WeakMap.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-07-20 21:48:40 +02:00
Alexandre Julliard 175d873c72 mshtml/tests: Use nameless unions/structs. 2023-07-20 21:48:39 +02:00
Gabriel Ivăncescu 8713e2ad64 mshtml: Grab the binding while aborting it.
Holding the BindStatusCallback ref is not enough; Abort can end up calling
OnStopBinding which intentionally removes the binding and releases its
ref. urlmon's Abort will then have a use-after-free when accessing the
state to set BINDING_ABORTED, if it was destroyed.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-07-19 16:54:46 +02:00
Alexandre Julliard 102a9bd94b mshtml: Use nameless unions/structs. 2023-07-14 09:24:17 +02:00