https://bugs.winehq.org/show_bug.cgi?id=42353
Bug ID: 42353 Summary: OllyDbg Step In on a "jump to self" instruction never stops if it's the first instruction executed by debuggee Product: Wine Version: 2.0 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: dbghelp Assignee: wine-bugs@winehq.org Reporter: b7.10110111@gmail.com Distribution: ---
To reproduce
1. Launch OllyDbg (tested on 2.01) 2. Open an application, e.g. Test.exe coming in the OllyDbg distribution 3. After it loads, press <Space>, then in Assemble dialog type dw 0xfeeb and press <Enter> (or click Assemble button). This should assemble a `jmp short <ModuleEntryPoint>` instruction. 4. Close Assemble dialog 5. Press F7 (shortcut for Step In) 6. See that right-bottom corner of the window (right-hand side of status bar) has "Step in" text, which never switches back to Paused.
This result is wrong: the Step In action should set TF in EFLAGS, so that next pass of control to debuggee will trap after executing one instruction. In Windows XP OllyDbg gets control back immediately after pressing F7, while in Wine this never happens at all with `jmp short $` instruction unless EIP changes.
The same happens if instead of `EB FE` instruction you use `E9 FB FF FF FF`, which is `jmp near $`.
Note that if you press F7 before step 3, everything works as expected.
https://bugs.winehq.org/show_bug.cgi?id=42353
Ruslan Kabatsayev b7.10110111@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |http://www.ollydbg.de/versi | |on2.html
https://bugs.winehq.org/show_bug.cgi?id=42353
--- Comment #1 from Ruslan Kabatsayev b7.10110111@gmail.com --- Still present in wine-2.15-74-g083e61f.
https://bugs.winehq.org/show_bug.cgi?id=42353
--- Comment #2 from Ruslan Kabatsayev b7.10110111@gmail.com --- Still present in wine-2.22-158-g47e9e91.
https://bugs.winehq.org/show_bug.cgi?id=42353
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|OllyDbg Step In on a "jump |OllyDbg 2.x: Step In (F7) |to self" instruction never |on a "jump to self" |stops if it's the first |instruction never stops if |instruction executed by |it's the first instruction |debuggee |executed by debuggee CC| |focht@gmx.net URL|http://www.ollydbg.de/versi |https://web.archive.org/web |on2.html |/20140209193012/http://olly | |dbg.de/odbg201.zip Status|UNCONFIRMED |NEEDINFO Component|dbghelp |ntdll Ever confirmed|0 |1
--- Comment #3 from Anastasius Focht focht@gmx.net --- Hello folks,
adding stable download link via Internet Archive:
https://web.archive.org/web/20140209193012/http://ollydbg.de/odbg201.zip
I can't confirm this behavior - even with old Wine 2.0 and versions referenced in comments. Tested with 'Test.exe' that is part of OllyDbg and debugger default settings, such as 'Make first pause at entry point of main module' (under 'Debugging' -> 'Start').
Please retest and provide +seh,+relay,+server logs in case it still happens.
$ sha1sum odbg201.zip d41fe77a2801d38476f20468ab61ddce14c3abb8 odbg201.zip
$ du -sh odbg201.zip 6.7M odbg201.zip
$ wine --version wine-2.0
Regards
https://bugs.winehq.org/show_bug.cgi?id=42353
Ruslan Kabatsayev b7.10110111@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|NEEDINFO |RESOLVED
--- Comment #4 from Ruslan Kabatsayev b7.10110111@gmail.com --- This no longer reproduces for me.
https://bugs.winehq.org/show_bug.cgi?id=42353
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #5 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 6.2.