GtkListStore lacking type column information
I think I have run into a regression in Gtk with my code, which uses GtkListStore for the content of a GtkIconView.
Steps to reproduce
(better reproduction description here: #5398 (comment 1609551))
git clone https://github.com/DiNoScore/DiNoScore
cd DiNoScore
-
cargo run --release --locked
— Should crash on start - There is a
shell.nix
in the repository which pins all system dependencies to 2022-04-21. If you run the same command in it, the application will start and work just fine.
Current behavior
During startup, the following assertion fails: gtk_icon_view_set_pixbuf_column: assertion 'gtk_tree_model_get_column_type (icon_view->priv->model, column) == GDK_TYPE_PIXBUF' failed
While trying to append a row to the ListStore, another assertion failure: g_value_type_transformable: assertion 'dest_type' failed
. This then causes an assertion failure in the Rust bindings glue code, resulting in a crash: thread 'main' panicked at 'column 0 is of type <invalid> but found value of type GdkPixbuf': /gtk4-0.5.2/src/list_store.rs:150
.
Expected outcome
Code that used to work continues to work even on systems with newer Gtk version installed
Version information
Failing on Gtk 4.8.2
Last known guaranteed working Gtk version: 4.6.3