Skip to content

Use of tracing in Drop will cause SIGABRT in thread-local context #231

@enomado

Description

@enomado

I'm writting an egui app. And from some point of time my app stop terminating gracefully. And I git few panics instead.

A quick investigation led me to the idea that the order of Drop is not controlled in any way, and thread-local tracing was dropped first, so by the time the tracing method was called with nothing.

panic thread 'main' panicked at 'Thread count overflowed the configured max count. Thread index = 18446744073709551615, max threads = 4096.': /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sharded-slab-0.1.7/src/shard.rs:295   0: ss_common::setup::panic_log::panic_hook
             at ./crates/lib/ss_common/src/setup/panic_log.rs:43:21
   1: core::ops::function::Fn::call
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:79:5
   2: <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/alloc/src/boxed.rs:1984:9
   3: std::panicking::rust_panic_with_hook
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:841:13
   4: std::panicking::begin_panic_handler::{{closure}}
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:706:13
   5: std::sys::backtrace::__rust_end_short_backtrace
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/sys/backtrace.rs:168:18
   6: __rustc::rust_begin_unwind
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:697:5
   7: core::panicking::panic_fmt
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/panicking.rs:75:14
   8: sharded_slab::shard::Array<T,C>::current
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sharded-slab-0.1.7/src/shard.rs:295:9
   9: sharded_slab::pool::Pool<T,C>::create
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sharded-slab-0.1.7/src/pool.rs:452:28
  10: sharded_slab::pool::Pool<T,C>::create_with
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sharded-slab-0.1.7/src/pool.rs:656:25
  11: <tracing_subscriber::registry::sharded::Registry as tracing_core::subscriber::Subscriber>::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-subscriber-0.3.19/src/registry/sharded.rs:246:18
  12: <tracing_subscriber::layer::layered::Layered<L,S> as tracing_core::subscriber::Subscriber>::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-subscriber-0.3.19/src/layer/layered.rs:126:18
  13: <tracing_subscriber::layer::layered::Layered<L,S> as tracing_core::subscriber::Subscriber>::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-subscriber-0.3.19/src/layer/layered.rs:126:18
  14: <tracing_subscriber::layer::layered::Layered<L,S> as tracing_core::subscriber::Subscriber>::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-subscriber-0.3.19/src/layer/layered.rs:126:18
  15: tracing_core::dispatcher::Dispatch::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-core-0.1.33/src/dispatcher.rs:559:9
  16: tracing::span::Span::make_with
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:569:18
  17: tracing::span::Span::new_with
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:448:9
  18: tracing::span::Span::new::{{closure}}
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:437:44
  19: tracing_core::dispatcher::get_default
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-core-0.1.33/src/dispatcher.rs:389:16
  20: tracing::span::Span::new
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:437:9
  21: polling::epoll::Poller::delete
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/polling-3.7.4/src/epoll.rs:145:20
  22: polling::Poller::delete
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/polling-3.7.4/src/lib.rs:689:9
  23: <calloop::sources::generic::Generic<F,E> as core::ops::drop::Drop>::drop
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/generic.rs:254:13
  24: core::ptr::drop_in_place<calloop::sources::generic::Generic<std::os::fd::owned::BorrowedFd>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  25: core::ptr::drop_in_place<calloop::sources::DispatcherInner<calloop::sources::generic::Generic<std::os::fd::owned::BorrowedFd>,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  26: core::ptr::drop_in_place<core::cell::UnsafeCell<calloop::sources::DispatcherInner<calloop::sources::generic::Generic<std::os::fd::owned::BorrowedFd>,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  27: core::ptr::drop_in_place<core::cell::RefCell<calloop::sources::DispatcherInner<calloop::sources::generic::Generic<std::os::fd::owned::BorrowedFd>,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  28: core::ptr::drop_in_place<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  29: alloc::rc::Rc<T,A>::drop_slow
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:388:13
  30: <alloc::rc::Rc<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:2312:17
  31: core::ptr::drop_in_place<alloc::rc::Rc<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  32: core::ptr::drop_in_place<core::option::Option<alloc::rc::Rc<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  33: core::ptr::drop_in_place<calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  34: core::ptr::drop_in_place<[calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>]>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  35: <alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs:3798:13
  36: core::ptr::drop_in_place<alloc::vec::Vec<calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  37: core::ptr::drop_in_place<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  38: core::ptr::drop_in_place<core::cell::UnsafeCell<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  39: core::ptr::drop_in_place<core::cell::RefCell<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  40: core::ptr::drop_in_place<calloop::loop_logic::LoopInner<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  41: alloc::rc::Rc<T,A>::drop_slow
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:388:13
  42: <alloc::rc::Rc<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:2312:17
  43: core::ptr::drop_in_place<alloc::rc::Rc<calloop::loop_logic::LoopInner<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  44: core::ptr::drop_in_place<calloop::loop_logic::LoopHandle<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  45: core::ptr::drop_in_place<calloop::loop_logic::EventLoop<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  46: core::ptr::drop_in_place<winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  47: core::ptr::drop_in_place<winit::platform_impl::linux::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  48: core::ptr::drop_in_place<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  49: core::ptr::drop_in_place<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  50: core::ptr::drop_in_place<core::cell::UnsafeCell<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  51: core::ptr::drop_in_place<core::cell::RefCell<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  52: std::sys::thread_local::native::eager::destroy::{{closure}}
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/native/eager.rs:70:13
  53: std::sys::thread_local::abort_on_dtor_unwind
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/mod.rs:187:5
  54: std::sys::thread_local::native::eager::destroy
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/native/eager.rs:64:5
  55: __call_tls_dtors
  56: <unknown>
  57: exit
  58: <unknown>
  59: __libc_start_main
  60: _start

panic thread 'main' panicked at 'panic in a destructor during cleanup': library/core/src/panicking.rs:226   0: ss_common::setup::panic_log::panic_hook
             at ./crates/lib/ss_common/src/setup/panic_log.rs:43:21
   1: core::ops::function::Fn::call
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:79:5
   2: <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/alloc/src/boxed.rs:1984:9
   3: std::panicking::rust_panic_with_hook
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:841:13
   4: std::panicking::begin_panic_handler::{{closure}}
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:699:13
   5: std::sys::backtrace::__rust_end_short_backtrace
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/sys/backtrace.rs:168:18
   6: __rustc::rust_begin_unwind
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:697:5
   7: core::panicking::panic_nounwind_fmt::runtime
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/panicking.rs:117:22
   8: core::panicking::panic_nounwind_fmt
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/intrinsics/mod.rs:3240:9
   9: core::panicking::panic_nounwind_nobacktrace
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/panicking.rs:226:5
  10: core::panicking::panic_in_cleanup
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/panicking.rs:339:5
  11: <calloop::sources::generic::Generic<F,E> as core::ops::drop::Drop>::drop
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/generic.rs:251:5
  12: core::ptr::drop_in_place<calloop::sources::generic::Generic<calloop::sources::ping::eventfd::ArcAsFd>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  13: core::ptr::drop_in_place<calloop::sources::ping::eventfd::PingSource>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  14: core::ptr::drop_in_place<calloop::sources::DispatcherInner<calloop::sources::ping::eventfd::PingSource,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  15: core::ptr::drop_in_place<core::cell::UnsafeCell<calloop::sources::DispatcherInner<calloop::sources::ping::eventfd::PingSource,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  16: core::ptr::drop_in_place<core::cell::RefCell<calloop::sources::DispatcherInner<calloop::sources::ping::eventfd::PingSource,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  17: core::ptr::drop_in_place<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  18: alloc::rc::Rc<T,A>::drop_slow
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:388:13
  19: <alloc::rc::Rc<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:2312:17
  20: core::ptr::drop_in_place<alloc::rc::Rc<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  21: core::ptr::drop_in_place<core::option::Option<alloc::rc::Rc<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  22: core::ptr::drop_in_place<calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  23: core::ptr::drop_in_place<[calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>]>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  24: <alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs:3798:13
  25: core::ptr::drop_in_place<alloc::vec::Vec<calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  26: core::ptr::drop_in_place<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  27: core::ptr::drop_in_place<core::cell::UnsafeCell<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  28: core::ptr::drop_in_place<core::cell::RefCell<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  29: core::ptr::drop_in_place<calloop::loop_logic::LoopInner<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  30: alloc::rc::Rc<T,A>::drop_slow
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:388:13
  31: <alloc::rc::Rc<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:2312:17
  32: core::ptr::drop_in_place<alloc::rc::Rc<calloop::loop_logic::LoopInner<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  33: core::ptr::drop_in_place<calloop::loop_logic::LoopHandle<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  34: core::ptr::drop_in_place<calloop::loop_logic::EventLoop<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  35: core::ptr::drop_in_place<winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  36: core::ptr::drop_in_place<winit::platform_impl::linux::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  37: core::ptr::drop_in_place<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  38: core::ptr::drop_in_place<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  39: core::ptr::drop_in_place<core::cell::UnsafeCell<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  40: core::ptr::drop_in_place<core::cell::RefCell<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  41: std::sys::thread_local::native::eager::destroy::{{closure}}
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/native/eager.rs:70:13
  42: std::sys::thread_local::abort_on_dtor_unwind
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/mod.rs:187:5
  43: std::sys::thread_local::native::eager::destroy
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/native/eager.rs:64:5
  44: __call_tls_dtors
  45: <unknown>
  46: exit
  47: <unknown>
  48: __libc_start_main
  49: _start

thread caused non-unwinding panic. aborting.
fish: Job 1, 'cargo run' terminated by signal SIGABRT (Abort)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions