mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 06:54:49 +00:00
ext/dvdread/dvdreadsrc.c: Add some gint64 casts to prevent 32 bit integer overflows.
Original commit message from CVS: Patch by: Tal Shalif <tshalif at nargila dot org> * ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_create), (gst_dvd_read_src_do_seek), (gst_dvd_read_src_do_position_query): Add some gint64 casts to prevent 32 bit integer overflows. Fixes bug #516989.
This commit is contained in:
parent
a739f67bc2
commit
98ce07188f
2 changed files with 12 additions and 3 deletions
|
@ -1,3 +1,12 @@
|
||||||
|
2008-02-18 Sebastian Dröge <slomo@circular-chaos.org>
|
||||||
|
|
||||||
|
Patch by: Tal Shalif <tshalif at nargila dot org>
|
||||||
|
|
||||||
|
* ext/dvdread/dvdreadsrc.c: (gst_dvd_read_src_create),
|
||||||
|
(gst_dvd_read_src_do_seek), (gst_dvd_read_src_do_position_query):
|
||||||
|
Add some gint64 casts to prevent 32 bit integer overflows.
|
||||||
|
Fixes bug #516989.
|
||||||
|
|
||||||
2008-02-17 Jan Schmidt <jan.schmidt@sun.com>
|
2008-02-17 Jan Schmidt <jan.schmidt@sun.com>
|
||||||
|
|
||||||
* gst/mpegaudioparse/gstmpegaudioparse.c:
|
* gst/mpegaudioparse/gstmpegaudioparse.c:
|
||||||
|
|
|
@ -887,7 +887,7 @@ gst_dvd_read_src_create (GstPushSrc * pushsrc, GstBuffer ** p_buf)
|
||||||
if (src->need_newsegment) {
|
if (src->need_newsegment) {
|
||||||
gst_pad_push_event (srcpad,
|
gst_pad_push_event (srcpad,
|
||||||
gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_BYTES,
|
gst_event_new_new_segment (FALSE, 1.0, GST_FORMAT_BYTES,
|
||||||
src->cur_pack * DVD_VIDEO_LB_LEN, -1, 0));
|
(gint64) src->cur_pack * DVD_VIDEO_LB_LEN, -1, 0));
|
||||||
src->need_newsegment = FALSE;
|
src->need_newsegment = FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1187,7 +1187,7 @@ gst_dvd_read_src_do_seek (GstBaseSrc * basesrc, GstSegment * s)
|
||||||
} else {
|
} else {
|
||||||
/* byte format */
|
/* byte format */
|
||||||
src->cur_pack = s->last_stop / DVD_VIDEO_LB_LEN;
|
src->cur_pack = s->last_stop / DVD_VIDEO_LB_LEN;
|
||||||
if ((src->cur_pack * DVD_VIDEO_LB_LEN) != s->last_stop) {
|
if (((gint64) src->cur_pack * DVD_VIDEO_LB_LEN) != s->last_stop) {
|
||||||
GST_LOG_OBJECT (src, "rounded down offset %" G_GINT64_FORMAT " => %"
|
GST_LOG_OBJECT (src, "rounded down offset %" G_GINT64_FORMAT " => %"
|
||||||
G_GINT64_FORMAT, s->last_stop,
|
G_GINT64_FORMAT, s->last_stop,
|
||||||
(gint64) src->cur_pack * DVD_VIDEO_LB_LEN);
|
(gint64) src->cur_pack * DVD_VIDEO_LB_LEN);
|
||||||
|
@ -1345,7 +1345,7 @@ gst_dvd_read_src_do_position_query (GstDvdReadSrc * src, GstQuery * query)
|
||||||
|
|
||||||
switch (format) {
|
switch (format) {
|
||||||
case GST_FORMAT_BYTES:{
|
case GST_FORMAT_BYTES:{
|
||||||
val = src->cur_pack * DVD_VIDEO_LB_LEN;
|
val = (gint64) src->cur_pack * DVD_VIDEO_LB_LEN;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:{
|
default:{
|
||||||
|
|
Loading…
Reference in a new issue