You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// Create a pipe for content transfer.let(mut read, write) = pipe().expect("Error creating a pipe");// Start the transfer.
offer.receive(mime_type, write.as_raw_fd());
queue.sync_roundtrip().expect("Error doing a roundtrip");drop(write);// Read the contents.letmut contents = vec![];
read.read_to_end(&mut contents).expect("Error reading clipboard contents");stdout().write_all(&contents).expect("Error writing contents to stdout");
Using native_lib this works, using the Rust implementation this blocks on read. I highly suspect this is due to wayland-commons duping FDs before writing and subsequently never closing them over here:
Consider receiving data over a zwlr_data_control_offer:
Using
native_lib
this works, using the Rust implementation this blocks on read. I highly suspect this is due towayland-commons
duping FDs before writing and subsequently never closing them over here:wayland-rs/wayland-commons/src/wire.rs
Lines 192 to 224 in d508d0e
Changing the last line to
drop(pending_fds)
isn't valid either because we can't close the FDs before the server received them.The text was updated successfully, but these errors were encountered: