-
Notifications
You must be signed in to change notification settings - Fork 477
Open
Labels
Description
Since Rust 1.90.0, when iterating over a ScancodeIterator
the program panics.
let raw_key_states = event_pump
.keyboard_state()
.scancodes().collect::<Vec<_>>();
results in:
thread 'main' panicked at /home/ole/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sdl2-0.37.0/src/sdl2/keyboard/scancode.rs:261:29:
trying to construct an enum from an invalid value 0x1
stack backtrace:
0: __rustc::rust_begin_unwind
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:697:5
1: core::panicking::panic_nounwind_fmt::runtime
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panicking.rs:117:22
2: core::panicking::panic_nounwind_fmt
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/intrinsics/mod.rs:2367:9
3: core::panicking::panic_invalid_enum_construction
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panicking.rs:327:5
4: sdl2::keyboard::scancode::Scancode::from_i32
at /home/ole/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sdl2-0.37.0/src/sdl2/keyboard/scancode.rs:261:29
5: <sdl2::keyboard::ScancodeIterator as core::iter::traits::iterator::Iterator>::next
at /home/ole/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sdl2-0.37.0/src/sdl2/keyboard/mod.rs:123:37
6: <sdl2::keyboard::ScancodeIterator as core::iter::traits::iterator::Iterator>::next
at /home/ole/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sdl2-0.37.0/src/sdl2/keyboard/mod.rs:128:22
7: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
at /home/ole/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/spec_from_iter_nested.rs:25:41
8: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
at /home/ole/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/spec_from_iter.rs:34:9
9: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
at /home/ole/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs:3633:9
10: core::iter::traits::iterator::Iterator::collect
at /home/ole/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/iter/traits/iterator.rs:2027:9
11: regine::engine::Regine::step
at ./src/engine/mod.rs:156:26
12: regine::engine::Regine::run
at ./src/engine/mod.rs:96:18
13: test3d::main
at ./examples/test3d/main.rs:39:12
14: core::ops::function::FnOnce::call_once
at /home/ole/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:253:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread caused non-unwinding panic. aborting.
jdahlstrom