[vlc-devel] commit: Use calloc when appropriate (cdrom.c) (Laurent Aimar )
git version control
git at videolan.org
Wed Feb 25 21:58:48 CET 2009
vlc | branch: master | Laurent Aimar <fenrir at videolan.org> | Wed Feb 25 21:58:18 2009 +0100| [bbbebb32bde82796ef8f09db44caf93918dc6921] | committer: Laurent Aimar
Use calloc when appropriate (cdrom.c)
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bbbebb32bde82796ef8f09db44caf93918dc6921
---
modules/access/vcd/cdrom.c | 19 ++++++++++---------
1 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/modules/access/vcd/cdrom.c b/modules/access/vcd/cdrom.c
index bf5b03f..1990237 100644
--- a/modules/access/vcd/cdrom.c
+++ b/modules/access/vcd/cdrom.c
@@ -32,6 +32,7 @@
#include <vlc_common.h>
#include <vlc_access.h>
+#include <limits.h>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
@@ -208,7 +209,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev,
if( pp_sectors )
{
- *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) );
+ *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) );
if( *pp_sectors == NULL )
return 0;
memcpy( *pp_sectors, p_vcddev->p_sectors,
@@ -244,7 +245,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev,
CDTOCDescriptor *pTrackDescriptors;
u_char track;
- *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) );
+ *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) );
if( *pp_sectors == NULL )
{
darwin_freeTOC( pTOC );
@@ -349,7 +350,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev,
((unsigned int)p_tocheader[1] << 8);
p_fulltoc = malloc( i_toclength );
- *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) );
+ *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) );
if( *pp_sectors == NULL || p_fulltoc == NULL )
{
@@ -415,7 +416,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev,
{
int i;
- *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) );
+ *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) );
if( *pp_sectors == NULL )
return 0;
@@ -448,7 +449,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev,
{
int i;
- *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) );
+ *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) );
if( *pp_sectors == NULL )
return 0;
@@ -503,7 +504,7 @@ int ioctl_GetTracksMap( vlc_object_t *p_this, const vcddev_t *p_vcddev,
{
int i;
- *pp_sectors = malloc( (i_tracks + 1) * sizeof(**pp_sectors) );
+ *pp_sectors = calloc( i_tracks + 1, sizeof(**pp_sectors) );
if( *pp_sectors == NULL )
return 0;
@@ -914,7 +915,7 @@ static int OpenVCDImage( vlc_object_t * p_this, const char *psz_dev,
* about the cuefile */
size_t i_tracks = 0;
- while( fgets( line, 1024, cuefile ) )
+ while( fgets( line, 1024, cuefile ) && i_tracks < INT_MAX-1 )
{
/* look for a TRACK line */
char psz_dummy[9];
@@ -930,7 +931,7 @@ static int OpenVCDImage( vlc_object_t * p_this, const char *psz_dev,
&i_min, &i_sec, &i_frame ) != 4) || (i_num != 1) )
continue;
- int *buf = realloc (p_sectors, (i_tracks + 1) * sizeof (int));
+ int *buf = realloc (p_sectors, (i_tracks + 1) * sizeof (*buf));
if (buf == NULL)
goto error;
p_sectors = buf;
@@ -943,7 +944,7 @@ static int OpenVCDImage( vlc_object_t * p_this, const char *psz_dev,
}
/* fill in the last entry */
- int *buf = realloc (p_sectors, (i_tracks + 1) * sizeof (int));
+ int *buf = realloc (p_sectors, (i_tracks + 1) * sizeof (*buf));
if (buf == NULL)
goto error;
p_sectors = buf;
More information about the vlc-devel
mailing list