mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs.git
synced 2025-04-15 04:14:07 +00:00
base: Lower debug logging on allocation query errors
This happens often and is not fatal Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1672>
This commit is contained in:
parent
3d31d72f08
commit
dcc206ed68
3 changed files with 25 additions and 4 deletions
|
@ -577,7 +577,7 @@ unsafe extern "C" fn base_sink_propose_allocation<T: BaseSinkImpl>(
|
|||
match imp.propose_allocation(query) {
|
||||
Ok(()) => true,
|
||||
Err(err) => {
|
||||
err.log_with_imp(imp);
|
||||
err.log_with_imp_and_level(imp, gst::DebugLevel::Info);
|
||||
false
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1173,7 +1173,7 @@ unsafe extern "C" fn base_transform_propose_allocation<T: BaseTransformImpl>(
|
|||
match imp.propose_allocation(decide_query, query) {
|
||||
Ok(()) => true,
|
||||
Err(err) => {
|
||||
err.log_with_imp(imp);
|
||||
err.log_with_imp_and_level(imp, gst::DebugLevel::Info);
|
||||
false
|
||||
}
|
||||
}
|
||||
|
|
|
@ -111,10 +111,15 @@ impl LoggableError {
|
|||
|
||||
#[inline(never)]
|
||||
fn log_with_object_internal(&self, obj: &glib::Object) {
|
||||
self.log_with_object_internal_and_level(obj, crate::DebugLevel::Error);
|
||||
}
|
||||
|
||||
#[inline(never)]
|
||||
fn log_with_object_internal_and_level(&self, obj: &glib::Object, level: crate::DebugLevel) {
|
||||
self.bool_error.filename.run_with_gstr(|filename| {
|
||||
self.category.log(
|
||||
Some(obj),
|
||||
crate::DebugLevel::Error,
|
||||
level,
|
||||
filename,
|
||||
self.bool_error.function,
|
||||
self.bool_error.line,
|
||||
|
@ -126,7 +131,23 @@ impl LoggableError {
|
|||
pub fn log_with_imp(&self, imp: &impl glib::subclass::types::ObjectSubclass) {
|
||||
use glib::subclass::prelude::*;
|
||||
|
||||
self.log_with_object_internal(unsafe { imp.obj().unsafe_cast_ref::<glib::Object>() });
|
||||
self.log_with_object_internal_and_level(
|
||||
unsafe { imp.obj().unsafe_cast_ref::<glib::Object>() },
|
||||
crate::DebugLevel::Error,
|
||||
);
|
||||
}
|
||||
|
||||
pub fn log_with_imp_and_level(
|
||||
&self,
|
||||
imp: &impl glib::subclass::types::ObjectSubclass,
|
||||
level: crate::DebugLevel,
|
||||
) {
|
||||
use glib::subclass::prelude::*;
|
||||
|
||||
self.log_with_object_internal_and_level(
|
||||
unsafe { imp.obj().unsafe_cast_ref::<glib::Object>() },
|
||||
level,
|
||||
);
|
||||
}
|
||||
|
||||
pub fn category(&self) -> crate::DebugCategory {
|
||||
|
|
Loading…
Reference in a new issue