diff -ur scorched.orig/src/3dsparse/MSModelFactory.cpp scorched/src/3dsparse/MSModelFactory.cpp
--- scorched.orig/src/3dsparse/MSModelFactory.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/3dsparse/MSModelFactory.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -278,7 +278,8 @@
if (sscanf(buffer, "%s", textureName) != 1)
returnError(fileName, "No material texture format");
textureName[strlen(textureName)-1] = '\0';
- sprintf(fullTextureName, "%s/%s", filePath, &textureName[1]);
+ snprintf(fullTextureName, sizeof(fullTextureName), "%s/%s",
+ filePath, &textureName[1]);
while (sep=strchr(fullTextureName, '\\')) *sep = '/';
// alphamap
@@ -289,7 +290,8 @@
if (sscanf(buffer, "%s", textureNameAlpha) != 1)
returnError(fileName, "No material alpha texture format");
textureNameAlpha[strlen(textureNameAlpha)-1] = '\0';
- sprintf(fullTextureAlphaName, "%s/%s", filePath, &textureNameAlpha[1]);
+ snprintf(fullTextureAlphaName, sizeof(fullTextureAlphaName),
+ "%s/%s", filePath, &textureNameAlpha[1]);
while (sep=strchr(fullTextureAlphaName, '\\')) *sep = '/';
int modelIndex = 0;
diff -ur scorched.orig/src/3dsparse/ModelID.cpp scorched/src/3dsparse/ModelID.cpp
--- scorched.orig/src/3dsparse/ModelID.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/3dsparse/ModelID.cpp 2006-02-11 15:10:00.000000000 +0100
@@ -75,7 +75,8 @@
if (!modelNode->getNamedChild("mesh", meshNode)) return false;
const char *meshNameContent = meshNode->getContent();
static char meshName[1024];
- sprintf(meshName, "%s/%s", directory, meshNameContent);
+ snprintf(meshName, sizeof(meshName), "%s/%s", directory,
+ meshNameContent);
if (!DefinesUtil::fileExists(getDataFile(meshName)))
{
dialogMessage("Scorched Models",
@@ -89,7 +90,8 @@
static char skinName[1024];
if (strcmp(skinNameContent, "none") != 0)
{
- sprintf(skinName, "%s/%s", directory, skinNameContent);
+ snprintf(skinName, sizeof(skinName), "%s/%s",
+ directory, skinNameContent);
if (!DefinesUtil::fileExists(getDataFile(skinName)))
{
dialogMessage("Scorched Models",
@@ -100,7 +102,8 @@
}
else
{
- sprintf(skinName, "%s", skinNameContent);
+ snprintf(skinName, sizeof(skinName), "%s",
+ skinNameContent);
}
meshName_ = meshName;
@@ -110,7 +113,8 @@
{
const char *meshNameContent = modelNode->getContent();
static char meshName[1024];
- sprintf(meshName, "%s/%s", directory, meshNameContent);
+ snprintf(meshName, sizeof(meshName), "%s/%s", directory,
+ meshNameContent);
if (!DefinesUtil::fileExists(getDataFile(meshName)))
{
Only in scorched/src/3dsparse: ModelID.cpp~
diff -ur scorched.orig/src/3dsparse/aseFile.tab.cpp scorched/src/3dsparse/aseFile.tab.cpp
--- scorched.orig/src/3dsparse/aseFile.tab.cpp 2005-04-12 00:19:08.000000000 +0200
+++ scorched/src/3dsparse/aseFile.tab.cpp 2006-02-11 15:10:46.000000000 +0100
@@ -1056,7 +1056,7 @@
int aseerror(const char *errmsg)
{
char buffer[1024];
- sprintf(buffer, "%i:%s\n", aselineno, errmsg);
+ snprintf(buffer, sizeof(buffer), "%i:%s\n", aselineno, errmsg);
dialogMessage("Lexer", buffer);
return 0;
}
@@ -1064,7 +1064,7 @@
int asewarning(const char *warningmsg)
{
char buffer[1024];
- sprintf(buffer, "%i:%s\n", aselineno, warningmsg);
+ snprintf(buffer, sizeof(buffer), "%i:%s\n", aselineno, warningmsg);
dialogMessage("Lexer", buffer);
return 0;
}
@@ -1072,7 +1072,7 @@
int asedebug(const char *debugmsg)
{
char buffer[1024];
- sprintf(buffer, "%i:%s\n", aselineno, debugmsg);
+ snprintf(buffer, sizeof(buffer), "%i:%s\n", aselineno, debugmsg);
dialogMessage("Lexer", buffer);
return 0;
}
Only in scorched/src/3dsparse: aseFile.tab.cpp~
diff -ur scorched.orig/src/GLEXT/GLConsole.cpp scorched/src/GLEXT/GLConsole.cpp
--- scorched.orig/src/GLEXT/GLConsole.cpp 2005-04-05 00:35:23.000000000 +0200
+++ scorched/src/GLEXT/GLConsole.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -265,7 +265,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, TEXT_SIZE, fmt, ap);
va_end(ap);
DIALOG_ASSERT(strlen(text)<TEXT_SIZE);
diff -ur scorched.orig/src/GLEXT/GLConsoleRuleFn.cpp scorched/src/GLEXT/GLConsoleRuleFn.cpp
--- scorched.orig/src/GLEXT/GLConsoleRuleFn.cpp 2003-07-10 18:29:16.000000000 +0200
+++ scorched/src/GLEXT/GLConsoleRuleFn.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -136,7 +136,7 @@
break;
case GLConsoleRuleTypeNumber:
static char buffer[10];
- sprintf(buffer,"%.2f", user_->getNumberParam(name_.c_str()));
+ snprintf(buffer, sizeof(buffer), "%.2f", user_->getNumberParam(name_.c_str()));
value = buffer;
break;
case GLConsoleRuleTypeString:
diff -ur scorched.orig/src/GLEXT/GLFont2d.cpp scorched/src/GLEXT/GLFont2d.cpp
--- scorched.orig/src/GLEXT/GLFont2d.cpp 2005-07-11 22:40:36.000000000 +0200
+++ scorched/src/GLEXT/GLFont2d.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -56,7 +56,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
float width = 0.0f;
@@ -75,7 +75,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
drawString((GLsizei) strlen(text), color, 1.0f, size, x, y, z, text, false);
@@ -89,7 +89,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
drawString((GLsizei) strlen(text), color, alpha, size, x, y, z, text, false);
@@ -103,7 +103,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
drawString((GLsizei) strlen(text), color, 1.0f, size, x, y, z, text, false, size2);
@@ -118,7 +118,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
int s = start;
@@ -143,7 +143,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
int l = 0;
@@ -165,7 +165,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
drawString((GLsizei) strlen(text), color, 1.0f, size, x, y, z, text, true);
diff -ur scorched.orig/src/GLW/GLWListView.cpp scorched/src/GLW/GLWListView.cpp
--- scorched.orig/src/GLW/GLWListView.cpp 2005-06-20 02:35:07.000000000 +0200
+++ scorched/src/GLW/GLWListView.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -107,7 +107,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
lines_.push_back(text);
diff -ur scorched.orig/src/GLW/GLWScorchedInfo.cpp scorched/src/GLW/GLWScorchedInfo.cpp
--- scorched.orig/src/GLW/GLWScorchedInfo.cpp 2005-02-13 01:05:13.000000000 +0100
+++ scorched/src/GLW/GLWScorchedInfo.cpp 2006-02-11 15:11:46.000000000 +0100
@@ -86,7 +86,7 @@
}
else
{
- sprintf(buffer, "Force %.0f",
+ snprintf(buffer, sizeof(buffer), "Force %.0f",
ScorchedClient::instance()->
getOptionsTransient().getWindSpeed());
}
@@ -237,7 +237,7 @@
setToolTip(&model->getTips()->weaponTip);
static char buffer[256];
- sprintf(buffer, "%s",
+ snprintf(buffer, sizeof(buffer), "%s",
current->getAccessories().getWeapons().getCurrent()->getName());
float weaponWidth = (float) GLWFont::instance()->getSmallPtFont()->
getWidth(fontSize_, buffer);
Only in scorched/src/GLW: GLWScorchedInfo.cpp~
Only in scorched/src/GLW: GLWSelectorPart.cpp.orig
diff -ur scorched.orig/src/GLW/GLWToolTip.cpp scorched/src/GLW/GLWToolTip.cpp
--- scorched.orig/src/GLW/GLWToolTip.cpp 2005-08-12 16:20:11.000000000 +0200
+++ scorched/src/GLW/GLWToolTip.cpp 2006-02-11 15:07:49.000000000 +0100
@@ -58,7 +58,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, TEXT_SIZE, fmt, ap);
va_end(ap);
texts_.clear();
Only in scorched/src/GLW: GLWToolTip.cpp~
diff -ur scorched.orig/src/XML/XMLParser.cpp scorched/src/XML/XMLParser.cpp
--- scorched.orig/src/XML/XMLParser.cpp 2005-07-03 01:50:03.000000000 +0200
+++ scorched/src/XML/XMLParser.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -91,7 +91,7 @@
name_(name), parent_(0), type_(type)
{
char buffer[20];
- sprintf(buffer, "%.2f", content);
+ snprintf(buffer, sizeof(buffer), "%.2f", content);
content_ = buffer;
}
@@ -460,7 +460,8 @@
XML_Error errorCode = XML_GetErrorCode(p_);
static char message[1024];
- sprintf(message, "Parse Error, File %s: Line:%i Col:%i Error:%s",
+ snprintf(message, sizeof(message),
+ "Parse Error, File %s: Line:%i Col:%i Error:%s",
source_.c_str(),
XML_GetCurrentLineNumber(p_),
XML_GetCurrentColumnNumber(p_),
diff -ur scorched.orig/src/client/ServerBrowserServerList.cpp scorched/src/client/ServerBrowserServerList.cpp
--- scorched.orig/src/client/ServerBrowserServerList.cpp 2005-06-08 19:29:38.000000000 +0200
+++ scorched/src/client/ServerBrowserServerList.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -54,7 +54,7 @@
{
// Create the message that will be sent to the master server
static char buffer[1024];
- sprintf(buffer,
+ snprintf(buffer, sizeof(buffer),
"GET %s/servers.php HTTP/1.0\r\n"
"User-Agent: Scorched3D\r\n"
"Host: %s\r\n"
diff -ur scorched.orig/src/client/SpeedChange.cpp scorched/src/client/SpeedChange.cpp
--- scorched.orig/src/client/SpeedChange.cpp 2004-11-22 00:19:51.000000000 +0100
+++ scorched/src/client/SpeedChange.cpp 2006-02-11 15:12:44.000000000 +0100
@@ -58,7 +58,7 @@
{
GLState state(GLState::BLEND_ON | GLState::TEXTURE_OFF);
static char buffer[10];
- sprintf(buffer, "%.1fX", speed);
+ snprintf(buffer, sizeof(buffer), "%.1fX", speed);
static Vector fontColor(0.7f, 0.7f, 0.2f);
GLWFont::instance()->getLargePtFont()->draw(fontColor, 20, 10.0f, 10.0f, 0.0f, buffer);
Only in scorched/src/client: SpeedChange.cpp~
diff -ur scorched.orig/src/common/ARGParser.cpp scorched/src/common/ARGParser.cpp
--- scorched.orig/src/common/ARGParser.cpp 2005-07-24 21:34:00.000000000 +0200
+++ scorched/src/common/ARGParser.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -102,7 +102,7 @@
else
{
char buffer[255];
- sprintf(buffer, "ERROR: Unknown parameter : \"%s\"\n\n", firstCommand.c_str());
+ snprintf(buffer, sizeof(buffer), "ERROR: Unknown parameter : \"%s\"\n\n", firstCommand.c_str());
showArgs(buffer);
return false;
}
@@ -249,7 +249,7 @@
else if (itor->second.destI || itor->second.destInt) type = "<int>";
char buffer2[255];
- sprintf(buffer2, "\t%s %s", itor->first.c_str(), type);
+ snprintf(buffer2, sizeof(buffer2), "\t%s %s", itor->first.c_str(), type);
if (itor->second.help.size())
{
strcat(buffer2, std::string(abs(30 - int(strlen(buffer2))), ' ').c_str());
diff -ur scorched.orig/src/common/Defines.cpp scorched/src/common/Defines.cpp
--- scorched.orig/src/common/Defines.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/common/Defines.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -72,7 +72,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
#ifdef _WIN32
@@ -93,21 +93,14 @@
void dialogAssert(const char *lineText, const int line, const char *file)
{
- // Dont use formatString here as this method is called by formatString.
- char buffer[20048];
- sprintf(buffer, "%s\n%i:%s", lineText, line, file);
- dialogMessage("Program Assert", buffer);
+ dialogMessage("Program Assert", "%s\n%i:%s", lineText, line, file);
exit(64);
}
const char *formatStringList(const char *format, va_list ap)
{
static char buffer[20048];
- buffer[sizeof(buffer) - 1] = '\0';
- vsprintf(buffer, format, ap);
- if (buffer[sizeof(buffer) - 1] != 0)
- dialogAssert("buffer[sizeof(buffer) - 1] == 0", __LINE__, __FILE__);
-
+ vsnprintf(buffer, sizeof(buffer), format, ap);
return buffer;
}
@@ -160,18 +153,20 @@
static char buffer[1024];
va_list ap;
va_start(ap, file);
- vsprintf(filename, file, ap);
+ vsnprintf(filename, sizeof(filename), file, ap);
va_end(ap);
- sprintf(buffer, getModFile("%s/%s", DefinesUtil::getDataFileMod(), filename));
+ snprintf(buffer, sizeof(buffer), "%s",
+ getModFile("%s/%s", DefinesUtil::getDataFileMod(), filename));
DefinesUtil::fileDos2Unix(buffer);
if (DefinesUtil::fileExists(buffer)) return buffer;
- sprintf(buffer, getGlobalModFile("%s/%s", DefinesUtil::getDataFileMod(), filename));
+ snprintf(buffer, sizeof(buffer), "%s",
+ getGlobalModFile("%s/%s", DefinesUtil::getDataFileMod(), filename));
DefinesUtil::fileDos2Unix(buffer);
if (DefinesUtil::fileExists(buffer)) return buffer;
- sprintf(buffer, S3D_DATADIR "/%s", filename);
+ snprintf(buffer, sizeof(buffer), S3D_DATADIR "/%s", filename);
DefinesUtil::fileDos2Unix(buffer);
return buffer;
@@ -182,7 +177,7 @@
static char filename[1024];
va_list ap;
va_start(ap, file);
- vsprintf(filename, file, ap);
+ vsnprintf(filename, sizeof(filename), file, ap);
va_end(ap);
const char *dataFileName = getDataFile(filename);
@@ -205,9 +200,9 @@
static char buffer[1024];
va_list ap;
va_start(ap, file);
- vsprintf(filename, file, ap);
+ vsnprintf(filename, sizeof(filename), file, ap);
va_end(ap);
- sprintf(buffer, S3D_DOCDIR "/%s", filename);
+ snprintf(buffer, sizeof(buffer), S3D_DOCDIR "/%s", filename);
DefinesUtil::fileDos2Unix(buffer);
return buffer;
}
@@ -217,7 +212,7 @@
static char filename[1024];
va_list ap;
va_start(ap, file);
- vsprintf(filename, file, ap);
+ vsnprintf(filename, sizeof(filename), file, ap);
va_end(ap);
static std::string homeDir;
@@ -231,7 +226,7 @@
}
static char buffer[1024];
- sprintf(buffer, "%s/%s", homeDir.c_str(), filename);
+ snprintf(buffer, sizeof(buffer), "%s/%s", homeDir.c_str(), filename);
DefinesUtil::fileDos2Unix(buffer);
return buffer;
}
@@ -242,7 +237,7 @@
va_list ap;
va_start(ap, file);
- vsprintf(filename, file, ap);
+ vsnprintf(filename, sizeof(filename), file, ap);
va_end(ap);
static std::string homeDir;
@@ -261,7 +256,7 @@
}
static char buffer[1024];
- sprintf(buffer, "%s/%s", homeDir.c_str(), filename);
+ snprintf(buffer, sizeof(buffer), "%s/%s", homeDir.c_str(), filename);
DefinesUtil::fileDos2Unix(buffer);
return buffer;
}
@@ -272,7 +267,7 @@
static char buffer[1024];
va_list ap;
va_start(ap, file);
- vsprintf(filename, file, ap);
+ vsnprintf(filename, sizeof(filename), file, ap);
va_end(ap);
const char *homeDirStr = getSettingsFile("");
@@ -280,7 +275,7 @@
if (DefinesUtil::dirExists(newDir.c_str())) homeDirStr = newDir.c_str();
else if (DefinesUtil::dirMake(newDir.c_str())) homeDirStr = newDir.c_str();
- sprintf(buffer, "%s/%s", homeDirStr, filename);
+ snprintf(buffer, sizeof(buffer), "%s/%s", homeDirStr, filename);
DefinesUtil::fileDos2Unix(buffer);
return buffer;
}
@@ -290,7 +285,7 @@
static char filename[1024];
va_list ap;
va_start(ap, file);
- vsprintf(filename, file, ap);
+ vsnprintf(filename, sizeof(filename), file, ap);
va_end(ap);
static char buffer[1024];
@@ -299,7 +294,7 @@
if (DefinesUtil::dirExists(newDir.c_str())) homeDirStr = newDir.c_str();
else if (DefinesUtil::dirMake(newDir.c_str())) homeDirStr = newDir.c_str();
- sprintf(buffer, "%s/%s", homeDirStr, filename);
+ snprintf(buffer, sizeof(buffer), "%s/%s", homeDirStr, filename);
DefinesUtil::fileDos2Unix(buffer);
return buffer;
}
@@ -309,7 +304,7 @@
static char filename[1024];
va_list ap;
va_start(ap, file);
- vsprintf(filename, file, ap);
+ vsnprintf(filename, sizeof(filename), file, ap);
va_end(ap);
static std::string modDir;
@@ -324,7 +319,7 @@
}
static char buffer[1024];
- sprintf(buffer, "%s/%s", modDir.c_str(), filename);
+ snprintf(buffer, sizeof(buffer), "%s/%s", modDir.c_str(), filename);
DefinesUtil::fileDos2Unix(buffer);
return buffer;
}
@@ -334,11 +329,11 @@
static char filename[1024];
va_list ap;
va_start(ap, file);
- vsprintf(filename, file, ap);
+ vsnprintf(filename, sizeof(filename), file, ap);
va_end(ap);
static char buffer[1024];
- sprintf(buffer, S3D_DATADIR "/data/globalmods/%s", filename);
+ snprintf(buffer, sizeof(buffer), S3D_DATADIR "/data/globalmods/%s", filename);
DefinesUtil::fileDos2Unix(buffer);
return buffer;
}
diff -ur scorched.orig/src/common/FileLines.cpp scorched/src/common/FileLines.cpp
--- scorched.orig/src/common/FileLines.cpp 2004-11-09 00:43:23.000000000 +0100
+++ scorched/src/common/FileLines.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -96,7 +96,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
fileLines_.push_back(text);
diff -ur scorched.orig/src/common/Logger.cpp scorched/src/common/Logger.cpp
--- scorched.orig/src/common/Logger.cpp 2005-06-20 02:35:08.000000000 +0200
+++ scorched/src/common/Logger.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -87,7 +87,7 @@
static char text[2048];
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
LoggerInfo info;
diff -ur scorched.orig/src/common/StatsLoggerFile.cpp scorched/src/common/StatsLoggerFile.cpp
--- scorched.orig/src/common/StatsLoggerFile.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/common/StatsLoggerFile.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -124,7 +124,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "fired \"%s\" [%s] \"%s\"",
+ snprintf(message, sizeof(message), "fired \"%s\" [%s] \"%s\"",
firedTank->getName(), firedTank->getUniqueId(),
weapon->getParent()->getName());
@@ -143,7 +143,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "resigined \"%s\" [%s]",
+ snprintf(message, sizeof(message), "resigined \"%s\" [%s]",
resignedTank->getName(), resignedTank->getUniqueId());
LoggerInfo info(LoggerInfo::TypeNormal, message, time);
statsLogger_->logMessage(info);
@@ -160,7 +160,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "joined \"%s\" [%s]",
+ snprintf(message, sizeof(message), "joined \"%s\" [%s]",
tank->getName(), tank->getUniqueId());
LoggerInfo info(LoggerInfo::TypeNormal, message, time);
statsLogger_->logMessage(info);
@@ -177,7 +177,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "connected \"%s\" [%s]",
+ snprintf(message, sizeof(message), "connected \"%s\" [%s]",
tank->getName(), tank->getUniqueId());
LoggerInfo info(LoggerInfo::TypeNormal, message, time);
statsLogger_->logMessage(info);
@@ -194,7 +194,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "disconnected \"%s\" [%s]",
+ snprintf(message, sizeof(message), "disconnected \"%s\" [%s]",
tank->getName(), tank->getUniqueId());
LoggerInfo info(LoggerInfo::TypeNormal, message, time);
statsLogger_->logMessage(info);
@@ -211,7 +211,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "killed \"%s\" [%s] \"%s\" [%s] \"%s\"",
+ snprintf(message, sizeof(message), "killed \"%s\" [%s] \"%s\" [%s] \"%s\"",
firedTank->getName(), firedTank->getUniqueId(),
deadTank->getName(), deadTank->getUniqueId(),
weapon->getParent()->getName());
@@ -230,7 +230,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "teamkilled \"%s\" [%s] \"%s\" [%s] \"%s\"",
+ snprintf(message, sizeof(message), "teamkilled \"%s\" [%s] \"%s\" [%s] \"%s\"",
firedTank->getName(), firedTank->getUniqueId(),
deadTank->getName(), deadTank->getUniqueId(),
weapon->getParent()->getName());
@@ -249,7 +249,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "selfkilled \"%s\" [%s] \"%s\"",
+ snprintf(message, sizeof(message), "selfkilled \"%s\" [%s] \"%s\"",
firedTank->getName(), firedTank->getUniqueId(),
weapon->getParent()->getName());
LoggerInfo info(LoggerInfo::TypeNormal, message, time);
@@ -267,7 +267,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "won \"%s\" [%s]",
+ snprintf(message, sizeof(message), "won \"%s\" [%s]",
tank->getName(), tank->getUniqueId());
LoggerInfo info(LoggerInfo::TypeNormal, message, time);
statsLogger_->logMessage(info);
@@ -284,7 +284,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "overallwinner \"%s\" [%s]",
+ snprintf(message, sizeof(message), "overallwinner \"%s\" [%s]",
tank->getName(), tank->getUniqueId());
LoggerInfo info(LoggerInfo::TypeNormal, message, time);
statsLogger_->logMessage(info);
@@ -301,7 +301,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "weaponfired \"%s\"", weapon->getParent()->getName());
+ snprintf(message, sizeof(message), "weaponfired \"%s\"", weapon->getParent()->getName());
LoggerInfo info(LoggerInfo::TypeNormal, message, time);
statsLogger_->logMessage(info);
}
@@ -317,7 +317,7 @@
if (nl) *nl = '\0';
char message[1024];
- sprintf(message, "weaponkilled \"%s\"", weapon->getParent()->getName());
+ snprintf(message, sizeof(message), "weaponkilled \"%s\"", weapon->getParent()->getName());
LoggerInfo info(LoggerInfo::TypeNormal, message, time);
statsLogger_->logMessage(info);
}
diff -ur scorched.orig/src/common/StatsLoggerMySQL.cpp scorched/src/common/StatsLoggerMySQL.cpp
--- scorched.orig/src/common/StatsLoggerMySQL.cpp 2005-08-08 11:37:24.000000000 +0200
+++ scorched/src/common/StatsLoggerMySQL.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -63,7 +63,7 @@
static char text[50000];
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
return (mysql_real_query(mysql_, text, strlen(text)) == 0);
diff -ur scorched.orig/src/coms/ComsConnectMessage.h scorched/src/coms/ComsConnectMessage.h
--- scorched.orig/src/coms/ComsConnectMessage.h 2005-07-21 22:34:24.000000000 +0200
+++ scorched/src/coms/ComsConnectMessage.h 2006-02-11 15:02:03.000000000 +0100
@@ -47,7 +47,7 @@
void setUniqueId(const char *uid) { setValue("uid", uid); }
void setHostDesc(const char *host) { setValue("host", host); }
void setNoPlayers(unsigned int players) {
- char buf[10]; sprintf(buf, "%i", players); setValue("numplayers", buf); }
+ char buf[11]; sprintf(buf, "%u", players); setValue("numplayers", buf); }
const char *getVersion() { return getValue("version"); }
const char *getProtocolVersion() { return getValue("pversion"); }
diff -ur scorched.orig/src/coms/ComsMessageHandler.cpp scorched/src/coms/ComsMessageHandler.cpp
--- scorched.orig/src/coms/ComsMessageHandler.cpp 2005-04-05 00:35:25.000000000 +0200
+++ scorched/src/coms/ComsMessageHandler.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -114,7 +114,8 @@
if (itor == handlerMap_.end())
{
char buffer[1024];
- sprintf(buffer, "Failed to find message type handler \"%s\"",
+ snprintf(buffer, sizeof(buffer),
+ "Failed to find message type handler \"%s\"",
messageType.c_str());
if (connectionHandler_)
@@ -129,7 +130,8 @@
messageTypeStr, reader))
{
char buffer[1024];
- sprintf(buffer, "Failed to handle message type \"%s\"",
+ snprintf(buffer, sizeof(buffer),
+ "Failed to handle message type \"%s\"",
messageType.c_str());
if (connectionHandler_)
diff -ur scorched.orig/src/dialogs/AutoDefenseDialog.cpp scorched/src/dialogs/AutoDefenseDialog.cpp
--- scorched.orig/src/dialogs/AutoDefenseDialog.cpp 2005-07-19 23:45:36.000000000 +0200
+++ scorched/src/dialogs/AutoDefenseDialog.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -173,13 +173,13 @@
char buffer[256];
if (shieldcount > 0)
{
- sprintf(buffer, "%s (%i)",
+ snprintf(buffer, sizeof(buffer), "%s (%i)",
shield->getName(),
shieldcount);
}
else
{
- sprintf(buffer, "%s (In)",
+ snprintf(buffer, sizeof(buffer), "%s (In)",
shield->getName());
}
ddshields_->addText(GLWSelectorEntry(buffer,
@@ -215,13 +215,13 @@
char buffer[256];
if (tank->getAccessories().getShields().getShieldCount(currentShield) > 0)
{
- sprintf(buffer, "%s (%i)",
+ snprintf(buffer, sizeof(buffer), "%s (%i)",
currentShield->getName(),
tank->getAccessories().getShields().getShieldCount(currentShield));
}
else
{
- sprintf(buffer, "%s (In)",
+ snprintf(buffer, sizeof(buffer), "%s (In)",
currentShield->getName());
}
ddshields_->setText(buffer);
diff -ur scorched.orig/src/ode/error.cpp scorched/src/ode/error.cpp
--- scorched.orig/src/ode/error.cpp 2004-09-15 00:10:04.000000000 +0200
+++ scorched/src/ode/error.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -129,7 +129,7 @@
else {
char s[1000],title[100];
sprintf (title,"ODE Error %d",num);
- vsprintf (s,msg,ap);
+ vsnprintf (s,sizeof(s),msg,ap);
s[sizeof(s)-1] = 0;
MessageBox(0,s,title,MB_OK | MB_ICONWARNING);
}
@@ -145,7 +145,7 @@
else {
char s[1000],title[100];
sprintf (title,"ODE INTERNAL ERROR %d",num);
- vsprintf (s,msg,ap);
+ vsnprintf (s,sizeof(s),msg,ap);
s[sizeof(s)-1] = 0;
MessageBox(0,s,title,MB_OK | MB_ICONSTOP);
}
diff -ur scorched.orig/src/ode/testing.cpp scorched/src/ode/testing.cpp
--- scorched.orig/src/ode/testing.cpp 2003-07-10 18:30:19.000000000 +0200
+++ scorched/src/ode/testing.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -72,7 +72,7 @@
va_list ap;
va_start (ap,name);
- vsprintf (mi->name,name,ap);
+ vsnprintf (mi->name, sizeof(mi->name), name, ap);
if (strlen(mi->name) >= sizeof (mi->name)) dDebug (0,"name too long");
mat.push (mi);
@@ -88,7 +88,7 @@
dMatInfo mi;
va_list ap;
va_start (ap,name);
- vsprintf (mi.name,name,ap);
+ vsnprintf (mi.name, sizeof(mi.name), name, ap);
if (strlen(mi.name) >= sizeof (mi.name)) dDebug (0,"name too long");
if (strcmp(mp->name,mi.name) != 0)
diff -ur scorched.orig/src/scorched/DisplayDialog.cpp scorched/src/scorched/DisplayDialog.cpp
--- scorched.orig/src/scorched/DisplayDialog.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/scorched/DisplayDialog.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -265,8 +265,8 @@
const char *stateName = "";
KeyboardKey::translateKeyNameValue(key->getKeys()[position].key, keyName);
KeyboardKey::translateKeyStateValue(key->getKeys()[position].state, stateName);
- if (strcmp(stateName, "NONE") == 0) sprintf(buffer, "%s", keyName);
- else sprintf(buffer, "<%s> %s", stateName, keyName);
+ if (strcmp(stateName, "NONE") == 0) snprintf(buffer, sizeof(buffer), "%s", keyName);
+ else snprintf(buffer, sizeof(buffer), "<%s> %s", stateName, keyName);
}
button->SetLabel(wxString(buffer, wxConvUTF8));
}
diff -ur scorched.orig/src/scorched/MainDialog.cpp scorched/src/scorched/MainDialog.cpp
--- scorched.orig/src/scorched/MainDialog.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/scorched/MainDialog.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -143,11 +143,11 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
char path[1024];
- sprintf(path, "%s %s", exeName, text);
+ snprintf(path, sizeof(path), "%s %s", exeName, text);
ScorchedProcess *process = new ScorchedProcess();
long result = ::wxExecute(wxString(path, wxConvUTF8), wxEXEC_ASYNC, process);
diff -ur scorched.orig/src/scorched/NetDialog.cpp scorched/src/scorched/NetDialog.cpp
--- scorched.orig/src/scorched/NetDialog.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/scorched/NetDialog.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -127,7 +127,7 @@
ServerBrowser::instance()->getServerList().
getEntryValue(item, "maxplayers");
char text[256];
- sprintf(text, "%s/%s", clients.c_str(), maxclients.c_str());
+ snprintf(text, sizeof(text), "%s/%s", clients.c_str(), maxclients.c_str());
return wxString(text, wxConvUTF8);
}
@@ -498,7 +498,7 @@
wxString username = IDC_EDIT_NAME_CTRL->GetValue();
char buffer[1024];
- sprintf(buffer, "-connect \"%s\"", (const char *) value.mb_str(wxConvUTF8));
+ snprintf(buffer, sizeof(buffer), "-connect \"%s\"", (const char *) value.mb_str(wxConvUTF8));
if (!password.empty())
{
diff -ur scorched.orig/src/scorched/ServerDialog.cpp scorched/src/scorched/ServerDialog.cpp
--- scorched.orig/src/scorched/ServerDialog.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/scorched/ServerDialog.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -402,7 +402,7 @@
{
TankAI *ai = (*aiitor);
char buffer[256];
- sprintf(buffer, "Add %s", ai->getName());
+ snprintf(buffer, sizeof(buffer), "Add %s", ai->getName());
menuAddPlayer->Append(IDC_MENU_PLAYERADD_1 + aicount, wxString(buffer, wxConvUTF8));
}
@@ -841,7 +841,8 @@
void showServerDialog()
{
char serverName[1024];
- sprintf(serverName, "Scorched 3D Dedicated Server [ %s : %i ] [%s]",
+ snprintf(serverName, sizeof(serverName),
+ "Scorched 3D Dedicated Server [ %s : %i ] [%s]",
ScorchedServer::instance()->getOptionsGame().getServerName(),
ScorchedServer::instance()->getOptionsGame().getPortNo(),
(ScorchedServer::instance()->getOptionsGame().getPublishServer()?"Published":"Not Published"));
diff -ur scorched.orig/src/scorched/SettingsDialog.cpp scorched/src/scorched/SettingsDialog.cpp
--- scorched.orig/src/scorched/SettingsDialog.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/scorched/SettingsDialog.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -417,7 +417,7 @@
(void *) (OptionsGame::WindRandom));
for (int i=0; i<=5; i++)
{
- char buffer[25];
+ char buffer[30];
sprintf(buffer, "Force %i%s", i, ((i==0)?" (No Wind)":""));
SettingsEnv::IDC_COMBO_FORCE_CTRL->Append(
wxString(buffer, wxConvUTF8), (void *) (i+1));
@@ -471,7 +471,7 @@
for (int i=0; i<=20; i++)
{
char buffer[25];
- sprintf(buffer, "%i", i, i);
+ sprintf(buffer, "%i", i);
if (i<=10)
{
SettingsEnv::IDC_COMBO_STARTARMSLEVEL_CTRL->Append(wxString(buffer, wxConvUTF8), (void *) i);
Only in scorched/src/scorched: SingleChoiceDialog.cpp.orig
diff -ur scorched.orig/src/scorched/main.cpp scorched/src/scorched/main.cpp
--- scorched.orig/src/scorched/main.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/scorched/main.cpp 2006-02-11 15:06:24.000000000 +0100
@@ -145,7 +145,8 @@
int main(int argc, char *argv[])
{
// Generate the version
- sprintf(scorched3dAppName, "Scorched3D - Version %s (%s)",
+ snprintf(scorched3dAppName, sizeof(scorched3dAppName),
+ "Scorched3D - Version %s (%s)",
ScorchedVersion, ScorchedProtocolVersion);
srand((unsigned)time(0));
Only in scorched/src/scorched: main.cpp~
diff -ur scorched.orig/src/server/ServerBrowserInfo.cpp scorched/src/server/ServerBrowserInfo.cpp
--- scorched.orig/src/server/ServerBrowserInfo.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/server/ServerBrowserInfo.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -138,7 +138,7 @@
{
char *serverName = (char *) ScorchedServer::instance()->getOptionsGame().getServerName();
char version[256];
- sprintf(version, "%s (%s)", ScorchedVersion, ScorchedProtocolVersion);
+ snprintf(version, sizeof(version), "%s (%s)", ScorchedVersion, ScorchedProtocolVersion);
unsigned currentState = ScorchedServer::instance()->getGameState().getState();
bool started = !ServerTooFewPlayersStimulus::instance()->acceptStateChange(0, 0, 0.0f);
char players[25];
@@ -146,7 +146,7 @@
char maxplayers[25];
sprintf(maxplayers, "%i", ScorchedServer::instance()->getOptionsGame().getNoMaxPlayers());
char type[100];
- sprintf(type, "%s (%s)",
+ snprintf(type, sizeof(type), "%s (%s)",
ScorchedServer::instance()->getOptionsTransient().getGameType(),
((ScorchedServer::instance()->getOptionsGame().getTeams() > 1)?"Teams":"No Teams"));
wxString osDesc = ::wxGetOsDescription();
diff -ur scorched.orig/src/server/ServerCommon.cpp scorched/src/server/ServerCommon.cpp
--- scorched.orig/src/server/ServerCommon.cpp 2005-08-14 21:11:42.000000000 +0200
+++ scorched/src/server/ServerCommon.cpp 2006-02-11 15:12:42.000000000 +0100
@@ -63,7 +63,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
ComsTextMessage message(text, 0, true);
@@ -83,7 +83,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
ComsTextMessage message(text);
@@ -104,7 +104,7 @@
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
std::map<unsigned int, Tank *> &tanks =
@@ -295,7 +295,7 @@
// Add the actual log message
va_list ap;
va_start(ap, fmt);
- vsprintf(text, fmt, ap);
+ vsnprintf(text, sizeof(text), fmt, ap);
va_end(ap);
Logger::log(text);
Only in scorched/src/server: ServerCommon.cpp~
diff -ur scorched.orig/src/server/ServerRegistration.cpp scorched/src/server/ServerRegistration.cpp
--- scorched.orig/src/server/ServerRegistration.cpp 2005-06-08 19:29:38.000000000 +0200
+++ scorched/src/server/ServerRegistration.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -39,7 +39,7 @@
netServer_(new NetServerHTTPProtocolSend)
{
static char buffer[1024];
- sprintf(buffer,
+ snprintf(buffer, sizeof(buffer),
"GET %s/servers.php?register=%s&port=%i HTTP/1.0\r\n"
"User-Agent: Scorched3D\r\n"
"Host: %s\r\n"
diff -ur scorched.orig/src/tank/TankPhysics.cpp scorched/src/tank/TankPhysics.cpp
--- scorched.orig/src/tank/TankPhysics.cpp 2005-06-11 18:53:41.000000000 +0200
+++ scorched/src/tank/TankPhysics.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -248,13 +248,13 @@
if (OptionsDisplay::instance()->getUseHexidecimal())
{
- sprintf(messageBuffer, "0x%x (0x%x)",
+ snprintf(messageBuffer, sizeof(messageBuffer), "0x%x (0x%x)",
int(360.0f - getRotationGunXY()),
int(rotDiff));
}
else
{
- sprintf(messageBuffer, "%.1f (%+.1f)",
+ snprintf(messageBuffer, sizeof(messageBuffer), "%.1f (%+.1f)",
360.0f - getRotationGunXY(),
rotDiff);
}
@@ -269,13 +269,13 @@
if (OptionsDisplay::instance()->getUseHexidecimal())
{
- sprintf(messageBuffer, "0x%x (0X%x)",
+ snprintf(messageBuffer, sizeof(messageBuffer), "0x%x (0X%x)",
int(getRotationGunYZ()),
int(rotDiff));
}
else
{
- sprintf(messageBuffer, "%.1f (%+.1f)",
+ snprintf(messageBuffer, sizeof(messageBuffer), "%.1f (%+.1f)",
getRotationGunYZ(),
rotDiff);
}
@@ -289,13 +289,13 @@
if (OptionsDisplay::instance()->getUseHexidecimal())
{
- sprintf(messageBuffer, "0X%x (0X%x)",
+ snprintf(messageBuffer, sizeof(messageBuffer), "0X%x (0X%x)",
int(getPower()),
int(powDiff));
}
else
{
- sprintf(messageBuffer, "%.1f (%+.1f)",
+ snprintf(messageBuffer, sizeof(messageBuffer), "%.1f (%+.1f)",
getPower(),
powDiff);
}
diff -ur scorched.orig/src/tank/TankState.cpp scorched/src/tank/TankState.cpp
--- scorched.orig/src/tank/TankState.cpp 2005-07-17 13:32:05.000000000 +0200
+++ scorched/src/tank/TankState.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -88,7 +88,7 @@
const char *TankState::getStateString()
{
static char string[1024];
- sprintf(string, "%s - %s %s(%i hp)",
+ snprintf(string, sizeof(string), "%s - %s %s(%i hp)",
((readyState_==sReady)?"Rdy":"Wait"),
getSmallStateString(),
(muted_?"muted ":""),
diff -ur scorched.orig/src/tank/TankWeapon.cpp scorched/src/tank/TankWeapon.cpp
--- scorched.orig/src/tank/TankWeapon.cpp 2005-07-27 01:51:21.000000000 +0200
+++ scorched/src/tank/TankWeapon.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -206,7 +206,7 @@
{
static char buffer[256];
int count = getWeaponCount(getCurrent());
- sprintf(buffer, ((count>0)?"%s (%i)":"%s (In)"),
+ snprintf(buffer, sizeof(buffer), ((count>0)?"%s (%i)":"%s (In)"),
getCurrent()->getName(), count);
return buffer;
}
diff -ur scorched.orig/src/tankai/TankAIAdder.cpp scorched/src/tankai/TankAIAdder.cpp
--- scorched.orig/src/tankai/TankAIAdder.cpp 2005-04-05 00:35:25.000000000 +0200
+++ scorched/src/tankai/TankAIAdder.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -72,7 +72,7 @@
char uniqueId[256];
{
std::set<int> usedIds;
- sprintf(uniqueId, "%s - computer - %%i", aiName);
+ snprintf(uniqueId, sizeof(uniqueId), "%s - computer - %%i", aiName);
std::map<unsigned int, Tank *> &playingTanks =
context.getTankContainer().getPlayingTanks();
std::map<unsigned int, Tank *>::iterator playingItor;
@@ -94,7 +94,7 @@
int uniqueIdCount = 1;
while (usedIds.find(uniqueIdCount) != usedIds.end()) uniqueIdCount++;
- sprintf(uniqueId, "%s - computer - %i", aiName, uniqueIdCount);
+ snprintf(uniqueId, sizeof(uniqueId), "%s - computer - %i", aiName, uniqueIdCount);
}
std::string newname = name;
diff -ur scorched.orig/src/tankgraph/GLWTankTip.cpp scorched/src/tankgraph/GLWTankTip.cpp
--- scorched.orig/src/tankgraph/GLWTankTip.cpp 2006-02-11 15:02:47.000000000 +0100
+++ scorched/src/tankgraph/GLWTankTip.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -50,7 +50,7 @@
for (int i=0; i<(int) oldShots.size(); i++)
{
char buffer[128];
- sprintf(buffer, "%s%i: Pwr:%.1f Ele:%.1f Rot:%.1f",
+ snprintf(buffer, sizeof(buffer), "%s%i: Pwr:%.1f Ele:%.1f Rot:%.1f",
(oldShots[i].current?"* ":" "),
i, oldShots[i].power, oldShots[i].ele,
(360.0f - oldShots[i].rot));
@@ -211,13 +211,13 @@
char buffer[128];
if (count >= 0)
{
- sprintf(buffer, "%s (%i)",
+ snprintf(buffer, sizeof(buffer), "%s (%i)",
current->getName(),
count);
}
else
{
- sprintf(buffer, "%s (In)",
+ snprintf(buffer, sizeof(buffer), "%s (In)",
current->getName());
}
entries.push_back(GLWSelectorEntry(buffer, ¤t->getToolTip(),
@@ -432,13 +432,13 @@
char buffer[128];
if (count > 0)
{
- sprintf(buffer, "%s (%i)",
+ snprintf(buffer, sizeof(buffer), "%s (%i)",
weapon->getName(),
count);
}
else
{
- sprintf(buffer, "%s (In)",
+ snprintf(buffer, sizeof(buffer), "%s (In)",
weapon->getName());
}
entries.push_back(GLWSelectorEntry(buffer, &weapon->getToolTip(),
diff -ur scorched.orig/src/tankgraph/TankMenus.cpp scorched/src/tankgraph/TankMenus.cpp
--- scorched.orig/src/tankgraph/TankMenus.cpp 2005-07-19 23:45:37.000000000 +0200
+++ scorched/src/tankgraph/TankMenus.cpp 2006-02-11 15:02:03.000000000 +0100
@@ -193,7 +193,7 @@
}
char buffer[1024];
- sprintf(buffer, "%c %8s - \"%10s\" (%s)",
+ snprintf(buffer, 1024, "%c %8s - \"%10s\" (%s)",
currentTank == tank?'>':' ',
description,
tank->getName(), modelId.getModelName());
@@ -394,12 +394,12 @@
static char buffer[1024];
if (accessoryCount > 0)
{
- sprintf(buffer, "%s (%i)",
+ snprintf(buffer, sizeof(buffer), "%s (%i)",
accessory->getName(), accessoryCount);
}
else
{
- sprintf(buffer, "%s (In)",
+ snprintf(buffer, sizeof(buffer), "%s (In)",
accessory->getName());
}
menuItems_.push_back(accessory);