https://bugs.winehq.org/show_bug.cgi?id=50758
Bug ID: 50758 Summary: Vbscript does not handle recursive calls Product: Wine Version: 6.3 Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: vbscript Assignee: wine-bugs@winehq.org Reporter: bunglehead@gmail.com Distribution: ---
Test with postgresql-9.3 installer from [1]. It runs a script during installation that reports non-critical error to main install, script itself terminates.
Reduced test case for this looks like this:
--- function recursingfunction(x) if (x) then exit function call recursingfunction(True) end function
call recursingfunction(False) ---
That leads to the following fixme, exactly that happens with the installer:
--- 0024:fixme:vbscript:variant_call unsupported on 006BF6F0 {VT_EMPTY} ---
[1] https://www.enterprisedb.com/postgresql-tutorial-resources-training?cid=340
https://bugs.winehq.org/show_bug.cgi?id=50758
--- Comment #1 from Nikolay Sivov bunglehead@gmail.com --- Installer I used for this is:
755d10cdf6c8a667aae155ebbf104930aa05ca56 postgresql-9.3.25-1-windows-x64.exe
https://bugs.winehq.org/show_bug.cgi?id=50758
Robert Wilhelm sloper42@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sloper42@yahoo.com
https://bugs.winehq.org/show_bug.cgi?id=50758
Robert Wilhelm sloper42@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, patch
--- Comment #2 from Robert Wilhelm sloper42@yahoo.com --- I send a patch for review: https://source.winehq.org/patches/data/214563
https://bugs.winehq.org/show_bug.cgi?id=50758
Robert Wilhelm sloper42@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords|patch |
--- Comment #3 from Robert Wilhelm sloper42@yahoo.com --- Patch was rejected because it breaks other vbscript code.
https://bugs.winehq.org/show_bug.cgi?id=50758
Robert Wilhelm sloper42@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |4f5e5cc63f5fa40d198c3cae606 | |33d7de0c03bc0 Resolution|--- |FIXED Status|NEW |RESOLVED
--- Comment #4 from Robert Wilhelm sloper42@yahoo.com --- Reduced test case is fixed in 6.19 after https://source.winehq.org/patches/data/216824.
I did not run postgresql installer.
https://bugs.winehq.org/show_bug.cgi?id=50758
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://web.archive.org/web | |/20211009084355if_/https:// | |get.enterprisedb.com/postgr | |esql/postgresql-9.3.25-1-wi | |ndows-x64.exe
--- Comment #5 from Gijs Vermeulen gijsvrm@gmail.com --- Adding stable download.
$ sha1sum postgresql-9.3.25-1-windows-x64.exe 755d10cdf6c8a667aae155ebbf104930aa05ca56 postgresql-9.3.25-1-windows-x64.exe
$ du -sh postgresql-9.3.25-1-windows-x64.exe 58M postgresql-9.3.25-1-windows-x64.exe
https://bugs.winehq.org/show_bug.cgi?id=50758
--- Comment #6 from Nikolay Sivov bunglehead@gmail.com --- Installer runs with error box at the end about failing to start DB service.
I don't know if it's related but vbscript traces have this:
02e0:fixme:vbscript:interp_is Unhandled type 0000000000084178 {VT_EMPTY} 02e0:fixme:vbscript:stack_pop_disp not disp 0000000000084178 {VT_EMPTY} 02e0:fixme:vbscript:stack_pop_disp not disp 0000000000084178 {VT_EMPTY} 02e0:fixme:vbscript:interp_is Unhandled type 0000000000084178 {VT_EMPTY} 02e0:fixme:vbscript:stack_pop_disp not disp 0000000000084178 {VT_EMPTY} 02e0:fixme:vbscript:stack_pop_disp not disp 0000000000084178 {VT_EMPTY} 02e0:fixme:vbscript:stack_pop_bool unsupported for 000000000005E080 {VT_BSTR: L"0"}
Might be interesting. Installer also uses a bunch of scrrun/wshom problems.
Robert, thank you for taking time to fix recursive case.
https://bugs.winehq.org/show_bug.cgi?id=50758
--- Comment #7 from Robert Wilhelm sloper42@yahoo.com --- Nikolay, thanks for testing with installer.
Op_is is used for "is" expressions, e.g. obj is Nothing or obj is obj_type
"Empty" is no object, therefore I think vbscript fixmes look like subsequent faults of wshom/wbem issues. I will try to investigate further.
https://bugs.winehq.org/show_bug.cgi?id=50758
--- Comment #8 from Robert Wilhelm sloper42@yahoo.com --- Script file can be found here:
https://github.com/three-plus-three/tpt_env_amd64/blob/master/postgresql/ins...
This is interesting: 02e0:fixme:vbscript:stack_pop_bool unsupported for 000000000005E080 {VT_BSTR: L"0"}
it shows following vbs code is not supported:
if "0" then ... end if
I will open new bug report.
https://bugs.winehq.org/show_bug.cgi?id=50758
--- Comment #9 from Robert Wilhelm sloper42@yahoo.com --- I opened followup https://bugs.winehq.org/show_bug.cgi?id=51911 for if clause issue.
https://bugs.winehq.org/show_bug.cgi?id=50758
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #10 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 6.20.