You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
248 lines
8.4 KiB
248 lines
8.4 KiB
--- a/dialog.c
|
|
+++ b/dialog.c
|
|
@@ -279,10 +279,10 @@ PopupReturnType popuphighscores()
|
|
|
|
for (i=0;i<HISCORENUM;i++)
|
|
{
|
|
- snprintf(buf,4,"%d.",i+1);
|
|
+ snprintf(buf,sizeof(buf),"%d.",i+1);
|
|
puttext(scorelistrect.x+BLOCKWIDTH,scorelistrect.y+45+i*(CHARHEIGHT*2+5),2,color.normaltext,buf);
|
|
puttext(scorelistrect.x+BLOCKWIDTH*4,scorelistrect.y+45+i*(CHARHEIGHT*2+5),2,color.normaltext,hiscorename[i]);
|
|
- snprintf(buf,30,"%ld",hiscoreval[i]);
|
|
+ snprintf(buf,sizeof(buf),"%ld",hiscoreval[i]);
|
|
puttext(scorelistrect.x+scorelistrect.w-(BLOCKWIDTH*5),scorelistrect.y+45+i*(CHARHEIGHT*2+5),2,color.normaltext,buf);
|
|
}
|
|
|
|
@@ -364,7 +364,7 @@ PopupReturnType popuphelp()
|
|
{
|
|
puttext(helprect.x+BLOCKWIDTH/2,helprect.y+BLOCKHEIGHT/2+i*(CHARHEIGHT*2+4),2,color.normaltext,helptext[i]);
|
|
}
|
|
- snprintf(buf,80,"v%d.%d.%d %s",VERMAJOR,VERMINOR,VERSUB,"Copyright (c) 2000-2002 Matthew Miller. Released under the GPL.");
|
|
+ snprintf(buf,sizeof(buf),"v%d.%d.%d %s",VERMAJOR,VERMINOR,VERSUB,"Copyright (c) 2000-2002 Matthew Miller. Released under the GPL.");
|
|
puttext(helprect.x+BLOCKWIDTH/2,helprect.y+helprect.h-CHARHEIGHT*3,1,color.copyrighttext,buf);
|
|
puttext(helprect.x+BLOCKWIDTH/2,helprect.y+helprect.h-CHARHEIGHT*1-3,1,color.copyrighttext,"Thanks to my wonderful wife Karen for inspiration (and for patience)!");
|
|
|
|
--- a/menu.c
|
|
+++ b/menu.c
|
|
@@ -193,12 +193,12 @@ PopupReturnType popupoptionsmenu()
|
|
|
|
if (strlen(commandline.theme)>0)
|
|
{
|
|
- snprintf(originaltheme,MAXTHEMENAMELENGTH+1,"%s",commandline.theme);
|
|
+ snprintf(originaltheme,sizeof(originaltheme),"%s",commandline.theme);
|
|
originalthemecl=true;
|
|
}
|
|
else
|
|
{
|
|
- snprintf(originaltheme,MAXTHEMENAMELENGTH+1,"%s",options.theme);
|
|
+ snprintf(originaltheme,sizeof(originaltheme),"%s",options.theme);
|
|
originalthemecl=false;
|
|
}
|
|
|
|
@@ -521,7 +521,7 @@ PopupReturnType menuitem_theme(char * va
|
|
if (((mbutton==1 || mbutton==4) && t==themecount-1) || ((mbutton!=1 && mbutton!=4) && t==0))
|
|
{ // "random", at the end/beginning of the list
|
|
|
|
- strncpy(val,"random",MAXMENUVALUELENGTH);
|
|
+ strcpy(options.theme,"random");
|
|
snprintf(options.theme,MAXMENUVALUELENGTH,"random");
|
|
|
|
settheme("linux"); // just for pretty
|
|
@@ -538,7 +538,7 @@ PopupReturnType menuitem_theme(char * va
|
|
if (mbutton==1 || mbutton==4) // left click or scroll forwards
|
|
{
|
|
strncpy(val,themelist[(t+1)%themecount],MAXMENUVALUELENGTH);
|
|
- snprintf(options.theme,MAXMENUVALUELENGTH,themelist[(t+1)%themecount]);
|
|
+ snprintf(options.theme,sizeof(options.theme),"%s",themelist[(t+1)%themecount]);
|
|
}
|
|
else // right or middle or scroll back
|
|
{
|
|
--- a/hiscore.c
|
|
+++ b/hiscore.c
|
|
@@ -72,7 +72,7 @@
|
|
// make sure all entries are zeroed out to start.
|
|
for (i=0;i<HISCORENUM;i++)
|
|
{
|
|
- snprintf(temphiscorename[i],7,"Nobody");
|
|
+ strcpy(temphiscorename[i],"Nobody");
|
|
temphiscoreval[i]=100; //100 is better than 0. :)
|
|
}
|
|
|
|
@@ -103,7 +103,7 @@
|
|
// ok, so now, we can copy things over in the proper sorted order
|
|
for (i=0;i<HISCORENUM;i++)
|
|
{
|
|
- snprintf(hiscorename[i],50,temphiscorename[arrayindex[i]]);
|
|
+ snprintf(hiscorename[i],50,"%s",temphiscorename[arrayindex[i]]);
|
|
hiscoreval[i]=temphiscoreval[arrayindex[i]];
|
|
}
|
|
|
|
@@ -201,13 +201,13 @@
|
|
// make sure the temp array contains the right data
|
|
for (i=0;i<HISCORENUM;i++)
|
|
{
|
|
- snprintf(temphiscorename[i],50,hiname[i]);
|
|
+ snprintf(temphiscorename[i],50,"%s",hiname[i]);
|
|
temphiscoreval[i]=hival[i];
|
|
}
|
|
|
|
// and toss in the new data
|
|
//(this is why these arrays are size HISCORENUM+1)
|
|
- snprintf(temphiscorename[HISCORENUM],50,username);
|
|
+ snprintf(temphiscorename[HISCORENUM],50,"%s",username);
|
|
temphiscoreval[HISCORENUM]=score;
|
|
|
|
// fill the "helper" array.
|
|
@@ -221,7 +221,7 @@
|
|
// and take the top ones back.
|
|
for (i=0;i<HISCORENUM;i++)
|
|
{
|
|
- snprintf(hiname[i],50,temphiscorename[arrayindex[i]]);
|
|
+ snprintf(hiname[i],50,"%s",temphiscorename[arrayindex[i]]);
|
|
hival[i]=temphiscoreval[arrayindex[i]];
|
|
}
|
|
}
|
|
--- a/line.c
|
|
+++ b/line.c
|
|
@@ -30,8 +30,9 @@
|
|
|
|
Line createline(int linenum)
|
|
{
|
|
- Line l;
|
|
+ static Line l;
|
|
|
|
+ memset(&l, 0, sizeof(l));
|
|
switch (linenum)
|
|
{
|
|
case 1:
|
|
--- a/options.c
|
|
+++ b/options.c
|
|
@@ -66,7 +66,7 @@
|
|
options.autopause=AUTOPAUSEOFF;
|
|
options.difficulty=NORMAL;
|
|
options.fullscreen=FULLSCREENOFF;
|
|
- snprintf(options.theme,MAXTHEMENAMELENGTH+1,"linux");
|
|
+ strcpy(options.theme,"linux");
|
|
}
|
|
|
|
int readoptions(void)
|
|
@@ -81,7 +81,7 @@
|
|
|
|
setdefaultoptions();
|
|
|
|
- snprintf(filename,255,"%s/%s",homedir,OPTIONFILE);
|
|
+ snprintf(filename,sizeof(filename),"%s/%s",homedir,OPTIONFILE);
|
|
|
|
optionfile=fopen(filename,"r");
|
|
if (optionfile==NULL)
|
|
@@ -135,7 +135,7 @@
|
|
}
|
|
else if (!strcmp(optbuf,"theme"))
|
|
{
|
|
- snprintf(options.theme,MAXTHEMENAMELENGTH+1,"%s",valbuf);
|
|
+ snprintf(options.theme,sizeof(options.theme),"%s",valbuf);
|
|
}
|
|
// FIX: add username
|
|
}
|
|
@@ -150,7 +150,7 @@
|
|
{
|
|
FILE * optionfile;
|
|
char filename[255];
|
|
- snprintf(filename,255,"%s/%s",homedir,OPTIONFILE);
|
|
+ snprintf(filename,sizeof(filename),"%s/%s",homedir,OPTIONFILE);
|
|
|
|
optionfile=fopen(filename,"w");
|
|
if (optionfile==NULL)
|
|
@@ -292,7 +292,7 @@
|
|
else
|
|
{
|
|
// fix -- we should probably search for malicious characters here.
|
|
- snprintf(commandline.theme,MAXTHEMENAMELENGTH+1,"%s",argv[i]+strlen(FLAGTHEME));
|
|
+ snprintf(commandline.theme,sizeof(commandline.theme),"%s",argv[i]+strlen(FLAGTHEME));
|
|
}
|
|
}
|
|
else if (strncmp(argv[i],FLAGTHEMELONG "=" ,strlen(FLAGTHEMELONG "=")) == 0)
|
|
@@ -312,7 +312,7 @@
|
|
else
|
|
{
|
|
// fix -- we should probably search for malicious characters here.
|
|
- snprintf(commandline.theme,MAXTHEMENAMELENGTH+1,"%s",argv[i]+strlen(FLAGTHEMELONG "="));
|
|
+ snprintf(commandline.theme,sizeof(commandline.theme),"%s",argv[i]+strlen(FLAGTHEMELONG "="));
|
|
}
|
|
}
|
|
else if (strncmp(argv[i],FLAGTHEMELONG,strlen(FLAGTHEMELONG)) == 0)
|
|
--- a/penguin.c
|
|
+++ b/penguin.c
|
|
@@ -40,8 +40,9 @@
|
|
|
|
Penguin createpenguinxy(int x, int y)
|
|
{
|
|
- Penguin p;
|
|
+ static Penguin p;
|
|
|
|
+ memset(&p, 0, sizeof(p));
|
|
switch (random() % 4)
|
|
{
|
|
case 0:
|
|
--- a/themes.c
|
|
+++ b/themes.c
|
|
@@ -183,7 +183,7 @@
|
|
|
|
foundcolor.spritetransparent = 0;
|
|
|
|
- snprintf(themefilename, 256,"%s/%s%s",DATAPREFIX,themename,THEMEFILEEXTENSION);
|
|
+ snprintf(themefilename, sizeof(themefilename),"%s/%s%s",DATAPREFIX,themename,THEMEFILEEXTENSION);
|
|
|
|
themefile=fopen(themefilename,"r");
|
|
if (themefile==NULL)
|
|
@@ -329,7 +329,7 @@
|
|
"We'll try to load it anyway, but don't be surpised if there's a problem.\n"
|
|
"(Filename is %s)\n",themename,valbuf);
|
|
}
|
|
- snprintf(loadfilebuf, 256,"%s/%s",DATAPREFIX,valbuf);
|
|
+ snprintf(loadfilebuf, sizeof(loadfilebuf),"%s/%s",DATAPREFIX,valbuf);
|
|
spriteimage=loadsprite(themename,loadfilebuf);
|
|
}
|
|
else if (!strcmp(optbuf,"spritemirrorbitmap"))
|
|
@@ -340,7 +340,7 @@
|
|
"We'll try to load it anyway, but don't be surpised if there's a problem.\n"
|
|
"(Filename is %s)\n",themename,valbuf);
|
|
}
|
|
- snprintf(loadfilebuf, 256,"%s/%s",DATAPREFIX,valbuf);
|
|
+ snprintf(loadfilebuf, sizeof(loadfilebuf),"%s/%s",DATAPREFIX,valbuf);
|
|
spritemirrorimage=loadsprite(themename,loadfilebuf);
|
|
}
|
|
else if (!strcmp(optbuf,"soundouch"))
|
|
@@ -351,7 +351,7 @@
|
|
"We'll try to load it anyway, but don't be surpised if there's a problem.\n"
|
|
"(Filename is %s)\n",themename,valbuf);
|
|
}
|
|
- snprintf(loadfilebuf, 256,"%s/%s",DATAPREFIX,valbuf);
|
|
+ snprintf(loadfilebuf, sizeof(loadfilebuf),"%s/%s",DATAPREFIX,valbuf);
|
|
loadsounds(themename,loadfilebuf,NULL);
|
|
}
|
|
else if (!strcmp(optbuf,"soundcrash"))
|
|
@@ -362,7 +362,7 @@
|
|
"We'll try to load it anyway, but don't be surpised if there's a problem.\n"
|
|
"(Filename is %s)\n",themename,valbuf);
|
|
}
|
|
- snprintf(loadfilebuf, 256,"%s/%s",DATAPREFIX,valbuf);
|
|
+ snprintf(loadfilebuf, sizeof(loadfilebuf),"%s/%s",DATAPREFIX,valbuf);
|
|
loadsounds(themename,NULL,loadfilebuf);
|
|
}
|
|
}
|
|
@@ -474,11 +474,11 @@
|
|
{
|
|
fprintf(stderr,"Hey! You can't have a theme named random! Please remove the random.ibt\n"
|
|
"file from your themes directory.\n");
|
|
- snprintf(themename,MAXTHEMENAMELENGTH+1,"linux");
|
|
+ strcpy(themename,"linux");
|
|
}
|
|
else
|
|
{
|
|
- snprintf(themename,MAXTHEMENAMELENGTH+1,themelist[random() %themecount]);
|
|
+ snprintf(themename,sizeof(themename),"%s",themelist[random() %themecount]);
|
|
}
|
|
freethemenames(&themelist,themecount);
|
|
return settheme(themename);
|