Skip to content

Fix flake crash when closing menu while a tooltip is displayed - #1

Merged
Omega172 merged 2 commits into
OmegaWareProjects:masterfrom
inFocus7:fix-endtooltip
Nov 9, 2026
Merged

Omega172 merged 2 commits into
OmegaWareProjects:masterfrom
inFocus7:fix-endtooltip

Conversation

@inFocus7

@inFocus7 inFocus7 commented Nov 9, 2026

Copy link
Copy Markdown
Contributor

Context

Whenever I closed the Payday 3 mod menu while I was hovered over a tooltip, there was a non-zero chance the game would completely freeze.

EndTooltip() always calls End(), but BeginTooltip() skips Begin() while the menu is hidden. So, closing the menu while a tooltip is showing pops the caller’s window. That leaves pCurrentWindow null, and the next GUI call crashes.

Changes

  • Update the TooltipEnd function, to verify the closed window is a tooltip.
  • Update BeginTooltip to return false if one was not opened (similar to BeginPopup)
  • Update SetTooltip to do a startup check.

Findings/Logs

[error] Invoke | feature "clientmove" faulted in DrawMenu (code 0xc0000005 at version.dll+0x176df1), feature disabled
[error] listener faulted in OnFrame (code 0xC0000005 at version.dll+0x182c23), listener disabled

I could do a deeper dive into dumps, but I'm a newbie at low level debugging, and this felt fairly straightforward/safe.

Validation

  1. Boot up Payday 3 with latest main (v3?) version of the omegaware mod suite -- it uses this GUI
  2. Hover over an item with a tooltip
  3. Close the menu
  4. Best case, the mod gui crashes, worst-case the game freezes.

(4) may need to be tried a few times, it is a flakey behavior --

Notes:

  • I've only tried with the direct proxy dll, not the injectable version.
  • Only verified on controller.

Verification

Locally A/B tested in Payday 3, both without and with these changes. Did not hit any issues with these changes.

…losing mod menu)

Signed-off-by: Fabian Gonzalez <fabiangonz98@gmail.com>
Signed-off-by: Fabian Gonzalez <fabiangonz98@gmail.com>
@Omega172
Omega172 merged commit 4317011 into OmegaWareProjects:master Nov 9, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants