diff --git a/glib/src/object.rs b/glib/src/object.rs index 46bf2b302594..982f01f1208e 100644 --- a/glib/src/object.rs +++ b/glib/src/object.rs @@ -2216,6 +2216,12 @@ glib_wrapper! { #[derive(Debug)] pub struct WeakRef(Pin>, PhantomData<*mut T>); +impl hash::Hash for WeakRef { + fn hash(&self, state: &mut H) { + unsafe { self.0.priv_.p.hash(state) } + } +} + impl PartialEq for WeakRef { fn eq(&self, other: &Self) -> bool { unsafe { self.0.priv_.p == other.0.priv_.p }