https://bugs.winehq.org/show_bug.cgi?id=52628
Bug ID: 52628 Summary: game frozen after opening due to infinite loop in winmm.mmioDescend() Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: winmm&mci Assignee: wine-bugs@winehq.org Reporter: l12436@yahoo.com.tw Distribution: ---
Created attachment 71949 --> https://bugs.winehq.org/attachment.cgi?id=71949 fix patch for infinite loop
in winmm, mmio.c, function mmioDescend() around line 1232 there are a loop for mmioRead() mmioSeek() ...
some old game using mmioDescend() and mmioRead() has a chance that always return -1 causing infinite loop.
My only solution now is to skip that loop when mmioRead() return -1.
This affect some old game like poppo, Silk Road ~Tale of the Star Island~ made by Sprite