Skip to content

Commit

Permalink
fn rav1d_parse_obus: Initialize Rav1dContentLightLevel directly.
Browse files Browse the repository at this point in the history
  • Loading branch information
kkysen committed Dec 6, 2023
1 parent b5730e0 commit 5dab8db
Showing 1 changed file with 13 additions and 13 deletions.
26 changes: 13 additions & 13 deletions src/obu.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2157,27 +2157,19 @@ pub(crate) unsafe fn rav1d_parse_obus(

match meta_type {
OBU_META_HDR_CLL => {
let mut r#ref =
rav1d_ref_create(::core::mem::size_of::<Rav1dContentLightLevel>());
if r#ref.is_null() {
return Err(ENOMEM);
}
let content_light = (*r#ref).data as *mut Rav1dContentLightLevel;

(*content_light).max_content_light_level = rav1d_get_bits(&mut gb, 16) as c_int;
let max_content_light_level = rav1d_get_bits(&mut gb, 16) as c_int;
if DEBUG_OBU_METADATA {
println!(
"CLLOBU: max-content-light-level: {} [off={}]",
(*content_light).max_content_light_level,
max_content_light_level,
gb.ptr.offset_from(init_ptr) * 8 - gb.bits_left as isize
);
}
(*content_light).max_frame_average_light_level =
rav1d_get_bits(&mut gb, 16) as c_int;
let max_frame_average_light_level = rav1d_get_bits(&mut gb, 16) as c_int;
if DEBUG_OBU_METADATA {
println!(
"CLLOBU: max-frame-average-light-level: {} [off={}]",
(*content_light).max_frame_average_light_level,
max_frame_average_light_level,
gb.ptr.offset_from(init_ptr) * 8 - gb.bits_left as isize
);
}
Expand All @@ -2186,10 +2178,18 @@ pub(crate) unsafe fn rav1d_parse_obus(
rav1d_get_bit(&mut gb);
rav1d_bytealign_get_bits(&mut gb);
if check_for_overrun(c, &mut gb, init_bit_pos, len) != 0 {
rav1d_ref_dec(&mut r#ref);
error(c, r#in)?;
}

let r#ref = rav1d_ref_create(::core::mem::size_of::<Rav1dContentLightLevel>());
if r#ref.is_null() {
return Err(ENOMEM);
}
let content_light = (*r#ref).data as *mut Rav1dContentLightLevel;
content_light.write(Rav1dContentLightLevel {
max_content_light_level,
max_frame_average_light_level,
});
rav1d_ref_dec(&mut c.content_light_ref);
c.content_light = content_light;
c.content_light_ref = r#ref;
Expand Down

0 comments on commit 5dab8db

Please sign in to comment.