Mercurial > sdl-ios-xcode
diff src/SDL_error.c @ 1172:f69f4d25fb20
Don't crash if a NULL is passed for a "%s" parameter to SDL_SetError(),
instead replace it with the string "(null)", like glibc's printf() would do.
author | Ryan C. Gordon <icculus@icculus.org> |
---|---|
date | Thu, 17 Nov 2005 03:04:47 +0000 |
parents | b8d311d90021 |
children | c9b51268668f |
line wrap: on
line diff
--- a/src/SDL_error.c Thu Nov 17 02:35:15 2005 +0000 +++ b/src/SDL_error.c Thu Nov 17 03:04:47 2005 +0000 @@ -108,8 +108,10 @@ case 's': { int index = error->argc; - strncpy((char *)error->args[index].buf, - va_arg(ap, char *), ERR_MAX_STRLEN); + char *str = va_arg(ap, char *); + if (str == NULL) + str = "(null)"; + strncpy((char *)error->args[index].buf, str, ERR_MAX_STRLEN); error->args[index].buf[ERR_MAX_STRLEN-1] = 0; error->argc++; }