Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
VideoLAN
dav1d
Commits
d4ddfdf5
Verified
Commit
d4ddfdf5
authored
Nov 28, 2018
by
James Almer
Browse files
obu: ensure that the frame header reference is writable
parent
a4083095
Pipeline
#3072
passed with stages
in 9 minutes and 16 seconds
Changes
3
Pipelines
1
Show whitespace changes
Inline
Side-by-side
src/obu.c
View file @
d4ddfdf5
...
...
@@ -1267,6 +1267,8 @@ int dav1d_parse_obus(Dav1dContext *const c, Dav1dData *const in, int global) {
c
->
frame_hdr_ref
=
dav1d_ref_create
(
sizeof
(
Dav1dFrameHeader
));
if
(
!
c
->
frame_hdr_ref
)
return
-
ENOMEM
;
}
// ensure that the reference is writable
assert
(
dav1d_ref_is_writable
(
c
->
frame_hdr_ref
));
c
->
frame_hdr
=
c
->
frame_hdr_ref
->
data
;
memset
(
c
->
frame_hdr
,
0
,
sizeof
(
*
c
->
frame_hdr
));
c
->
frame_hdr
->
temporal_id
=
temporal_id
;
...
...
src/ref.c
View file @
d4ddfdf5
...
...
@@ -84,3 +84,7 @@ void dav1d_ref_dec(Dav1dRef **const pref) {
}
*
pref
=
NULL
;
}
int
dav1d_ref_is_writable
(
Dav1dRef
*
const
ref
)
{
return
atomic_load
(
&
ref
->
ref_cnt
)
==
1
;
}
src/ref.h
View file @
d4ddfdf5
...
...
@@ -48,4 +48,6 @@ Dav1dRef *dav1d_ref_wrap(const uint8_t *ptr,
void
dav1d_ref_inc
(
Dav1dRef
*
ref
);
void
dav1d_ref_dec
(
Dav1dRef
**
ref
);
int
dav1d_ref_is_writable
(
Dav1dRef
*
ref
);
#endif
/* __DAV1D_SRC_REF_H__ */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment