summaryrefslogtreecommitdiff
authorKe Gong <ke.gong@amlogic.com>2017-05-11 08:42:19 (GMT)
committer Ke Gong <ke.gong@amlogic.com>2017-05-11 08:42:19 (GMT)
commit2144be6cac2b0fa856e35f9e1a73dec39804d4ec (patch)
treeb8244b110865e1c4655b316540ffc27d2995cd7c
parent2e4850870aa241af331920a375b47a16e79d4c23 (diff)
downloadlibzvbi-2144be6cac2b0fa856e35f9e1a73dec39804d4ec.zip
libzvbi-2144be6cac2b0fa856e35f9e1a73dec39804d4ec.tar.gz
libzvbi-2144be6cac2b0fa856e35f9e1a73dec39804d4ec.tar.bz2
PD#143975: reset all windows when get service-reset cmd
Squashed commit of the following: commit ea3f316210d5a9b9750171c9a5f8c6c1066db3f7 Author: Pengfei Liu <pengfei.liu@amlogic.com> Date: Tue May 9 15:47:02 2017 +0800 PD#143975: reset all windows when get service-reset cmd Change-Id: If952957fa6cc2de43a575c33e0553560c1199a88
Diffstat
-rwxr-xr-x[-rw-r--r--]src/dtvcc.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/dtvcc.c b/src/dtvcc.c
index f8b4762..17b8a79 100644..100755
--- a/src/dtvcc.c
+++ b/src/dtvcc.c
@@ -3453,17 +3453,24 @@ dtvcc_try_decode_packet (struct dtvcc_decoder * dc,
static void
dtvcc_reset_service (struct dtvcc_service * ds)
{
+ int i = 0;
ds->curr_window = NULL;
ds->created = 0;
-
+ for(i=0; i<8; i++)
+ {
+ memset(&ds->window[i], 0, sizeof(struct dtvcc_window));
+ memset(ds->window[i].buffer, 0, sizeof(ds->window[i].buffer));
+ }
cc_timestamp_reset (&ds->timestamp);
}
void
dtvcc_reset (struct dtvcc_decoder * dc)
{
- dtvcc_reset_service (&dc->service[0]);
- dtvcc_reset_service (&dc->service[1]);
+ int i;
+ for(i=0; i<6; i++){
+ dtvcc_reset_service (&dc->service[i]);
+ }
dc->packet_size = 0;
dc->next_sequence_number = -1;