https://bugs.winehq.org/show_bug.cgi?id=54291
Bug ID: 54291 Summary: vbscript stuck in endless for loop when UBound on Empty and On Error Resume Next Product: Wine Version: 7.21 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: vbscript Assignee: wine-bugs@winehq.org Reporter: jsm174@gmail.com Distribution: ---
I ran across some code similar to the following:
WScript.echo "Start"
Dim ii Dim tmp
Dim vpmMultiLights() : ReDim vpmMultiLights(0)
On Error Resume Next
For Each tmp In vpmMultiLights For ii = 1 To UBound(tmp) : tmp(ii).State = tmp(0).State : Next Next
On Error Goto 0
WScript.echo "Done"
In real vbscript, the result is:
Start Done
In wine vbscript, this code will get stuck in an endless loop.
To work around this I hacked UBound to return 0 with VT_EMPTY, but I think real vbscript treats this differently.