https://bugs.winehq.org/show_bug.cgi?id=51671
Bug ID: 51671 Summary: Random Dungeon: Can't show load screen. Product: Wine Version: 6.15 Hardware: x86-64 URL: https://web.archive.org/web/20210608124325if_/http://f tp.vector.co.jp/59/61/3173/RandomdungeonVer170.zip OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: winsock Assignee: wine-bugs@winehq.org Reporter: sagawa.aki+winebugs@gmail.com Distribution: Ubuntu
Created attachment 70546 --> https://bugs.winehq.org/attachment.cgi?id=70546 Errno::ENOTSOCK occurred
Random Dungeon (ja:らんだむダンジョン[1]) is a dungeon exploring game made with RPG Tkool VX. It works well on Wine 6.0.1. However, on Wine 6.15, we can't load the game anymore. When I choose "コンティニュー" (continue) on the title screen, it shows an error message (see attachment).
It might be common among RPG Tkool VX Runtime and RPG Maker VX Runtime.
Steps to reproduce: 1. Download RPG Tkool VX runtime, vx_rtp202.zip from [2]. SHA1(vx_rtp202.zip) = 351b4e528dc6ed4ed9988f0a636da6b1df48d6f2 2. unzip vx_rtp202.zip 3. cd RPGVX_RTP202 4. Install RPG Tkool VX runtime, i.e. LANG=ja_JP.UTF-8 wine setup.exe, and follow the setup wizard. 5. Download Random Dungeon Ver.1.70, RandomdungeonVer170.zip. SHA1(RandomdungeonVer170.zip) = 718599f84995878d6b82c93380035169543de866 6. unzip RandomdungeonVer170.zip 7. cd RandodungeonVer170 8. touch Save1.rvdata 9. LANG=ja_JP.UTF-8 wine Game.exe 10. On the title screen, move the cursor with arrow keys, focus "コンティニュー" (continue) and hit the [Enter].
Expected result: It shows load screen. You can choose a file to load.
Actual result: It shows a message box with the following message and will terminate after clicking [OK]. スクリプト 'Window_SaveFile' の 51 行目で Errno::ENOTSOCK が発生しました。 (translation: Errno::ENOTSOCK occurred in script 'Window_SaveFile' at line 51.) See the attachment for details.
[1] http://hamusuta.blog-rpg.com/Entry/9/ [2] https://tkool.jp/products/rtp/vx_rtp202.zip
https://bugs.winehq.org/show_bug.cgi?id=51671
Sagawa sagawa.aki+winebugs@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, regression Regression SHA1| |b58ca92fa53088a87c4c33a1e31 | |c0d4ec1a43a1c
--- Comment #1 from Sagawa sagawa.aki+winebugs@gmail.com --- The game tries to call getsockopt() with a normal file handle. At the time of writing, the error code is translated to WSAEOPNOTSUPP. But, it expected to be WSAENOTSOCK (and it was).
git bisect shows the first bad commit is: commit b58ca92fa53088a87c4c33a1e31c0d4ec1a43a1c Author: Zebediah Figura z.figura12@gmail.com Date: Wed Jun 30 20:24:35 2021 -0500
ws2_32: Reimplement getsockopt(SO_TYPE) on top of ws_protocol_info().
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
dlls/ws2_32/socket.c | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-)
https://bugs.winehq.org/show_bug.cgi?id=51671
--- Comment #2 from Sagawa sagawa.aki+winebugs@gmail.com --- I sent a patch, https://source.winehq.org/patches/data/212346 .
https://bugs.winehq.org/show_bug.cgi?id=51671
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
--- Comment #3 from Zebediah Figura z.figura12@gmail.com --- Looks like a duplicate of bug 51232, actually? (Or we could resolve that as a duplicate of this one.)
https://bugs.winehq.org/show_bug.cgi?id=51671
--- Comment #4 from Rafał Mużyło galtgendo@o2.pl --- zf:
If I were to make a guess, this might be the very same problem I've asked you awhile ago (at wine 6.12) in the chat and you gave me a patch back then (one for WS_getsockopt, skipping early if socket_list_find fails).
https://bugs.winehq.org/show_bug.cgi?id=51671
--- Comment #5 from Sagawa sagawa.aki+winebugs@gmail.com --- Hi Zebediah, Bug 51232 addresses a slightly different issue. In that bug, the reporter said getsockopt() with a file descriptor returned by open() caused WSAEBADF, not WSAENOTSOCK.
On the other hand, in this bug, we discuss a file handle returned by CreateFile(). With a file handle, getsockopt() was able to cause WSAENOTSOCK before the commit b58ca92fa53088a87c4c33a1e31c0d4ec1a43a1c.
https://bugs.winehq.org/show_bug.cgi?id=51671
Sagawa sagawa.aki+winebugs@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |ffe20add5812fc45267af22aaa2 | |af7d4e9a39d0e Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED
--- Comment #6 from Sagawa sagawa.aki+winebugs@gmail.com --- Fixed by https://source.winehq.org/git/wine.git/commit/ffe20add5812fc45267af22aaa2af7... .
https://bugs.winehq.org/show_bug.cgi?id=51671
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #7 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 6.16.