diff --git a/gstreamer-audio/src/audio_meta.rs b/gstreamer-audio/src/audio_meta.rs index 27d5af9c8..4baf16bbe 100644 --- a/gstreamer-audio/src/audio_meta.rs +++ b/gstreamer-audio/src/audio_meta.rs @@ -180,7 +180,7 @@ impl AudioMeta { #[doc(alias = "get_info")] #[inline] pub fn info(&self) -> crate::AudioInfo { - unsafe { from_glib_none(&self.0.info as *const _ as *mut ffi::GstAudioInfo) } + unsafe { from_glib_none(&self.0.info as *const _) } } #[doc(alias = "get_samples")] diff --git a/gstreamer-audio/src/audio_ring_buffer_spec.rs b/gstreamer-audio/src/audio_ring_buffer_spec.rs index c12e627d3..e3a5d5fdc 100644 --- a/gstreamer-audio/src/audio_ring_buffer_spec.rs +++ b/gstreamer-audio/src/audio_ring_buffer_spec.rs @@ -31,7 +31,7 @@ impl AudioRingBufferSpec { #[doc(alias = "get_audio_info")] #[inline] pub fn audio_info(&self) -> AudioInfo { - unsafe { AudioInfo::from_glib_none(mut_override(&self.0.info)) } + unsafe { AudioInfo::from_glib_none(&self.0.info as *const ffi::GstAudioInfo) } } #[doc(alias = "get_latency_time")] diff --git a/gstreamer-audio/src/subclass/audio_sink.rs b/gstreamer-audio/src/subclass/audio_sink.rs index 825c3d3de..eb25c2575 100644 --- a/gstreamer-audio/src/subclass/audio_sink.rs +++ b/gstreamer-audio/src/subclass/audio_sink.rs @@ -135,7 +135,7 @@ pub trait AudioSinkImplExt: sealed::Sealed + ObjectSubclass { Some(f) => f, None => return Ok(-1), }; - let buffer_ptr = buffer.as_ptr() as *const _ as *mut _; + let buffer_ptr = buffer.as_ptr() as glib::ffi::gpointer; let ret = f( self.obj().unsafe_cast_ref::().to_glib_none().0, buffer_ptr, diff --git a/gstreamer-gl/src/gl_sync_meta.rs b/gstreamer-gl/src/gl_sync_meta.rs index 554d6fb9e..9d46079d6 100644 --- a/gstreamer-gl/src/gl_sync_meta.rs +++ b/gstreamer-gl/src/gl_sync_meta.rs @@ -40,7 +40,7 @@ impl GLSyncMeta { pub fn set_sync_point(&self, context: &impl IsA) { unsafe { ffi::gst_gl_sync_meta_set_sync_point( - &self.0 as *const _ as *mut _, + mut_override(&self.0), context.as_ref().to_glib_none().0, ); } @@ -49,10 +49,7 @@ impl GLSyncMeta { #[doc(alias = "gst_gl_sync_meta_wait")] pub fn wait(&self, context: &impl IsA) { unsafe { - ffi::gst_gl_sync_meta_wait( - &self.0 as *const _ as *mut _, - context.as_ref().to_glib_none().0, - ); + ffi::gst_gl_sync_meta_wait(mut_override(&self.0), context.as_ref().to_glib_none().0); } } @@ -60,7 +57,7 @@ impl GLSyncMeta { pub fn wait_cpu(&self, context: &impl IsA) { unsafe { ffi::gst_gl_sync_meta_wait_cpu( - &self.0 as *const _ as *mut _, + mut_override(&self.0), context.as_ref().to_glib_none().0, ); } diff --git a/gstreamer-video/src/subclass/video_aggregator.rs b/gstreamer-video/src/subclass/video_aggregator.rs index 7ac54811b..07bd7aa7d 100644 --- a/gstreamer-video/src/subclass/video_aggregator.rs +++ b/gstreamer-video/src/subclass/video_aggregator.rs @@ -133,7 +133,7 @@ pub trait VideoAggregatorImplExt: sealed::Sealed + ObjectSubclass { None } else { Some(( - from_glib_none(mut_override(&info as *const ffi::GstVideoInfo)), + from_glib_none(&info as *const ffi::GstVideoInfo), from_glib(at_least_one_alpha), )) } diff --git a/gstreamer-video/src/video_buffer_pool.rs b/gstreamer-video/src/video_buffer_pool.rs index b0083bbc0..fdd22dd85 100644 --- a/gstreamer-video/src/video_buffer_pool.rs +++ b/gstreamer-video/src/video_buffer_pool.rs @@ -124,7 +124,7 @@ impl VideoBufferPoolConfig for gst::BufferPoolConfigRef { unsafe { ffi::gst_buffer_pool_config_set_video_alignment( self.as_mut().as_mut_ptr(), - &align.0 as *const _ as *mut _, + mut_override(&align.0), ) } } diff --git a/gstreamer-video/src/video_codec_state.rs b/gstreamer-video/src/video_codec_state.rs index 7893f035d..ed6c34cc4 100644 --- a/gstreamer-video/src/video_codec_state.rs +++ b/gstreamer-video/src/video_codec_state.rs @@ -97,8 +97,7 @@ impl<'a, T: VideoCodecStateContext<'a>> VideoCodecState<'a, T> { #[inline] pub fn info(&self) -> VideoInfo { unsafe { - let ptr = &((*self.as_mut_ptr()).info) as *const _ as usize as *mut _; - VideoInfo::from_glib_none(ptr) + VideoInfo::from_glib_none(&((*self.as_mut_ptr()).info) as *const ffi::GstVideoInfo) } } diff --git a/gstreamer-video/src/video_decoder.rs b/gstreamer-video/src/video_decoder.rs index 68b77f08c..f68a0e7cd 100644 --- a/gstreamer-video/src/video_decoder.rs +++ b/gstreamer-video/src/video_decoder.rs @@ -288,12 +288,11 @@ impl> VideoDecoderExtManual for O {} impl HasStreamLock for VideoDecoder { fn stream_lock(&self) -> *mut glib::ffi::GRecMutex { let decoder_sys: *const ffi::GstVideoDecoder = self.to_glib_none().0; - unsafe { &(*decoder_sys).stream_lock as *const _ as usize as *mut _ } + unsafe { mut_override(&(*decoder_sys).stream_lock) } } fn element_as_ptr(&self) -> *const gst::ffi::GstElement { - let decoder_sys: *const ffi::GstVideoDecoder = self.to_glib_none().0; - decoder_sys as *const gst::ffi::GstElement + self.as_ptr() as *mut gst::ffi::GstElement } } diff --git a/gstreamer-video/src/video_encoder.rs b/gstreamer-video/src/video_encoder.rs index 362b66e73..3af3b0b7e 100644 --- a/gstreamer-video/src/video_encoder.rs +++ b/gstreamer-video/src/video_encoder.rs @@ -231,11 +231,10 @@ impl> VideoEncoderExtManual for O {} impl HasStreamLock for VideoEncoder { fn stream_lock(&self) -> *mut glib::ffi::GRecMutex { let encoder_sys: *const ffi::GstVideoEncoder = self.to_glib_none().0; - unsafe { &(*encoder_sys).stream_lock as *const _ as usize as *mut _ } + unsafe { mut_override(&(*encoder_sys).stream_lock) } } fn element_as_ptr(&self) -> *const gst::ffi::GstElement { - let encoder_sys: *const ffi::GstVideoEncoder = self.to_glib_none().0; - encoder_sys as *const gst::ffi::GstElement + self.as_ptr() as *const gst::ffi::GstElement } } diff --git a/gstreamer-video/src/video_info.rs b/gstreamer-video/src/video_info.rs index 7de7fa104..6a659434b 100644 --- a/gstreamer-video/src/video_info.rs +++ b/gstreamer-video/src/video_info.rs @@ -584,7 +584,7 @@ impl VideoInfo { #[doc(alias = "gst_video_info_to_caps")] pub fn to_caps(&self) -> Result { unsafe { - let result = from_glib_full(ffi::gst_video_info_to_caps(&self.0 as *const _ as *mut _)); + let result = from_glib_full(ffi::gst_video_info_to_caps(mut_override(&self.0))); match result { Some(c) => Ok(c), None => Err(glib::bool_error!("Failed to create caps from VideoInfo")), @@ -802,7 +802,7 @@ impl VideoInfo { unsafe { let mut dest_val = mem::MaybeUninit::uninit(); if from_glib(ffi::gst_video_info_convert( - &self.0 as *const _ as *mut _, + mut_override(&self.0), src_val.format().into_glib(), src_val.into_raw_value(), U::default_format().into_glib(), @@ -824,7 +824,7 @@ impl VideoInfo { unsafe { let mut dest_val = mem::MaybeUninit::uninit(); if from_glib(ffi::gst_video_info_convert( - &self.0 as *const _ as *mut _, + mut_override(&self.0), src_val.format().into_glib(), src_val.into_raw_value(), dest_fmt.into_glib(), diff --git a/gstreamer-video/src/video_meta.rs b/gstreamer-video/src/video_meta.rs index c62c068dc..f4c8091fe 100644 --- a/gstreamer-video/src/video_meta.rs +++ b/gstreamer-video/src/video_meta.rs @@ -2,7 +2,7 @@ use std::{fmt, ptr}; -use glib::translate::{from_glib, from_glib_none, FromGlib, IntoGlib, IntoGlibPtr, ToGlibPtr}; +use glib::translate::*; use gst::prelude::*; #[repr(transparent)] @@ -182,10 +182,7 @@ impl VideoMeta { unsafe { glib::result_from_gboolean!( - ffi::gst_video_meta_get_plane_size( - &self.0 as *const _ as usize as *mut _, - &mut plane_size, - ), + ffi::gst_video_meta_get_plane_size(mut_override(&self.0), &mut plane_size,), "Failed to get plane size" )?; } @@ -202,10 +199,7 @@ impl VideoMeta { unsafe { glib::result_from_gboolean!( - ffi::gst_video_meta_get_plane_height( - &self.0 as *const _ as usize as *mut _, - &mut plane_height, - ), + ffi::gst_video_meta_get_plane_height(mut_override(&self.0), &mut plane_height,), "Failed to get plane height" )?; } diff --git a/gstreamer/src/buffer.rs b/gstreamer/src/buffer.rs index 670256c4d..c9f14bdee 100644 --- a/gstreamer/src/buffer.rs +++ b/gstreamer/src/buffer.rs @@ -2,9 +2,7 @@ use std::{fmt, marker::PhantomData, mem, ops, ops::ControlFlow, ptr, slice, u64, usize}; -use glib::translate::{ - from_glib, from_glib_full, FromGlib, FromGlibPtrFull, IntoGlib, IntoGlibPtr, -}; +use glib::translate::*; use crate::{meta::*, BufferCursor, BufferFlags, BufferRefCursor, ClockTime, Memory, MemoryRef}; @@ -475,7 +473,7 @@ impl BufferRef { meta: *mut *mut ffi::GstMeta, user_data: glib::ffi::gpointer, ) -> glib::ffi::gboolean { - let func = user_data as *const _ as usize as *mut F; + let func = user_data as *mut F; let res = (*func)(Meta::from_ptr(BufferRef::from_ptr(buffer), *meta)); matches!(res, ControlFlow::Continue(_)).into_glib() @@ -485,9 +483,9 @@ impl BufferRef { let func_ptr: &F = &func; from_glib(ffi::gst_buffer_foreach_meta( - self.as_ptr() as *mut _, + mut_override(self.as_ptr()), Some(trampoline::), - func_ptr as *const _ as usize as *mut _, + func_ptr as *const _ as *mut _, )) } } @@ -510,7 +508,7 @@ impl BufferRef { meta: *mut *mut ffi::GstMeta, user_data: glib::ffi::gpointer, ) -> glib::ffi::gboolean { - let func = user_data as *const _ as usize as *mut F; + let func = user_data as *mut F; let res = (*func)(Meta::from_mut_ptr(BufferRef::from_mut_ptr(buffer), *meta)); let (cont, action) = match res { @@ -529,9 +527,9 @@ impl BufferRef { let func_ptr: &F = &func; from_glib(ffi::gst_buffer_foreach_meta( - self.as_ptr() as *mut _, + mut_override(self.as_ptr()), Some(trampoline::), - func_ptr as *const _ as usize as *mut _, + func_ptr as *const _ as *mut _, )) } } diff --git a/gstreamer/src/bufferlist.rs b/gstreamer/src/bufferlist.rs index 5383e69c0..1d5a2a540 100644 --- a/gstreamer/src/bufferlist.rs +++ b/gstreamer/src/bufferlist.rs @@ -109,7 +109,7 @@ impl BufferListRef { idx: u32, user_data: glib::ffi::gpointer, ) -> glib::ffi::gboolean { - let func = user_data as *const _ as usize as *mut F; + let func = user_data as *mut F; let res = (*func)(&Buffer::from_glib_borrow(*buffer), idx); matches!(res, ControlFlow::Continue(_)).into_glib() @@ -121,7 +121,7 @@ impl BufferListRef { from_glib(ffi::gst_buffer_list_foreach( self.as_ptr() as *mut _, Some(trampoline::), - func_ptr as *const _ as usize as *mut _, + func_ptr as *const _ as *mut _, )) } } @@ -138,7 +138,7 @@ impl BufferListRef { idx: u32, user_data: glib::ffi::gpointer, ) -> glib::ffi::gboolean { - let func = user_data as *const _ as usize as *mut F; + let func = user_data as *mut F; let res = (*func)( Buffer::from_glib_full(ptr::replace( buffer as *mut *const ffi::GstBuffer, @@ -170,7 +170,7 @@ impl BufferListRef { from_glib(ffi::gst_buffer_list_foreach( self.as_ptr() as *mut _, Some(trampoline::), - func_ptr as *const _ as usize as *mut _, + func_ptr as *const _ as *mut _, )) } } diff --git a/gstreamer/src/registry.rs b/gstreamer/src/registry.rs index 24a9789bb..a5dcd747d 100644 --- a/gstreamer/src/registry.rs +++ b/gstreamer/src/registry.rs @@ -17,7 +17,7 @@ impl Registry { user_data: glib::ffi::gpointer, ) -> glib::ffi::gboolean { let feature = from_glib_borrow(feature); - let callback: *mut P = user_data as *const _ as usize as *mut P; + let callback = user_data as *mut P; let res = (*callback)(&feature); res.into_glib() } @@ -28,7 +28,7 @@ impl Registry { self.to_glib_none().0, filter, first.into_glib(), - super_callback0 as *const _ as usize as *mut _, + super_callback0 as *const _ as *mut _, )) } } @@ -77,7 +77,7 @@ impl Registry { user_data: glib::ffi::gpointer, ) -> glib::ffi::gboolean { let plugin = from_glib_borrow(plugin); - let callback: *mut P = user_data as *const _ as usize as *mut P; + let callback = user_data as *const _ as *mut P; let res = (*callback)(&plugin); res.into_glib() } @@ -88,7 +88,7 @@ impl Registry { self.to_glib_none().0, filter, first.into_glib(), - super_callback0 as *const _ as usize as *mut _, + super_callback0 as *const _ as *mut _, )) } } diff --git a/gstreamer/src/sample.rs b/gstreamer/src/sample.rs index 8f82c1808..cee3038dd 100644 --- a/gstreamer/src/sample.rs +++ b/gstreamer/src/sample.rs @@ -2,7 +2,7 @@ use std::{fmt, ptr}; -use glib::translate::{from_glib_full, from_glib_none, mut_override, IntoGlibPtr, ToGlibPtr}; +use glib::translate::{from_glib_full, from_glib_none, IntoGlibPtr, ToGlibPtr}; use crate::{ format::FormattedValueIntrinsic, Buffer, BufferList, BufferListRef, BufferRef, Caps, CapsRef, @@ -73,7 +73,7 @@ impl<'a> SampleBuilder<'a> { self.buffer.to_glib_none().0, self.caps.to_glib_none().0, self.segment.to_glib_none().0, - mut_override(info), + info, )); if let Some(buffer_list) = self.buffer_list {