bevy_editor_pls
bevy_editor_pls copied to clipboard
Compute thread crashes, fails to call windows.get_primary_mut
Just added the plugin to a mostly empty game and saw this in the logs:
thread 'Compute Task Pool (2)' panicked at 'called `Option::unwrap()` on a `None` value', /Users/pascal/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_editor_pls_default_windows-0.1.1/src/cameras/camera_3d_free.rs:130:44
I didn't even notice anything when wrong, so I gues it's not very important :)
@killercup I'm also getting this, when I close the current window. Sometimes it hangs (running from Rider) and I have to force-stop the application.
The offending line seems to be in toggle_cursor
, which tries to access the window after it is destroyed I guess?
fn toggle_cursor(
keyboard_input: Res<Input<KeyCode>>,
mut windows: ResMut<Windows>,
editor_state: Res<EditorState>,
) {
let window = windows.get_primary_mut().unwrap();
I am getting this same error using the basic.rs example, this window doesn't open for me at all. This happens with the other examples too.
System
System: MacOS 12.6.3 Graphics: AMD Radeon Pro 5300M Rust version: 1.67.1
Cargo.toml
[package]
edition = "2021"
name = "test-game"
version = "0.1.0"
# Enable max optimizations for dependencies, but not for our code:
[profile.dev.package."*"]
opt-level = 3
[dependencies]
bevy = "0.9.0"
bevy_editor_pls = "0.2.0"
Panic
2023-02-11T05:06:45.031970Z INFO bevy_render::renderer: AdapterInfo { name: "AMD Radeon Pro 5300M", vendor: 0, device: 0, device_type: DiscreteGpu, driver: "", driver_info: "", backend: Metal }
2023-02-11T05:06:46.167314Z WARN bevy_ecs::schedule::graph_utils: bevy_editor_pls_default_windows::debug_settings::fake_time::pause_time wants to be after unknown label: TimeSystem
2023-02-11T05:06:46.167842Z INFO bevy_editor_pls_default_windows::cameras: Spawning editor cameras
thread 'Compute Task Pool (5)' panicked at 'called `Option::unwrap()` on a `None` value', /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_editor_pls_default_windows-0.2.0/src/cameras/camera_3d_free.rs:130:18
stack backtrace:
0: 0x1025585f6 - std::backtrace_rs::backtrace::libunwind::trace::h0b8f2febfa937669
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
1: 0x1025585f6 - std::backtrace_rs::backtrace::trace_unsynchronized::h4f74cd180825fa00
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x1025585f6 - std::sys_common::backtrace::_print_fmt::hdf2aee729151be64
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/sys_common/backtrace.rs:65:5
3: 0x1025585f6 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hb2b3f9f8dc23cb9d
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/sys_common/backtrace.rs:44:22
4: 0x1025784da - core::fmt::write::h603bc3f9f076a504
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/fmt/mod.rs:1208:17
5: 0x1025546cc - std::io::Write::write_fmt::haffd946fd0c71703
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/io/mod.rs:1682:15
6: 0x1025583da - std::sys_common::backtrace::_print::h257072f11ba857a2
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/sys_common/backtrace.rs:47:5
7: 0x1025583da - std::sys_common::backtrace::print::hf660b768f462926e
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/sys_common/backtrace.rs:34:9
8: 0x102559c13 - std::panicking::default_hook::{{closure}}::hb5b3e9f2c6b6790b
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:267:22
9: 0x102559968 - std::panicking::default_hook::ha10903320e35543e
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:286:9
10: 0x10255a343 - std::panicking::rust_panic_with_hook::h52ed83dd7c5d1444
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:688:13
11: 0x10255a0d3 - std::panicking::begin_panic_handler::{{closure}}::h5f4e10879935eaea
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:577:13
12: 0x102558a98 - std::sys_common::backtrace::__rust_end_short_backtrace::hadc7b677a554f9f9
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/sys_common/backtrace.rs:137:18
13: 0x102559ddd - rust_begin_unwind
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:575:5
14: 0x102681fa3 - core::panicking::panic_fmt::hc10ef4c7e7c3da2e
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/panicking.rs:64:14
15: 0x102682077 - core::panicking::panic::hf65ca6694fcefa6a
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/panicking.rs:111:5
16: 0x101454a0f - core::option::Option<T>::unwrap::h19c1bdb7734943cf
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/option.rs:778:21
17: 0x101454a0f - bevy_editor_pls_default_windows::cameras::camera_3d_free::toggle_cursor::h0da30e194b1994d5
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_editor_pls_default_windows-0.2.0/src/cameras/camera_3d_free.rs:130:18
18: 0x101454a0f - core::ops::function::FnMut::call_mut::hc6230fd73d6d41a2
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/ops/function.rs:337:5
19: 0x101454a0f - core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut::h8ffac3e2b769358f
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/ops/function.rs:617:13
20: 0x1014508a3 - <Func as bevy_ecs::system::function_system::SystemParamFunction<(),Out,(F0,F1,F2),()>>::run::call_inner::heca3f21f91031cc1
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_ecs-0.9.1/src/system/function_system.rs:579:21
21: 0x1014508a3 - <Func as bevy_ecs::system::function_system::SystemParamFunction<(),Out,(F0,F1,F2),()>>::run::hae9e84996808aa45
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_ecs-0.9.1/src/system/function_system.rs:582:17
22: 0x1014508a3 - <bevy_ecs::system::function_system::FunctionSystem<In,Out,Param,Marker,F> as bevy_ecs::system::system::System>::run_unsafe::ha21d1a87585ec3b5
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_ecs-0.9.1/src/system/function_system.rs:409:19
23: 0x10246b309 - bevy_ecs::schedule::executor_parallel::ParallelExecutor::prepare_systems::{{closure}}::hfd2d20696bba4af1
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_ecs-0.9.1/src/schedule/executor_parallel.rs:218:26
24: 0x10246b309 - bevy_ecs::schedule::executor_parallel::ParallelExecutor::prepare_systems::{{closure}}::h009a9e1ccc62e469
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_ecs-0.9.1/src/schedule/executor_parallel.rs:258:21
25: 0x10246b309 - async_executor::Executor::spawn::{{closure}}::h1493a79d70d00b5e
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/async-executor-1.5.0/src/lib.rs:139:19
26: 0x10246b309 - async_task::raw::RawTask<F,T,S>::run::h187994ce3484df0b
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/async-task-4.3.0/src/raw.rs:511:20
27: 0x102518f9b - async_executor::Executor::run::{{closure}}::{{closure}}::h82d41e9bc4045d0b
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/async-executor-1.5.0/src/lib.rs:230:21
28: 0x102518f9b - <futures_lite::future::Or<F1,F2> as core::future::future::Future>::poll::h180c9238ffb2642f
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-lite-1.12.0/src/future.rs:529:33
29: 0x10251b3af - async_executor::Executor::run::{{closure}}::h349309beafbf3c87
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/async-executor-1.5.0/src/lib.rs:237:31
30: 0x10251b59b - futures_lite::future::block_on::{{closure}}::h02245a1ee75fe98e
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-lite-1.12.0/src/future.rs:89:27
31: 0x10251b59b - std::thread::local::LocalKey<T>::try_with::hfe50efce12165539
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/thread/local.rs:446:16
32: 0x10251b59b - std::thread::local::LocalKey<T>::with::h9156a2c2ad9f6ea7
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/thread/local.rs:422:9
33: 0x10251b80e - futures_lite::future::block_on::he50bf016fe36b527
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-lite-1.12.0/src/future.rs:79:5
34: 0x10251b80e - bevy_tasks::task_pool::TaskPool::new_internal::{{closure}}::{{closure}}::{{closure}}::{{closure}}::h3fd3fc97f969a946
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_tasks-0.9.1/src/task_pool.rs:128:37
35: 0x10251b80e - std::panicking::try::do_call::hf942357120f5e9a4
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:483:40
36: 0x10251b80e - std::panicking::try::hed68b4f8280de8f2
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:447:19
37: 0x10251b80e - std::panic::catch_unwind::h52a8ec4188b4c4e3
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panic.rs:137:14
38: 0x10251b80e - bevy_tasks::task_pool::TaskPool::new_internal::{{closure}}::{{closure}}::{{closure}}::h3477413bd96f539c
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_tasks-0.9.1/src/task_pool.rs:122:43
39: 0x10251b80e - std::thread::local::LocalKey<T>::try_with::h039a542d4f445ae5
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/thread/local.rs:446:16
40: 0x10251b80e - std::thread::local::LocalKey<T>::with::hac5fd568d9d70f7b
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/thread/local.rs:422:9
41: 0x10251aac1 - bevy_tasks::task_pool::TaskPool::new_internal::{{closure}}::{{closure}}::he62a14cea9b18d33
at /Users/kevinglasson/.cargo/registry/src/github.com-1ecc6299db9ec823/bevy_tasks-0.9.1/src/task_pool.rs:120:25
42: 0x10251aac1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h729190cdfd825f2d
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/sys_common/backtrace.rs:121:18
43: 0x10251cc3e - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h5274d377deaf1c88
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/thread/mod.rs:550:17
44: 0x10251cc3e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h5edfac4a89482aef
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/panic/unwind_safe.rs:271:9
45: 0x10251cc3e - std::panicking::try::do_call::h6d8ef154d57ac721
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:483:40
46: 0x10251cc3e - std::panicking::try::h5c6929760df61467
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:447:19
47: 0x10251cc3e - std::panic::catch_unwind::hdc3ff99d96f9d17e
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panic.rs:137:14
48: 0x10251cc3e - std::thread::Builder::spawn_unchecked_::{{closure}}::hceaadf7ae36215ad
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/thread/mod.rs:549:30
49: 0x10251cc3e - core::ops::function::FnOnce::call_once{{vtable.shim}}::h61cf95bb3bdf5dc3
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/ops/function.rs:507:5
50: 0x10255e717 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7c8ede2e3550473e
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/alloc/src/boxed.rs:2000:9
51: 0x10255e717 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6906883c713b69be
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/alloc/src/boxed.rs:2000:9
52: 0x10255e717 - std::sys::unix::thread::Thread::new::thread_start::he272a3f7edb058e0
at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/sys/unix/thread.rs:108:17
53: 0x7ff8157264e1 - __pthread_start
I removed the toggle_cursor function, so this should be fixed now