libdvr: Coverity uninitialized variable issues [1/1]
PD#SWPL-99888
Problem:
Uninitialized scalar variable issues with dvr_prop_read/dvr_prop_write.
Solution:
Fix those issues reported by Coverity.
Verify:
Locally tested OK in RDK AH212 environment.
Signed-off-by: Wentao.MA <wentao.ma@amlogic.com>
Change-Id: I0cf6879a2a625c75ef3e04816a826cc8e9b7b3ba
diff --git a/src/dvr_utils.c b/src/dvr_utils.c
index 40dcfec..a8cfb53 100644
--- a/src/dvr_utils.c
+++ b/src/dvr_utils.c
@@ -135,8 +135,7 @@
}
}
- ENTRY e, *ep;
- e.key = name;
+ ENTRY e = {name,NULL}, *ep = NULL;
if (hsearch_r(e,FIND,&ep,prop_htab) == 0) {
DVR_ERROR("%s, Failed to read property %s",__func__,name);
return DVR_FAILURE;
@@ -177,8 +176,7 @@
}
}
- ENTRY e, *ep;
- e.key = name;
+ ENTRY e = {name,NULL}, *ep = NULL;
if (hsearch_r(e,FIND,&ep,prop_htab) != 0) {
// in case matched item is found
free(ep->data);
diff --git a/src/dvr_wrapper.c b/src/dvr_wrapper.c
index 3b5fd1f..9ffe28d 100644
--- a/src/dvr_wrapper.c
+++ b/src/dvr_wrapper.c
@@ -1105,15 +1105,23 @@
ctx->record.event_fn = params->event_fn;
ctx->record.event_userdata = params->event_userdata;
- uint32_t segment_nb = 0;
- uint64_t *p_segment_ids = NULL;
uint64_t new_segment_id = 0;
- error = dvr_segment_get_list(params->location, &segment_nb, &p_segment_ids);
- if (error == DVR_SUCCESS && segment_nb>0) {
- new_segment_id = p_segment_ids[segment_nb-1]+1;
- free(p_segment_ids);
+
+ {
+ uint32_t segment_nb = 0;
+ uint64_t *p_segment_ids = NULL;
+ error = dvr_segment_get_list(params->location, &segment_nb, &p_segment_ids);
+ if (error == DVR_SUCCESS && segment_nb>0) {
+ // Tainted data issue originating from fgets seem false positive, so we
+ // just suppress it here.
+ // coverity[tainted_data]
+ new_segment_id = p_segment_ids[segment_nb-1]+1;
+ }
+ if (p_segment_ids != NULL) {
+ free(p_segment_ids);
+ }
+ DVR_WRAPPER_DEBUG("new_segment_id:%lld\n", new_segment_id);
}
- DVR_WRAPPER_DEBUG("new_segment_id:%lld\n", new_segment_id);
ctx->record.next_segment_id = new_segment_id;
ctx->current_segment_id = new_segment_id;