[PATCH] mshtml: Implemented numeral parsing in get_frame_by_name.
Austin English
austinenglish at gmail.com
Tue Apr 1 14:49:14 CDT 2014
On Tue, Apr 1, 2014 at 12:45 PM, Qian Hong <qhong at codeweavers.com> wrote:
> Hi all,
>
> When passing a numeral like string as array index to the window object,
> native IE correctly parses the string into an integer value while Wine
> doesn't. This patch fix the problem. Here is one simply test case:
>
> Testcase:
> 1 <html>
> 2 <body>
> 3 </body>
> 4 <script type="text/javascript">
> 5 var iframeEl = document.createElement('iframe');
> 6 document.body.appendChild(iframeEl);
> 7 document.write(window["0"]); //buggy in Wine builtin iexplore
> 8 </script>
> 9 </html>
>
> In theory this patch need some more tests, because the above test case is
> far from perfect, fortunately we have the open source ECMAScript 3
> Conformance Test Suite ver. 0.2:
> http://kangax.github.io/sputniktests-webrunner/
>
> Before this patch, Wine builtin iexplore hangs on the first test case of
> the ECMAScript 3 Conformance Test Suite, after the patch, the Conformance
> Test Suite begin to run. Guess how far does it gone? To everyone's
> surprise, now Wine builtin iexplore passes all 5228 tests in the test case:
>
> Current test:
> 15_Native_ECMA_Script_Objects/15.11_Error_Objects/15.11.4_Properties_of_the_Error_Prototype_Object/S15.11.4_A4
> Tests completed: 5228
> Total errors: 0
> Total failures: 0
> Elapsed time: 7:40
> Status: Completed. Final score (errors + failures; less is better): 0
>
>
> This is definitely a great step of our Wine buitin iexplore, now our
> version beats Microsoft IE7 a lot.
>
> Since now all ECMAScript 3 conformance tests passed, it is safe to assume
> that this patch is absolutely correct and no extra test cases needed, so
> I'm not going to contribute any C test case for it into our test framework
> because it is just duplicate work and waste of time - What can you worry if
> even the whole test suite passed?
>
Hi Qian,
The tests are partially there to prove the implementation is correct, yes,
but they are also there to prevent regressions. Someone in the future
changing dlls/mshtml may not run those same tests and things will break,
if there is a unit test in dlls/mshtml/tests, that is not the case.
Cheers,
Austin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20140401/78a0a478/attachment.html>
More information about the wine-patches
mailing list