Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error "Called Option::unwrap() on a None value`" with large track/FX chunks #146

Closed
helgoboss opened this issue Feb 15, 2021 · 1 comment
Labels
bug Something isn't working
Milestone

Comments

@helgoboss
Copy link
Owner

--- cut ---
Module name:         ReaLearn
Module version:      v2.1.0/x86_64 rev 1c2c0f (2021-02-13 12:58:26 UTC)
Module base address: 0x7ffe98620000
Module size:         0xb58000

Message: called `Option::unwrap()` on a `None` value

   0:     0x7ffe98d1b5ed - Extended
   1:     0x7ffe98d1ab99 - Extended
   2:     0x7ffe98c149cf - MAIN
   3:     0x7ffe98d380e0 - Extended
   4:     0x7ffe98d37b83 - Extended
   5:     0x7ffe98d34f6f - Extended
   6:     0x7ffe98d37b09 - Extended
   7:     0x7ffe98d4b060 - rust_eh_personality
   8:     0x7ffe98d4afac - rust_eh_personality
   9:     0x7ffe98c16577 - MAIN
  10:     0x7ffe98c166a6 - MAIN
  11:     0x7ffe98764b99 - NSEEL_HOSTSTUB_EnterMutex
  12:     0x7ffe989e2681 - DllMain
  13:     0x7ffe98c074c2 - MAIN
  14:     0x7ffe98c027f6 - MAIN
  15:     0x7ffe989a87d3 - DllMain
  16:     0x7ffe98977f7a - DllMain
  17:     0x7ffe98874e0e - DllMain
  18:     0x7ffe98c5418f - MAIN
  19:     0x7ffe98c7004d - Extended
  20:     0x7ffe98c6f8ac - Extended
  21:        0x140273c64 - <unknown>
  22:        0x140341924 - <unknown>
  23:        0x1403405ad - <unknown>
  24:     0x7ffef59a2920 - ScreenToClient
  25:     0x7ffef59a20c2 - ScreenToClient
  26:     0x7ffef59e9f99 - UnpackDDElParam
  27:     0x7ffef599e858 - CallWindowProcW
  28:     0x7ffef59dfa04 - LoadMenuA
  29:     0x7ffef59e004b - CallWindowProcA
  30:        0x1408590e5 - <unknown>
  31:     0x7ffef599e858 - CallWindowProcW
  32:     0x7ffef599e299 - DispatchMessageW
  33:        0x1403acd99 - <unknown>
  34:        0x140886eb1 - <unknown>
  35:     0x7ffef5be7034 - BaseThreadInitThunk
  36:     0x7ffef611d241 - RtlUserThreadStart
--- cut ---

With symbols resolved:

Attempting to resolve symbols for 37 addresses
==============================================
        
0: 7ffe98d1b5ed
-----------------------------------
            
Relative: Some(6fb5ed)
Ours absolute: Some(7ffa339ab5ed)

7ffa339ab560
backtrace::backtrace::trace<closure-0>
C:\Users\runneradmin\.cargo\registry\src\github.com-1ecc6299db9ec823\backtrace-0.3.53\src\backtrace\mod.rs (line 53)


1: 7ffe98d1ab99
-----------------------------------
            
Relative: Some(6fab99)
Ours absolute: Some(7ffa339aab99)

7ffa339aab40
backtrace::capture::Backtrace::new
C:\Users\runneradmin\.cargo\registry\src\github.com-1ecc6299db9ec823\backtrace-0.3.53\src\capture.rs (line 140)


2: 7ffe98c149cf
-----------------------------------
            
Relative: Some(5f49cf)
Ours absolute: Some(7ffa338a49cf)

7ffa338a4990
reaper_high::log_util::create_reaper_panic_hook::{{closure}}<closure-0>
C:\Users\runneradmin\.cargo\git\checkouts\reaper-rs-d32fed07113e6874\c786cb8\main\high\src\log_util.rs (line 51)


3: 7ffe98d380e0
-----------------------------------
            
Relative: Some(7180e0)
Ours absolute: Some(7ffa339c80e0)

7ffa339c7f70
std::panicking::rust_panic_with_hook
/rustc/f0f68778f798d6d34649745b41770829b17ba5b8\/library\std\src\panicking.rs (line 595)


4: 7ffe98d37b83
-----------------------------------
            
Relative: Some(717b83)
Ours absolute: Some(7ffa339c7b83)

7ffa339c7b10
std::panicking::begin_panic_handler::{{closure}}
/rustc/f0f68778f798d6d34649745b41770829b17ba5b8\/library\std\src\panicking.rs (line 495)


5: 7ffe98d34f6f
-----------------------------------
            
Relative: Some(714f6f)
Ours absolute: Some(7ffa339c4f6f)

7ffa339c4f50
std::sys_common::backtrace::__rust_end_short_backtrace<closure-0,!>
/rustc/f0f68778f798d6d34649745b41770829b17ba5b8\/library\std\src\sys_common\backtrace.rs (line 141)


6: 7ffe98d37b09
-----------------------------------
            
Relative: Some(717b09)
Ours absolute: Some(7ffa339c7b09)

7ffa339c7ac0
std::panicking::begin_panic_handler
/rustc/f0f68778f798d6d34649745b41770829b17ba5b8\/library\std\src\panicking.rs (line 493)


7: 7ffe98d4b060
-----------------------------------
            
Relative: Some(72b060)
Ours absolute: Some(7ffa339db060)

7ffa339db030
core::panicking::panic_fmt
/rustc/f0f68778f798d6d34649745b41770829b17ba5b8\/library\core\src\panicking.rs (line 92)


8: 7ffe98d4afac
-----------------------------------
            
Relative: Some(72afac)
Ours absolute: Some(7ffa339dafac)

7ffa339daf60
core::panicking::panic
/rustc/f0f68778f798d6d34649745b41770829b17ba5b8\/library\core\src\panicking.rs (line 50)


9: 7ffe98c16577
-----------------------------------
            
Relative: Some(5f6577)
Ours absolute: Some(7ffa338a6577)

7ffa338a61d0
reaper_high::fx::Fx::tag_chunk
C:\Users\runneradmin\.cargo\git\checkouts\reaper-rs-d32fed07113e6874\c786cb8\main\high\src\fx.rs (line 107)


10: 7ffe98c166a6
-----------------------------------
            
Relative: Some(5f66a6)
Ours absolute: Some(7ffa338a66a6)

7ffa338a6670
reaper_high::fx::Fx::info
C:\Users\runneradmin\.cargo\git\checkouts\reaper-rs-d32fed07113e6874\c786cb8\main\high\src\fx.rs (line 125)


11: 7ffe98764b99
-----------------------------------
            
Relative: Some(144b99)
Ours absolute: Some(7ffa333f4b99)

7ffa333f4b70
realearn::application::preset_link::FxId::from_fx
D:\a\realearn\realearn\main\src\application\preset_link.rs (line 31)


12: 7ffe989e2681
-----------------------------------
            
Relative: Some(3c2681)
Ours absolute: Some(7ffa33672681)

7ffa33672520
rxrust::subscriber::{{impl}}::next<core::option::Option<reaper_high::fx::Fx>,tuple<>,alloc::rc::Rc<core::cell::RefCell<rxrust::observable::observable_next::ObserverN<closure-0>>>,rxrust::subscription::LocalSubscription>
C:\Users\runneradmin\.cargo\git\checkouts\rxrust-eaf927192fcfe4aa\ea02e0f\src\subscriber.rs (line 38)


13: 7ffe98c074c2
-----------------------------------
            
Relative: Some(5e74c2)
Ours absolute: Some(7ffa338974c2)

7ffa33897350
rxrust::observer::{{impl}}::next<core::option::Option<reaper_high::fx::Fx>,tuple<>,alloc::boxed::Box<Publisher<core::option::Option<reaper_high::fx::Fx>, tuple<>>, alloc::alloc::Global>>
C:\Users\runneradmin\.cargo\git\checkouts\rxrust-eaf927192fcfe4aa\ea02e0f\src\observer.rs (line 133)


14: 7ffe98c027f6
-----------------------------------
            
Relative: Some(5e27f6)
Ours absolute: Some(7ffa338927f6)

7ffa33892020
reaper_rx::control_surface::ControlSurfaceRxMiddleware::handle_change
C:\Users\runneradmin\.cargo\git\checkouts\reaper-rs-d32fed07113e6874\c786cb8\main\rx\src\control_surface.rs (line 56)


15: 7ffe989a87d3
-----------------------------------
            
Relative: Some(3887d3)
Ours absolute: Some(7ffa336387d3)

7ffa336386e0
realearn::domain::control_surface::{{impl}}::handle_event_internal::{{closure}}<alloc::rc::Weak<core::cell::RefCell<realearn::application::session::Session>>>
D:\a\realearn\realearn\main\src\domain\control_surface.rs (line 151)


16: 7ffe98977f7a
-----------------------------------
            
Relative: Some(357f7a)
Ours absolute: Some(7ffa33607f7a)

7ffa336065e0
reaper_high::change_detection_middleware::ChangeDetectionMiddleware::process<closure-0>
C:\Users\runneradmin\.cargo\git\checkouts\reaper-rs-d32fed07113e6874\c786cb8\main\high\src\change_detection_middleware.rs (line 344)


17: 7ffe98874e0e
-----------------------------------
            
Relative: Some(254e0e)
Ours absolute: Some(7ffa33504e0e)

7ffa33504d30
reaper_high::middleware_control_surface::{{impl}}::ext_set_focused_fx<realearn::domain::control_surface::RealearnControlSurfaceMiddleware<alloc::rc::Weak<core::cell::RefCell<realearn::application::session::Session>>>>
C:\Users\runneradmin\.cargo\git\checkouts\reaper-rs-d32fed07113e6874\c786cb8\main\high\src\middleware_control_surface.rs (line 159)


18: 7ffe98c5418f
-----------------------------------
            
Relative: Some(63418f)
Ours absolute: Some(7ffa338e418f)

7ffa338e3b80
reaper_medium::control_surface::{{impl}}::Extended
C:\Users\runneradmin\.cargo\git\checkouts\reaper-rs-d32fed07113e6874\c786cb8\main\medium\src\control_surface.rs (line 710)


19: 7ffe98c7004d
-----------------------------------
            
Relative: Some(65004d)
Ours absolute: Some(7ffa3390004d)

7ffa33900000
std::panicking::try<i32,std::panic::AssertUnwindSafe<closure-0>>
/rustc/f0f68778f798d6d34649745b41770829b17ba5b8\library\std\src\panicking.rs (line 343)


20: 7ffe98c6f8ac
-----------------------------------
            
Relative: Some(64f8ac)
Ours absolute: Some(7ffa338ff8ac)

7ffa338ff850
reaper_low::control_surface::Extended
C:\Users\runneradmin\.cargo\git\checkouts\reaper-rs-d32fed07113e6874\c786cb8\main\low\src\control_surface.rs (line 351)
@helgoboss helgoboss added the bug Something isn't working label Feb 15, 2021
@helgoboss helgoboss added this to the 2.2.0 milestone Feb 15, 2021
@helgoboss
Copy link
Owner Author

This happens at the moment if the track chunk is larger than 1 MB.

Notes:

  • Just getting the FX info doesn't require getting the complete FX tag chunk but only its beginning.
  • But still, in order to arrive at that specific FX tag chunk, we might need to "skip" a few FX that could be large already.
  • So looks like there's no other chance than choosing a large "out" size when requesting the chunk.

@helgoboss helgoboss changed the title Error "Called Option::unwrap() on a None value`" Error "Called Option::unwrap() on a None value`" with large track/FX chunks Feb 16, 2021
helgoboss added a commit that referenced this issue Feb 16, 2021
for now by reserving 20 MB whenever retrieving a chunk
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant