[vlc-commits] [Git][videolan/vlc][master] 3 commits: mux: mpeg: add missing includes
Steve Lhomme (@robUx4)
gitlab at videolan.org
Mon Aug 5 18:05:01 UTC 2024
Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits:
b22e3720 by Alexandre Janniaux at 2024-08-05T17:22:33+00:00
mux: mpeg: add missing includes
Necessary because malloc and uint8_t are used.
- - - - -
5c24c232 by Alexandre Janniaux at 2024-08-05T17:22:33+00:00
mux: mpeg: remove useless include
- - - - -
3856f9fc by Alexandre Janniaux at 2024-08-05T17:22:33+00:00
mux: mpeg: guarantee non-overflow in the function
Fixes the bunch of warnings:
In file included from ../../modules/mux/mpeg/tables.c:44:
In function ‘bits_write’,
inlined from ‘GetPMTmpeg4’ at ../../modules/mux/mpeg/tables.c:220:9,
inlined from ‘BuildPMT’ at ../../modules/mux/mpeg/tables.c:478:13:
../../modules/mux/mpeg/bits.h:69:48: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
69 | p_buffer->p_data[p_buffer->i_data] |= p_buffer->i_mask;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
../../modules/mux/mpeg/tables.c: In function ‘BuildPMT’:
../../modules/mux/mpeg/tables.c:181:13: note: at offset 4096 into destination object ‘iod’ of size 4096
181 | uint8_t iod[4096];
| ^~~
In function ‘bits_write’,
inlined from ‘GetPMTmpeg4’ at ../../modules/mux/mpeg/tables.c:220:9,
inlined from ‘BuildPMT’ at ../../modules/mux/mpeg/tables.c:478:13:
../../modules/mux/mpeg/bits.h:69:48: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
69 | p_buffer->p_data[p_buffer->i_data] |= p_buffer->i_mask;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
../../modules/mux/mpeg/tables.c: In function ‘BuildPMT’:
../../modules/mux/mpeg/tables.c:181:13: note: at offset 4096 into destination object ‘iod’ of size 4096
181 | uint8_t iod[4096];
| ^~~
...
- - - - -
2 changed files:
- modules/mux/mpeg/bits.h
- modules/mux/mpeg/tables.c
Changes:
=====================================
modules/mux/mpeg/bits.h
=====================================
@@ -21,6 +21,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
+#include <stdint.h>
+#include <stdlib.h>
+
typedef struct bits_buffer_s
{
int i_size;
@@ -60,6 +63,9 @@ static inline void bits_align( bits_buffer_t *p_buffer )
static inline void bits_write( bits_buffer_t *p_buffer,
int i_count, uint64_t i_bits )
{
+ if (p_buffer->i_data + i_count < p_buffer->i_size)
+ return;
+
while( i_count > 0 )
{
i_count--;
=====================================
modules/mux/mpeg/tables.c
=====================================
@@ -36,8 +36,6 @@
# include <dvbpsi/dr.h>
# include <dvbpsi/psi.h>
-#include "dvbpsi_compat.h"
-
#include "streams.h"
#include "tsutil.h"
#include "tables.h"
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/befc924c225a39bf49f6e4ac09d1660013ce0676...3856f9fce93471c1d36bc6fdc34ad92484d79be2
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/befc924c225a39bf49f6e4ac09d1660013ce0676...3856f9fce93471c1d36bc6fdc34ad92484d79be2
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance
More information about the vlc-commits
mailing list