pop-os / cosmic-edit

COSMIC Text Editor
GNU General Public License v3.0
214 stars 43 forks source link

panic on `Downcast on stateless state` #195

Closed flukejones closed 1 month ago

flukejones commented 1 month ago

Happens as of commit 68dd4c37589a. Commits before this are fine.

Reproduce by opening cosmic-text then ctrl-o. The cosmic file dialogue shows briefly then panic.

Systemd is Fedora 40, no KDE or Gnome installed, only Cosmic.

❯ [2024-05-31T04:59:11Z WARN  sctk_adwaita::buttons] Ignoring unknown button type: icon
[2024-05-31T04:59:11Z WARN  wgpu_hal::vulkan::instance] InstanceFlags::VALIDATION requested, but unable to find layer: VK_LAYER_KHRONOS_validation
DRM kernel driver 'nvidia-drm' in use. NVK requires nouveau.
❯ [2024-05-31T04:59:12Z WARN  sctk_adwaita::buttons] Ignoring unknown button type: icon
thread 'main' panicked at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/core/src/widget/tree.rs:459:28:
Downcast on stateless state
stack backtrace:
   0: rust_begin_unwind
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:645:5
   1: core::panicking::panic_fmt
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/panicking.rs:72:14
   2: iced_core::widget::tree::State::downcast_mut
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/core/src/widget/tree.rs:459:28
   3: <cosmic_files::mouse_area::MouseArea<Message> as iced_core::widget::Widget<Message,cosmic::theme::Theme,iced_renderer::Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/cosmic-files-6338c402b47773da/7a3f9d56666a/src/mouse_area.rs:321:13
   4: <iced_widget::container::Container<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/container.rs:210:9
   5: <iced_widget::container::Container<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/container.rs:210:9
   6: <cosmic::widget::dnd_source::DndSource<Message,AppMessage,D> as iced_core::widget::Widget<Message,cosmic::theme::Theme,iced_renderer::Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/src/widget/dnd_source.rs:186:19
   7: <cosmic_files::mouse_area::MouseArea<Message> as iced_core::widget::Widget<Message,cosmic::theme::Theme,iced_renderer::Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/cosmic-files-6338c402b47773da/7a3f9d56666a/src/mouse_area.rs:302:42
   8: <cosmic::widget::popover::Popover<Message,Renderer> as iced_core::widget::Widget<Message,cosmic::theme::Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/src/widget/popover.rs:149:9
   9: <iced_widget::scrollable::Scrollable<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event::{{closure}}
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/scrollable.rs:357:17
  10: iced_widget::scrollable::update
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/scrollable.rs:759:9
  11: <iced_widget::scrollable::Scrollable<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/scrollable.rs:347:9
  12: <cosmic_files::mouse_area::MouseArea<Message> as iced_core::widget::Widget<Message,cosmic::theme::Theme,iced_renderer::Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/cosmic-files-6338c402b47773da/7a3f9d56666a/src/mouse_area.rs:302:42
  13: <iced_widget::column::Column<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event::{{closure}}
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/column.rs:200:17
  14: core::iter::adapters::map::map_fold::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/map.rs:89:28
  15: <core::iter::adapters::zip::Zip<A,B> as core::iter::adapters::zip::ZipImpl<A,B>>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/zip.rs:287:25
  16: <core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/zip.rs:103:9
  17: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/map.rs:129:9
  18: <iced_widget::column::Column<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/column.rs:195:9
  19: <iced_widget::container::Container<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/container.rs:210:9
  20: <cosmic::widget::dnd_destination::DndDestination<Message> as iced_core::widget::Widget<Message,cosmic::theme::Theme,iced_renderer::Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/src/widget/dnd_destination.rs:304:17
  21: <iced_core::element::Map<A,B,Theme,Renderer> as iced_core::widget::Widget<B,Theme,Renderer>>::on_event
 22: <iced_widget::column::Column<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event::{{closure}}
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/column.rs:200:17
  23: core::iter::adapters::map::map_fold::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/map.rs:89:28
  24: <core::iter::adapters::zip::Zip<A,B> as core::iter::adapters::zip::ZipImpl<A,B>>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/zip.rs:287:25
  25: <core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/zip.rs:103:9
  26: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/map.rs:129:9
  27: <iced_widget::column::Column<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/column.rs:195:9
  28: <iced_core::element::Map<A,B,Theme,Renderer> as iced_core::widget::Widget<B,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/core/src/element.rs:432:22
  29: <iced_widget::row::Row<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event::{{closure}}
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/row.rs:189:17
  30: core::iter::adapters::map::map_fold::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/map.rs:89:28
  31: <core::iter::adapters::zip::Zip<A,B> as core::iter::adapters::zip::ZipImpl<A,B>>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/zip.rs:287:25
  32: <core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/zip.rs:103:9
  33: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/map.rs:129:9
  34: <iced_widget::row::Row<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/row.rs:184:9
  35: <iced_widget::container::Container<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/container.rs:210:9
  36: <iced_widget::column::Column<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event::{{closure}}
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/column.rs:200:17
  37: core::iter::adapters::map::map_fold::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/map.rs:89:28
  38: <core::iter::adapters::zip::Zip<A,B> as core::iter::adapters::zip::ZipImpl<A,B>>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/zip.rs:287:25
  39: <core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/zip.rs:103:9
  40: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/iter/adapters/map.rs:129:9
  41: <iced_widget::column::Column<Message,Theme,Renderer> as iced_core::widget::Widget<Message,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/widget/src/column.rs:195:9
  42: <cosmic::widget::popover::Popover<Message,Renderer> as iced_core::widget::Widget<Message,cosmic::theme::Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/src/widget/popover.rs:149:9
  43: <iced_core::element::Map<A,B,Theme,Renderer> as iced_core::widget::Widget<B,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/core/src/element.rs:432:22
  44: <iced_core::element::Map<A,B,Theme,Renderer> as iced_core::widget::Widget<B,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/core/src/element.rs:432:22
  45: <iced_core::element::Map<A,B,Theme,Renderer> as iced_core::widget::Widget<B,Theme,Renderer>>::on_event
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/core/src/element.rs:432:22
  46: iced_runtime::user_interface::UserInterface<Message,Theme,Renderer>::update::{{closure}}
             at /home/luke/.cargo/git/checkouts/libcosmic-b367e32ffc370f4f/af58d81c6fc7/iced/runtime/src/user_interface.rs:326:36
  47: core::iter::adapters::map::map_fold::{{closure}}

This isn't the full log as it is very long and mostly doesn't look relevant.

jackpot51 commented 1 month ago

Should be fixed now that libcosmic has been updated, can you test?

flukejones commented 1 month ago

Fixed now, thanks mate.