Skip to content

Commit 518b082

Browse files
committed
Zero initialize Vec returned from mp4parse_fallable branch of allocate_read_buf.
Also delete vec_reserve, which is completely unused. Closes #172.
1 parent 26e614b commit 518b082

File tree

1 file changed

+3
-14
lines changed

1 file changed

+3
-14
lines changed

mp4parse/src/lib.rs

+3-14
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ const BUF_SIZE_LIMIT: usize = 1024 * 1024;
4242
// frame per table entry in 30 fps.
4343
const TABLE_SIZE_LIMIT: u32 = 30 * 60 * 60 * 24 * 7;
4444

45-
// TODO: vec_push() and vec_reserve() needs to be replaced when Rust supports
46-
// fallible memory allocation in raw_vec.
45+
// TODO: vec_push() needs to be replaced when Rust supports fallible memory
46+
// allocation in raw_vec.
4747
#[allow(unreachable_code)]
4848
pub fn vec_push<T>(vec: &mut Vec<T>, val: T) -> std::result::Result<(), ()> {
4949
#[cfg(feature = "mp4parse_fallible")]
@@ -55,24 +55,13 @@ pub fn vec_push<T>(vec: &mut Vec<T>, val: T) -> std::result::Result<(), ()> {
5555
Ok(())
5656
}
5757

58-
#[allow(unreachable_code)]
59-
pub fn vec_reserve<T>(vec: &mut Vec<T>, size: usize) -> std::result::Result<(), ()> {
60-
#[cfg(feature = "mp4parse_fallible")]
61-
{
62-
return FallibleVec::try_reserve(vec, size);
63-
}
64-
65-
vec.reserve(size);
66-
Ok(())
67-
}
68-
6958
#[allow(unreachable_code)]
7059
fn allocate_read_buf(size: usize) -> std::result::Result<Vec<u8>, ()> {
7160
#[cfg(feature = "mp4parse_fallible")]
7261
{
7362
let mut buf: Vec<u8> = Vec::new();
7463
FallibleVec::try_reserve(&mut buf, size)?;
75-
unsafe { buf.set_len(size); }
64+
buf.extend(std::iter::repeat(0).take(size));
7665
return Ok(buf);
7766
}
7867

0 commit comments

Comments
 (0)