Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
coverity fixes
  • Loading branch information
perexg committed Jan 8, 2016
1 parent 6b00c26 commit 06e80eb
Show file tree
Hide file tree
Showing 14 changed files with 41 additions and 27 deletions.
4 changes: 2 additions & 2 deletions src/dvr/dvr.h
Expand Up @@ -456,9 +456,9 @@ static inline int dvr_entry_is_valid(dvr_entry_t *de)

int dvr_entry_get_mc(dvr_entry_t *de);

const char *dvr_entry_get_retention_string ( dvr_entry_t *de );
char *dvr_entry_get_retention_string ( dvr_entry_t *de );

const char *dvr_entry_get_removal_string ( dvr_entry_t *de );
char *dvr_entry_get_removal_string ( dvr_entry_t *de );

uint32_t dvr_entry_get_retention_days( dvr_entry_t *de );

Expand Down
3 changes: 2 additions & 1 deletion src/dvr/dvr_autorec.c
Expand Up @@ -102,10 +102,11 @@ dvr_autorec_completed(dvr_autorec_entry_t *dae, int error_code)
{
uint32_t count, total = 0;
dvr_entry_t *de, *de_prev;
uint32_t max_count = dvr_autorec_get_max_count(dae);
uint32_t max_count;
char ubuf[UUID_HEX_SIZE];

if (dae == NULL) return;
max_count = dvr_autorec_get_max_count(dae);
if (max_count <= 0) return;
while (1) {
count = 0;
Expand Down
15 changes: 9 additions & 6 deletions src/dvr/dvr_db.c
Expand Up @@ -255,7 +255,7 @@ dvr_entry_get_extra_time_post( dvr_entry_t *de )
return extra;
}

const char *
char *
dvr_entry_get_retention_string ( dvr_entry_t *de )
{
char buf[24];
Expand All @@ -271,7 +271,7 @@ dvr_entry_get_retention_string ( dvr_entry_t *de )
return strdup(buf);
}

const char *
char *
dvr_entry_get_removal_string ( dvr_entry_t *de )
{
char buf[24];
Expand Down Expand Up @@ -1573,7 +1573,7 @@ static dvr_entry_t *_dvr_entry_update
if (e && e->episode && e->episode->subtitle) {
save |= lang_str_set2(&de->de_subtitle, e->episode->subtitle) ? DVR_UPDATED_SUBTITLE : 0;
} else if (subtitle) {
save |= lang_str_set(&de->de_title, subtitle, lang) ? DVR_UPDATED_SUBTITLE : 0;
save |= lang_str_set(&de->de_subtitle, subtitle, lang) ? DVR_UPDATED_SUBTITLE : 0;
}

/* EID */
Expand Down Expand Up @@ -3237,6 +3237,7 @@ dvr_entry_delete(dvr_entry_t *de)
time_t t;
struct tm tm;
const char *filename;
char *str1, *str2;
char tbuf[64], ubuf[UUID_HEX_SIZE], *rdir, *postcmd;
int r, ret = 0;

Expand All @@ -3245,13 +3246,15 @@ dvr_entry_delete(dvr_entry_t *de)
if (strftime(tbuf, sizeof(tbuf), "%F %T", &tm) <= 0)
*tbuf = 0;

str1 = dvr_entry_get_retention_string(de);
str2 = dvr_entry_get_removal_string(de);
tvhlog(LOG_INFO, "dvr", "delete entry %s \"%s\" on \"%s\" start time %s, "
"scheduled for recording by \"%s\", retention \"%s\" removal \"%s\"",
idnode_uuid_as_str(&de->de_id, ubuf),
lang_str_get(de->de_title, NULL), DVR_CH_NAME(de), tbuf,
de->de_creator ?: "",
dvr_entry_get_retention_string(de),
dvr_entry_get_removal_string(de));
de->de_creator ?: "", str1, str2);
free(str2);
free(str1);

if(!htsmsg_is_empty(de->de_files)) {
#if ENABLE_INOTIFY
Expand Down
18 changes: 10 additions & 8 deletions src/dvr/dvr_rec.c
Expand Up @@ -1090,16 +1090,16 @@ dvr_thread_mpegts_stats(dvr_entry_t *de, void *sm_data)
{
th_subscription_t *ts;
pktbuf_t *pb = sm_data;
int ret;
int ret = 0;

if (pb == NULL)
return 0;
if ((ts = de->de_s) != NULL) {
if (pb->pb_err) {
de->de_data_errors += pb->pb_err;
ret = 1;
if (pb) {
if ((ts = de->de_s) != NULL) {
if (pb->pb_err) {
de->de_data_errors += pb->pb_err;
ret = 1;
}
subscription_add_bytes_out(ts, pktbuf_len(pb));
}
subscription_add_bytes_out(ts, pktbuf_len(pb));
}
return ret;
}
Expand Down Expand Up @@ -1368,6 +1368,8 @@ dvr_thread(void *aux)
case SMT_START:
start_time = dispatch_clock;
packets = 0;
if (ss)
streaming_start_unref(ss);
ss = streaming_start_copy((streaming_start_t *)sm->sm_data);
break;

Expand Down
5 changes: 3 additions & 2 deletions src/dvr/dvr_vfsmgr.c
Expand Up @@ -94,13 +94,14 @@ dvr_vfs_refresh_entry(dvr_entry_t *de)
return;
HTSMSG_FOREACH(f, de->de_files)
if ((m = htsmsg_field_get_map(f)) != NULL) {
filename = htsmsg_get_str(m, "filename");
vfs = dvr_vfs_find1(vfs, m);
if (vfs) {
size = htsmsg_get_s64_or_default(m, "size", 0);
vfs->used_size = size <= vfs->used_size ? vfs->used_size - size : 0;
}
if(statvfs(filename, &vst) < 0 || stat(filename, &st) < 0) {
filename = htsmsg_get_str(m, "filename");
if(filename == NULL ||
statvfs(filename, &vst) < 0 || stat(filename, &st) < 0) {
tvhlog(LOG_ERR, "dvr", "unable to stat file '%s'", filename);
goto rem;
}
Expand Down
3 changes: 1 addition & 2 deletions src/esfilter.c
Expand Up @@ -219,8 +219,7 @@ static const char *
esfilter_class_get_title(idnode_t *self, const char *lang)
{
esfilter_t *esf = (esfilter_t *)self;
char ubuf[UUID_HEX_SIZE];
return idnode_uuid_as_str(&esf->esf_id, ubuf);
return idnode_uuid_as_str(&esf->esf_id, prop_sbuf);
}

static void
Expand Down
3 changes: 3 additions & 0 deletions src/input/mpegts/dvb_support.c
Expand Up @@ -429,6 +429,9 @@ atsc_get_string

src += 3;
srclen -= 3;

if (bytecount > srclen)
return ls;

if (mode == 0 && compressiontype == 0) {
tvhtrace("atsc-str", " %d: comptype 0x%02x, mode 0x%02x, %d bytes: '%.*s'",
Expand Down
2 changes: 2 additions & 0 deletions src/input/mpegts/iptv/iptv_http.c
Expand Up @@ -132,6 +132,8 @@ iptv_http_get_url( http_priv_t *hp, htsmsg_t *m )
/*
* extract the URL
*/
if (items == NULL)
return NULL;
HTSMSG_FOREACH(f, items) {
if ((item = htsmsg_field_get_map(f)) == NULL) continue;
inf = htsmsg_get_map(item, "stream-inf");
Expand Down
4 changes: 3 additions & 1 deletion src/input/mpegts/scanfile.c
Expand Up @@ -393,8 +393,10 @@ scanfile_load_one
if (r) {
free(mux);
} else {
if (*net == NULL && scanfile_create_network(net, type, name, mux->dmc_fe_delsys))
if (*net == NULL && scanfile_create_network(net, type, name, mux->dmc_fe_delsys)) {
free(mux);
return -1;
}
LIST_INSERT_HEAD(&(*net)->sfn_muxes, mux, dmc_link);
}
return 1;
Expand Down
1 change: 0 additions & 1 deletion src/misc/m3u.c
Expand Up @@ -271,7 +271,6 @@ htsmsg_t *parse_m3u
htsmsg_add_str(item, "m3u-url", get_url(buf, sizeof(buf), p, url));
} else if (item) {
htsmsg_destroy(item);
free(item);
item = NULL;
}

Expand Down
2 changes: 1 addition & 1 deletion src/parsers/bitstream.c
Expand Up @@ -108,7 +108,7 @@ read_golomb_ue(bitstream_t *bs)
for(b = 0; !b && !bs_eof(bs) && lzb < 32; lzb++)
b = read_bits1(bs);

if (lzb < 0)
if (lzb < 0 || lzb > 31)
return 0;
return (1 << lzb) - 1 + read_bits(bs, lzb);
}
Expand Down
3 changes: 2 additions & 1 deletion src/plumbing/transcoding.c
Expand Up @@ -1162,7 +1162,7 @@ transcoder_stream_video(transcoder_t *t, transcoder_stream_t *ts, th_pkt_t *pkt)
video_stream_t *vs = (video_stream_t*)ts;
streaming_message_t *sm;
th_pkt_t *pkt2;
static int max_bitrate = (INT_MAX / 3000) * 0.8;
static int max_bitrate = INT_MAX / ((3000*10)/8);

av_init_packet(&packet);
av_init_packet(&packet2);
Expand Down Expand Up @@ -1431,6 +1431,7 @@ transcoder_stream_video(transcoder_t *t, transcoder_stream_t *ts, th_pkt_t *pkt)
}

/* and pull out a filtered frame */
got_output = 0;
while (1) {
ret = av_buffersink_get_frame(vs->flt_bufsinkctx, vs->vid_enc_frame);
if (ret == AVERROR(EAGAIN) || ret == AVERROR_EOF)
Expand Down
1 change: 1 addition & 0 deletions src/tcp.c
Expand Up @@ -121,6 +121,7 @@ tcp_connect(const char *hostname, int port, const char *bindaddr,
} else {
snprintf(errbuf, errbufsize, "Invalid protocol family");
freeaddrinfo(ai);
close(fd);
return -1;
}

Expand Down
4 changes: 2 additions & 2 deletions src/wizard.c
Expand Up @@ -236,7 +236,7 @@ wizard_page_t *wizard_hello(void)
page->aux = w = calloc(1, sizeof(wizard_hello_t));

if (config.language_ui)
strncpy(w->ui_lang, config.language_ui, sizeof(w->ui_lang));
strncpy(w->ui_lang, config.language_ui, sizeof(w->ui_lang)-1);

m = htsmsg_csv_2_list(config.language, ',');
f = m ? HTSMSG_FIRST(m) : NULL;
Expand Down Expand Up @@ -322,7 +322,7 @@ static void login_save(idnode_t *in)
}

if (w->username[0]) {
s = w->username && w->username[0] ? w->username : "*";
s = w->username[0] ? w->username : "*";
conf = htsmsg_create_map();
htsmsg_add_str(conf, "prefix", w->network);
htsmsg_add_str(conf, "username", s);
Expand Down

0 comments on commit 06e80eb

Please sign in to comment.