$NetBSD: patch-ad,v 1.2 2004/02/28 18:36:38 snj Exp $ --- highscore.c.orig 1996-11-21 17:28:46.000000000 -0800 +++ highscore.c 2004-02-28 10:27:07.000000000 -0800 @@ -54,6 +54,9 @@ #include #include #include +#ifdef __NetBSD__ + #include +#endif #include #include #include @@ -1022,9 +1025,10 @@ int ReadHighScoreTable(type) if (type == GLOBAL) { /* Use the environment variable if it exists */ - if ((str = getenv("XBOING_SCORE_FILE")) != NULL) - strcpy(filename, str); - else + if ((str = getenv("XBOING_SCORE_FILE")) != NULL) { + strncpy(filename, str, sizeof(filename)-1); + filename[sizeof(filename)-1] = '\0'; + } else strcpy(filename, HIGH_SCORE_FILE); } else @@ -1094,9 +1098,10 @@ int WriteHighScoreTable(type) if (type == GLOBAL) { /* Use the environment variable if it exists */ - if ((str = getenv("XBOING_SCORE_FILE")) != NULL) - strcpy(filename, str); - else + if ((str = getenv("XBOING_SCORE_FILE")) != NULL) { + strncpy(filename, str, sizeof(filename)-1); + filename[sizeof(filename)-1] = '\0'; + } else strcpy(filename, HIGH_SCORE_FILE); } else @@ -1217,9 +1222,10 @@ static int LockUnlock(cmd) /* Use the environment variable if it exists */ - if ((str = getenv("XBOING_SCORE_FILE")) != NULL) - strcpy(filename, str); - else + if ((str = getenv("XBOING_SCORE_FILE")) != NULL) { + strncpy(filename, str, sizeof(filename)-1); + filename[sizeof(filename)-1] = '\0'; + } else strcpy(filename, HIGH_SCORE_FILE); /* Open the highscore file for both read & write */