http://bugs.winehq.org/show_bug.cgi?id=4479
Summary: Bounds error in rich edit EM_FINDTEXT Product: Wine Version: CVS Platform: All OS/Version: All Status: UNCONFIRMED Severity: normal Priority: P2 Component: wine-richedit AssignedTo: wine-bugs@winehq.org ReportedBy: tkho@ucla.edu CC: dank@kegel.com
Bug 4144 mentions a problem in finding text where the second occurance of 'blah' in 'blahblah' would not be found. A simpler case is finding 'blah' in the range (0, 4) in document 'blah', which fails only with Wine.
A rich edit conformance test posted several days ago shows this behavior: http://www.winehq.org/pipermail/wine-patches/2006-January/023871.html
Variable values during the three find statements (lines 148-153 of the patch) are: fixme:richedit:ME_FindText paraofs=0 rowofs=0, nstart=0, nlen=4, nmax=8 fixme:richedit:ME_FindText paraofs=0 rowofs=0, nstart=4, nlen=4, nmax=8 fixme:richedit:ME_FindText paraofs=0 rowofs=0, nstart=4, nlen=4, nmax=9
Here's the mention from bug 4144: --snip-- (One interesting note: A Find done not-whole-word will miss a second version of the word in a row. Ex.: in blahblah only the first "blah" is found, while if RichEd20.dll is not loaded the Find is almost entirely malfunctional. It's possible those issues are partially connected to some problem with offset position numbers used to start the Find. In both the control and API the RTB text has a zero-based offset system, but Wine could be starting text at 1? ) --snip--