SystemClock::set_default() can accept None

This commit is contained in:
Sebastian Dröge 2017-12-20 18:57:16 +02:00
parent 95c9f92549
commit f439f14ec3
2 changed files with 9 additions and 4 deletions

View file

@ -38017,7 +38017,10 @@ MT safe.</doc>
<type name="none" c:type="void"/> <type name="none" c:type="void"/>
</return-value> </return-value>
<parameters> <parameters>
<parameter name="new_clock" transfer-ownership="none"> <parameter name="new_clock"
transfer-ownership="none"
nullable="1"
allow-none="1">
<doc xml:space="preserve">a #GstClock</doc> <doc xml:space="preserve">a #GstClock</doc>
<type name="Clock" c:type="GstClock*"/> <type name="Clock" c:type="GstClock*"/>
</parameter> </parameter>

View file

@ -36,10 +36,12 @@ impl SystemClock {
} }
} }
pub fn set_default<P: IsA<Clock>>(new_clock: &P) { pub fn set_default<'a, P: IsA<Clock> + 'a, Q: Into<Option<&'a P>>>(new_clock: Q) {
skip_assert_initialized!(); assert_initialized_main_thread!();
let new_clock = new_clock.into();
let new_clock = new_clock.to_glib_none();
unsafe { unsafe {
ffi::gst_system_clock_set_default(new_clock.to_glib_none().0); ffi::gst_system_clock_set_default(new_clock.0);
} }
} }
} }