Panic on app start
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 38.9k
- Forks
- 1.3k
- Avg merge
- 19m
- Merged PRs (30d)
- 1
Description
Currently Lapce works on my laptop with all of the same KDE settings, themes, etc as my desktop, which I just tried to run Lapce on.
OS: Arch Linux
WM: KDE
All that I did was go to the official website, download the .tar.gz and extract and run.
Lapce seems to create a window, but nothing ever fills it and then it crashes.
I have made sure that all dependencies for Lapce and Druid are installed, just in case.
Here is the backtrace at RUST_BACKTRACE=1:
thread 'main' panicked at 'index out of bounds: the len is 0 but the index is 0', /home/runner/.cargo/git/checkouts/parley-eb2adff70a5b8ee8/eb4a912/src/context.rs:201:28
stack backtrace:
0: rust_begin_unwind
at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:584:5
1: core::panicking::panic_fmt
at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:143:14
2: core::panicking::panic_bounds_check
at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:85:5
3: <piet_wgpu::text_layout::WgpuTextLayoutBuilder as piet::text::TextLayoutBuilder>::build
4: <lapce_ui::terminal::LapceTerminalView as druid::widget::widget::Widget<lapce_data::data::LapceTabData>>::paint
5: druid::core::WidgetPod<T,W>::paint_raw
6: druid::core::WidgetPod<T,W>::paint
7: <lapce_ui::split::LapceSplitNew as druid::widget::widget::Widget<lapce_data::data::LapceTabData>>::paint
8: druid::core::WidgetPod<T,W>::paint
9: druid::core::WidgetPod<T,W>::paint_raw
10: <lapce_ui::scroll::LapceScrollNew<T,W> as druid::widget::widget::Widget<T>>::paint
11: <lapce_ui::panel::PanelSection as druid::widget::widget::Widget<lapce_data::data::LapceTabData>>::paint
12: druid::core::WidgetPod<T,W>::paint_raw
13: druid::core::WidgetPod<T,W>::paint
14: <lapce_ui::split::LapceSplitNew as druid::widget::widget::Widget<lapce_data::data::LapceTabData>>::paint
15: druid::core::WidgetPod<T,W>::paint
16: <lapce_ui::panel::LapcePanel as druid::widget::widget::Widget<lapce_data::data::LapceTabData>>::paint
17: druid::core::WidgetPod<T,W>::paint_raw
18: druid::core::WidgetPod<T,W>::paint
19: <druid::widget::lens_wrap::LensWrap<T,U,L,W> as druid::widget::widget::Widget<T>>::paint
20: druid::core::WidgetPod<T,W>::paint
21: <druid::widget::lens_wrap::LensWrap<T,U,L,W> as druid::widget::widget::Widget<T>>::paint
22: druid::win_handler::InnerAppState<T>::paint
23: druid::app::AppLauncher<T>::launch::{{closure}}
24: winit::platform_impl::platform::x11::EventLoop<T>::run_return::single_iteration
25: winit::platform_impl::platform::x11::EventLoop<T>::run
26: winit::platform_impl::platform::EventLoop<T>::run
27: winit::event_loop::EventLoop<T>::run
28: lapce_ui::app::launch
29: lapce::main
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the startup crash on Arch Linux with KDE using the downloaded Lapce archive and RUST_BACKTRACE=1. Start with parley’s src/context.rs:201 and the piet_wgpu text-layout build called from lapce_ui::terminal::LapceTerminalView::paint. Done means Lapce starts and fills its window without this panic.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100