diff --git a/media-libs/libdvbpsi/patches/libdvbpsi-1.2.0.patchset b/media-libs/libdvbpsi/patches/libdvbpsi-1.2.0.patchset index c39d016a2..0dbfdb814 100644 --- a/media-libs/libdvbpsi/patches/libdvbpsi-1.2.0.patchset +++ b/media-libs/libdvbpsi/patches/libdvbpsi-1.2.0.patchset @@ -44,7 +44,7 @@ index b878676..0a2e76c 100644 1.8.3.4 -From 3562612d5fab490076c3990186535375592403d7 Mon Sep 17 00:00:00 2001 +From b58bc8958575425c65d185c49d5c844659250c75 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Fri, 12 Sep 2014 11:04:58 +0200 Subject: gcc2 fixes. @@ -2469,7 +2469,7 @@ index 88340ae..f2b9719 100644 { dvbpsi_error(p_dvbpsi, "ATSC STT decoder", "No decoder specified"); diff --git a/src/tables/atsc_vct.c b/src/tables/atsc_vct.c -index 7a4ccf4..1ac0d39 100644 +index 7a4ccf4..c1b515e 100644 --- a/src/tables/atsc_vct.c +++ b/src/tables/atsc_vct.c @@ -95,10 +95,13 @@ static void dvbpsi_atsc_DecodeVCTSections(dvbpsi_atsc_vct_t* p_vct, @@ -2527,22 +2527,26 @@ index 7a4ccf4..1ac0d39 100644 p_vct_decoder = (dvbpsi_atsc_vct_decoder_t*)p_subdec->p_decoder; if (!p_vct_decoder) return; -@@ -446,10 +448,13 @@ static void dvbpsi_atsc_GatherVCTSections(dvbpsi_t *p_dvbpsi, +@@ -446,13 +448,15 @@ static void dvbpsi_atsc_GatherVCTSections(dvbpsi_t *p_dvbpsi, dvbpsi_decoder_t *p_decoder, dvbpsi_psi_section_t *p_section) { -+ const uint8_t i_table_id; +- assert(p_dvbpsi); +- assert(p_dvbpsi->p_decoder); + dvbpsi_demux_t *p_demux; + dvbpsi_atsc_vct_decoder_t *p_vct_decoder; - assert(p_dvbpsi); - assert(p_dvbpsi->p_decoder); - const uint8_t i_table_id = (p_section->i_table_id == 0xC8 || -+ i_table_id = (p_section->i_table_id == 0xC8 || ++ const uint8_t i_table_id = (p_section->i_table_id == 0xC8 || p_section->i_table_id == 0xC9) ? p_section->i_table_id : 0xC8; -@@ -460,8 +465,8 @@ static void dvbpsi_atsc_GatherVCTSections(dvbpsi_t *p_dvbpsi, ++ assert(p_dvbpsi); ++ assert(p_dvbpsi->p_decoder); + if (!dvbpsi_CheckPSISection(p_dvbpsi, p_section, i_table_id, "ATSC VCT decoder")) + { + dvbpsi_DeletePSISections(p_section); +@@ -460,8 +464,8 @@ static void dvbpsi_atsc_GatherVCTSections(dvbpsi_t *p_dvbpsi, } /* */ @@ -2672,7 +2676,7 @@ index 385c50d..1539ffc 100644 /* TS discontinuity check */ if (p_cat_decoder->b_discontinuity) diff --git a/src/tables/eit.c b/src/tables/eit.c -index 6e359a2..e746829 100644 +index 6e359a2..c8314f7 100644 --- a/src/tables/eit.c +++ b/src/tables/eit.c @@ -57,10 +57,13 @@ @@ -2743,22 +2747,26 @@ index 6e359a2..e746829 100644 /* As there may be gaps in the section_number fields (see below), we * have to wait until we have received a section_number twice or * until we have a received a section_number which is -@@ -424,10 +426,13 @@ static bool dvbpsi_AddSectionEIT(dvbpsi_t *p_dvbpsi, dvbpsi_eit_decoder_t *p_eit +@@ -424,13 +426,15 @@ static bool dvbpsi_AddSectionEIT(dvbpsi_t *p_dvbpsi, dvbpsi_eit_decoder_t *p_eit void dvbpsi_eit_sections_gather(dvbpsi_t *p_dvbpsi, dvbpsi_decoder_t *p_private_decoder, dvbpsi_psi_section_t *p_section) { -+ const uint8_t i_table_id; +- assert(p_dvbpsi); +- assert(p_dvbpsi->p_decoder); + dvbpsi_demux_t *p_demux; + dvbpsi_eit_decoder_t* p_eit_decoder; - assert(p_dvbpsi); - assert(p_dvbpsi->p_decoder); - const uint8_t i_table_id = (p_section->i_table_id >= 0x4e && -+ i_table_id = (p_section->i_table_id >= 0x4e && ++ const uint8_t i_table_id = (p_section->i_table_id >= 0x4e && p_section->i_table_id <= 0x6f) ? p_section->i_table_id : 0x4e; -@@ -438,9 +443,8 @@ void dvbpsi_eit_sections_gather(dvbpsi_t *p_dvbpsi, dvbpsi_decoder_t *p_private_ ++ assert(p_dvbpsi); ++ assert(p_dvbpsi->p_decoder); + if (!dvbpsi_CheckPSISection(p_dvbpsi, p_section, i_table_id, "EIT decoder")) + { + dvbpsi_DeletePSISections(p_section); +@@ -438,9 +442,8 @@ void dvbpsi_eit_sections_gather(dvbpsi_t *p_dvbpsi, dvbpsi_decoder_t *p_private_ } /* We have a valid EIT section */ @@ -2770,7 +2778,7 @@ index 6e359a2..e746829 100644 /* TS discontinuity check */ if (p_demux->b_discontinuity) -@@ -541,12 +545,13 @@ void dvbpsi_eit_sections_decode(dvbpsi_eit_t* p_eit, +@@ -541,12 +544,13 @@ void dvbpsi_eit_sections_decode(dvbpsi_eit_t* p_eit, dvbpsi_eit_event_t *p_event = dvbpsi_eit_event_add(p_eit, i_event_id, i_start_time, i_duration, i_running_status, b_free_ca, i_ev_length); @@ -2786,7 +2794,7 @@ index 6e359a2..e746829 100644 p_ev_end = p_section->p_payload_end; while (p_byte < p_ev_end) diff --git a/src/tables/nit.c b/src/tables/nit.c -index c4bca0b..f16ffe0 100644 +index c4bca0b..8c57ada 100644 --- a/src/tables/nit.c +++ b/src/tables/nit.c @@ -59,10 +59,13 @@ bool dvbpsi_nit_attach(dvbpsi_t* p_dvbpsi, uint8_t i_table_id, @@ -2849,20 +2857,23 @@ index c4bca0b..f16ffe0 100644 if (p_nit_decoder->p_building_nit->i_version != p_section->i_version) { /* version_number */ -@@ -360,9 +361,11 @@ void dvbpsi_nit_sections_gather(dvbpsi_t *p_dvbpsi, +@@ -360,12 +361,13 @@ void dvbpsi_nit_sections_gather(dvbpsi_t *p_dvbpsi, dvbpsi_decoder_t *p_private_decoder, dvbpsi_psi_section_t *p_section) { -+ const uint8_t i_table_id; +- assert(p_dvbpsi); + dvbpsi_nit_decoder_t* p_nit_decoder; - assert(p_dvbpsi); - const uint8_t i_table_id = ((p_section->i_table_id == 0x40) || -+ i_table_id = ((p_section->i_table_id == 0x40) || ++ const uint8_t i_table_id = ((p_section->i_table_id == 0x40) || (p_section->i_table_id == 0x41)) ? p_section->i_table_id : 0x40; -@@ -373,8 +376,7 @@ void dvbpsi_nit_sections_gather(dvbpsi_t *p_dvbpsi, ++ assert(p_dvbpsi); + if (!dvbpsi_CheckPSISection(p_dvbpsi, p_section, i_table_id, "NIT decoder")) + { + dvbpsi_DeletePSISections(p_section); +@@ -373,8 +375,7 @@ void dvbpsi_nit_sections_gather(dvbpsi_t *p_dvbpsi, } /* */