diff --git a/flake.nix b/flake.nix index d7fa343..40636f4 100644 --- a/flake.nix +++ b/flake.nix @@ -21,7 +21,7 @@ dlDeps = with pkgs; [ # libdbus, for rfd - dbus.lib + dbus # needed for both x11 and wayland libxkbcommon diff --git a/src/main.rs b/src/main.rs index 5ad2bf3..3e65e8d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -189,18 +189,6 @@ impl State { widget::image::allocate(widget::image::Handle::from_rgba( image.width(), image.height(), - // SAFETY: this is a sort of race condition; - // will cause panics with large enough images, - // when they are edited consecutively. - // - // this can be reproduced by holding down 'i' with a 10k by 10k px image, - // which will invert the colors rapidly and eventually crash the app. - // - // however, that is not such a problem in this case, - // and I don't know a different way of doing this that doesn't copy - // (performance loss, which is can be pretty big) - // or likely cause flickering instead in such cases - // (like using Handle over Allocation to immediately drop the last one) unsafe { std::mem::transmute::<&[u8], &'static [u8]>(image.as_bytes()) }, )) .map(Message::ImageDisplayReady)