mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-07 07:58:51 +00:00
oggstream: fix a few left shifts operations on 32 bits cast to 64 bits
This should not cause any actual bug since Theora and Daala have a maximum shift of 31, and a packet duration of 2^31 seems very implausible. But it fixes: Coverity 1139804, 1139803, 1139802
This commit is contained in:
parent
2c07c54b8a
commit
55f98974a8
1 changed files with 3 additions and 3 deletions
|
@ -498,7 +498,7 @@ is_granulepos_keyframe_theora (GstOggStream * pad, gint64 granulepos)
|
||||||
if (granulepos == (gint64) - 1)
|
if (granulepos == (gint64) - 1)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
frame_mask = (1 << pad->granuleshift) - 1;
|
frame_mask = (1ll << pad->granuleshift) - 1;
|
||||||
|
|
||||||
return ((granulepos & frame_mask) == 0);
|
return ((granulepos & frame_mask) == 0);
|
||||||
}
|
}
|
||||||
|
@ -1105,7 +1105,7 @@ packet_duration_flac (GstOggStream * pad, ogg_packet * packet)
|
||||||
return 576 << (block_size_index - 2);
|
return 576 << (block_size_index - 2);
|
||||||
}
|
}
|
||||||
if (block_size_index >= 8) {
|
if (block_size_index >= 8) {
|
||||||
return 256 << (block_size_index - 8);
|
return 256ll << (block_size_index - 8);
|
||||||
}
|
}
|
||||||
if (block_size_index == 6 || block_size_index == 7) {
|
if (block_size_index == 6 || block_size_index == 7) {
|
||||||
guint len, bytes = (block_size_index - 6) + 1;
|
guint len, bytes = (block_size_index - 6) + 1;
|
||||||
|
@ -2195,7 +2195,7 @@ is_granulepos_keyframe_daala (GstOggStream * pad, gint64 granulepos)
|
||||||
if (granulepos == (gint64) - 1)
|
if (granulepos == (gint64) - 1)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
frame_mask = (1 << pad->granuleshift) - 1;
|
frame_mask = (1ll << pad->granuleshift) - 1;
|
||||||
|
|
||||||
return ((granulepos & frame_mask) == 0);
|
return ((granulepos & frame_mask) == 0);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue