PolyMeilex / PolyMeilex/Neothesia

Crash when minimalize the window on Windows 10

Open
#189 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Rust
Stars
1.5k
Forks
115
Avg merge
7h 48m
Merged PRs (30d)
8

Description

When minimalize the window, it crash.
Here is the stack backtrace.

E:\Download>set RUST_BACKTRACE=full

E:\Download>neothesia.exe
[2024-07-13T01:27:32Z WARN  wgpu_jumpstart::instances] Dynamically growing instances buffer from 150 to 274
thread 'main' panicked at D:\SDK\Rust\cargo\registry\src\index.crates.io-6f17d22bba15001f\wgpu-0.19.4\src\backend\wgpu_core.rs:724:18:
Error in Surface::configure: Validation Error

Caused by:
    Both `Surface` width and height must be non-zero. Wait to recreate the `Surface` until the window has non-zero area.

stack backtrace:
   0:     0x7ff6dd39fe9a - <unknown>
   1:     0x7ff6dd3bc3fb - <unknown>
   2:     0x7ff6dd39ba91 - <unknown>
   3:     0x7ff6dd39fc86 - <unknown>
   4:     0x7ff6dd3a1e2f - <unknown>
   5:     0x7ff6dd3a1ac7 - <unknown>
   6:     0x7ff6dd3a236d - <unknown>
   7:     0x7ff6dd3a2229 - <unknown>
   8:     0x7ff6dd3a0529 - <unknown>
   9:     0x7ff6dd3a1ee6 - <unknown>
  10:     0x7ff6dd3c7537 - <unknown>
  11:     0x7ff6dc953ab7 - <unknown>
  12:     0x7ff6dc95a184 - <unknown>
  13:     0x7ff6dc970863 - <unknown>
  14:     0x7ff6dc92ae18 - <unknown>
  15:     0x7ff6dc7ecaf5 - <unknown>
  16:     0x7ff6dba63932 - <unknown>
  17:     0x7ff6dba64b46 - <unknown>
  18:     0x7ff6dba98d16 - <unknown>
  19:     0x7ff6dbaaf929 - <unknown>
  20:     0x7ff6dc7a3418 - <unknown>
  21:     0x7ff6dc7983dc - <unknown>
  22:     0x7ff6dc7bbd14 - <unknown>
  23:     0x7ff6dc7b52d4 - <unknown>
  24:     0x7ff6dc7bb903 - <unknown>
  25:     0x7ff6dc7b4efa - <unknown>
  26:     0x7ff6dc7ab279 - <unknown>
  27:     0x7ff6dc79734f - <unknown>
  28:     0x7ff6dc7982db - <unknown>
  29:     0x7ff6dc798198 - <unknown>
  30:     0x7ff6dc77918f - <unknown>
  31:     0x7ff6dc77e6aa - <unknown>
  32:     0x7ff6dc79d4e7 - <unknown>
  33:     0x7ff6dc7bbcb1 - <unknown>
  34:     0x7ff6dc7b5315 - <unknown>
  35:     0x7ff6dc7bb903 - <unknown>
  36:     0x7ff6dc7b4cf4 - <unknown>
  37:     0x7ff6dc7ab289 - <unknown>
  38:     0x7ff6dc796fbf - <unknown>
  39:     0x7ff6dc77bc06 - <unknown>
  40:     0x7ff6dc77b8ce - <unknown>
  41:     0x7ff9ec0fe7e8 - CallWindowProcW
  42:     0x7ff9ec0fe47e - CallWindowProcW
  43:     0x7ff9795af1b0 - glPushClientAttrib
  44:     0x7ff9ec0fe7e8 - CallWindowProcW
  45:     0x7ff9ec0fe36c - DispatchMessageW
  46:     0x7ff9ec110f93 - SendMessageTimeoutW
  47:     0x7ff9ee070ba4 - KiUserCallbackDispatcher
  48:     0x7ff9eb7e1124 - NtUserMessageCall
  49:     0x7ff9ec0fdec3 - SendMessageW
  50:     0x7ff9ec0fcb53 - GetWindowTextW
  51:     0x7ff9ec0fc23f - IsIconic
  52:     0x7ff9e909b889 - IsCompositionActive
  53:     0x7ff9e909b271 - IsCompositionActive
  54:     0x7ff9ec0fc773 - GetWindowTextW
  55:     0x7ff6dc77bc55 - <unknown>
  56:     0x7ff6dc77b8ce - <unknown>
  57:     0x7ff9ec0fe7e8 - CallWindowProcW
  58:     0x7ff9ec0fe47e - CallWindowProcW
  59:     0x7ff9795af1b0 - glPushClientAttrib
  60:     0x7ff9ec0fe7e8 - CallWindowProcW
  61:     0x7ff9ec0fe36c - DispatchMessageW
  62:     0x7ff9ec1160c0 - LookupIconIdFromDirectoryEx
  63:     0x7ff9ee070ba4 - KiUserCallbackDispatcher
  64:     0x7ff9eb7e1124 - NtUserMessageCall
  65:     0x7ff9ec0fca85 - GetWindowTextW
  66:     0x7ff9ec0fc23f - IsIconic
  67:     0x7ff9e9099722 - GetUserColorPreference
  68:     0x7ff9e90b3482 - Ordinal96
  69:     0x7ff9e909b809 - IsCompositionActive
  70:     0x7ff9e909b271 - IsCompositionActive
  71:     0x7ff9ec0fc773 - GetWindowTextW
  72:     0x7ff6dc77bc55 - <unknown>
  73:     0x7ff6dc77b8ce - <unknown>
  74:     0x7ff9ec0fe7e8 - CallWindowProcW
  75:     0x7ff9ec0fe47e - CallWindowProcW
  76:     0x7ff9795af1b0 - glPushClientAttrib
  77:     0x7ff9ec0fe7e8 - CallWindowProcW
  78:     0x7ff9ec0fe36c - DispatchMessageW
  79:     0x7ff9ec110f93 - SendMessageTimeoutW
  80:     0x7ff9ee070ba4 - KiUserCallbackDispatcher
  81:     0x7ff9eb7e1124 - NtUserMessageCall
  82:     0x7ff9ec0fca85 - GetWindowTextW
  83:     0x7ff9ec0fc23f - IsIconic
  84:     0x7ff9e9099722 - GetUserColorPreference
  85:     0x7ff9e90b33d7 - Ordinal96
  86:     0x7ff9e909b809 - IsCompositionActive
  87:     0x7ff9e909b271 - IsCompositionActive
  88:     0x7ff9ec0fc773 - GetWindowTextW
  89:     0x7ff6dc77bc55 - <unknown>
  90:     0x7ff6dc77b8ce - <unknown>
  91:     0x7ff9ec0fe7e8 - CallWindowProcW
  92:     0x7ff9ec0fe47e - CallWindowProcW
  93:     0x7ff9795af1b0 - glPushClientAttrib
  94:     0x7ff9ec0fe7e8 - CallWindowProcW
  95:     0x7ff9ec0fe229 - DispatchMessageW
  96:     0x7ff6dbaafbff - <unknown>
  97:     0x7ff6dbaaf6dd - <unknown>
  98:     0x7ff6dbab0536 - <unknown>
  99:     0x7ff6dba98c02 - <unknown>
 100:     0x7ff6dba64e7c - <unknown>
 101:     0x7ff6db9d842b - <unknown>
 102:     0x7ff6dba4691e - <unknown>
 103:     0x7ff6dbab3ed1 - <unknown>
 104:     0x7ff6dd393582 - <unknown>
 105:     0x7ff6dbab3eaa - <unknown>
 106:     0x7ff6dba65ce9 - <unknown>
 107:     0x7ff6dd3c4f1c - <unknown>
 108:     0x7ff9eccc7034 - BaseThreadInitThunk
 109:     0x7ff9ee022651 - RtlUserThreadStart

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the crash on Windows 10 with the window minimized and read the reported wgpu Surface::configure validation error at wgpu_core.rs:724. Trace the application's window-resize and rendering entry points to find where a zero-size surface is configured. Done means minimizing no longer panics and rendering resumes when the window is restored.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
computer-graphics, desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.