X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fsbgdec.c;h=de1de271bbea7121dd4234f81d14b948ddc949d6;hb=9086af2a0a590c7f576b72379d1708392cd96d5c;hp=cbedd120fbf2756154f0f723eebb362133e80d1a;hpb=b8eb0827f053230dd919bc73e25381b47b4fe1a7;p=ffmpeg diff --git a/libavformat/sbgdec.c b/libavformat/sbgdec.c index cbedd120fbf..de1de271bbe 100644 --- a/libavformat/sbgdec.c +++ b/libavformat/sbgdec.c @@ -197,7 +197,7 @@ static int str_to_time(const char *str, int64_t *rtime) if (end > cur + 1) cur = end; } - *rtime = (hours * 3600 + minutes * 60 + seconds) * AV_TIME_BASE; + *rtime = (hours * 3600LL + minutes * 60LL + seconds) * AV_TIME_BASE; return cur - str; } @@ -1327,7 +1327,7 @@ static int generate_intervals(void *log, struct sbg_script *s, int sample_rate, static int encode_intervals(struct sbg_script *s, AVCodecParameters *par, struct ws_intervals *inter) { - int i, edata_size = 4; + int i, edata_size = 4, ret; uint8_t *edata; for (i = 0; i < inter->nb_inter; i++) { @@ -1336,8 +1336,8 @@ static int encode_intervals(struct sbg_script *s, AVCodecParameters *par, if (edata_size < 0) return AVERROR(ENOMEM); } - if (ff_alloc_extradata(par, edata_size)) - return AVERROR(ENOMEM); + if ((ret = ff_alloc_extradata(par, edata_size)) < 0) + return ret; edata = par->extradata; #define ADD_EDATA32(v) do { AV_WL32(edata, (v)); edata += 4; } while(0) @@ -1367,7 +1367,7 @@ static int encode_intervals(struct sbg_script *s, AVCodecParameters *par, return 0; } -static av_cold int sbg_read_probe(AVProbeData *p) +static av_cold int sbg_read_probe(const AVProbeData *p) { int r, score; struct sbg_script script = { 0 }; @@ -1446,6 +1446,7 @@ fail: static int sbg_read_packet(AVFormatContext *avf, AVPacket *packet) { int64_t ts, end_ts; + int ret; ts = avf->streams[0]->cur_dts; end_ts = ts + avf->streams[0]->codecpar->frame_size; @@ -1454,8 +1455,8 @@ static int sbg_read_packet(AVFormatContext *avf, AVPacket *packet) end_ts); if (end_ts <= ts) return AVERROR_EOF; - if (av_new_packet(packet, 12) < 0) - return AVERROR(ENOMEM); + if ((ret = av_new_packet(packet, 12)) < 0) + return ret; packet->dts = packet->pts = ts; packet->duration = end_ts - ts; AV_WL64(packet->data + 0, ts);