From 0eb14d281601f2cb47bd7fc7ca08f141028620ec Mon Sep 17 00:00:00 2001 From: Julian Orth Date: Tue, 17 Sep 2024 20:24:19 +0200 Subject: [PATCH] wayland: include object id in request errors --- build/wire.rs | 1 + src/client/error.rs | 3 ++- src/wl_usr.rs | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/build/wire.rs b/build/wire.rs index 31137918..a21f8895 100644 --- a/build/wire.rs +++ b/build/wire.rs @@ -830,6 +830,7 @@ fn write_request_handler( writeln!(f, " }};")?; writeln!(f, " Err({error}::MethodError {{")?; writeln!(f, " interface: {camel_obj_name},")?; + writeln!(f, " id: self.id(),")?; writeln!(f, " method,")?; writeln!(f, " error,")?; writeln!(f, " }})")?; diff --git a/src/client/error.rs b/src/client/error.rs index 08e592ed..5f7402c8 100644 --- a/src/client/error.rs +++ b/src/client/error.rs @@ -37,9 +37,10 @@ pub enum ClientError { ClientIdOutOfBounds, #[error("Object {0} is not a display")] NotADisplay(WlDisplayId), - #[error("Could not process a `{}.{}` request", .interface.name(), .method)] + #[error("Could not process a `{}#{}.{}` request", .interface.name(), .id, .method)] MethodError { interface: Interface, + id: ObjectId, method: &'static str, #[source] error: Box, diff --git a/src/wl_usr.rs b/src/wl_usr.rs index e7f5321d..0dfc3cfd 100644 --- a/src/wl_usr.rs +++ b/src/wl_usr.rs @@ -63,9 +63,10 @@ pub enum UsrConError { Write(#[source] BufFdError), #[error("Server sent an event for object {0} that does not exist")] MissingObject(ObjectId), - #[error("Could not process a `{}.{}` event", .interface.name(), .method)] + #[error("Could not process a `{}#{}.{}` event", .interface.name(), .id, .method)] MethodError { interface: Interface, + id: ObjectId, method: &'static str, #[source] error: Box,