diff src/cdrom/osf/SDL_syscdrom.c @ 1379:c0a74f199ecf

Use only safe string functions
author Sam Lantinga <slouken@libsdl.org>
date Sun, 19 Feb 2006 23:46:34 +0000
parents 19418e4422cb
children d910939febfa
line wrap: on
line diff
--- a/src/cdrom/osf/SDL_syscdrom.c	Sun Feb 19 23:38:57 2006 +0000
+++ b/src/cdrom/osf/SDL_syscdrom.c	Sun Feb 19 23:46:34 2006 +0000
@@ -119,13 +119,11 @@
 
 	/* Add this drive to our list */
 	i = SDL_numcds;
-	SDL_cdlist[i] = (char *)SDL_malloc(SDL_strlen(drive)+1);
+	SDL_cdlist[i] = SDL_strdup(drive);
 	if ( SDL_cdlist[i] == NULL ) {
 	    SDL_OutOfMemory();
 	    return;
 	}
-
-	SDL_strcpy(SDL_cdlist[i], drive);
 	SDL_cdmode[i] = stbuf->st_rdev;
 	++SDL_numcds;
 #ifdef DEBUG_CDROM
@@ -174,9 +172,10 @@
     SDLcdrom = SDL_getenv("SDL_CDROM");	/* ':' separated list of devices */
     if ( SDLcdrom != NULL ) {
 	char *cdpath, *delim;
-	cdpath = SDL_malloc(SDL_strlen(SDLcdrom)+1);
+	size_t len = SDL_strlen(SDLcdrom)+1;
+	cdpath = SDL_stack_alloc(len);
 	if ( cdpath != NULL ) {
-	    SDL_strcpy(cdpath, SDLcdrom);
+	    SDL_strlcpy(cdpath, SDLcdrom, len);
 	    SDLcdrom = cdpath;
 	    do {
 		delim = SDL_strchr(SDLcdrom, ':');
@@ -192,7 +191,7 @@
 		    SDLcdrom = NULL;
 		}
 	    } while ( SDLcdrom );
-	    SDL_free(cdpath);
+	    SDL_stack_free(cdpath);
 	}
 
 	/* If we found our drives, there's nothing left to do */
@@ -226,15 +225,6 @@
 #endif
 	}
     }
-
-/*
-    SDLcdrom=SDL_malloc(sizeof(char) * 32);
-    SDL_strcpy(SDLcdrom,"/dev/rdisk/cdrom0c");
-    SDL_cdlist[0] = SDLcdrom;
-    stat(SDLcdrom, &stbuf);
-    SDL_cdmode[0] = stbuf.st_rdev;
-    SDL_numcds = 1;
- */
     return (0);
 }