core files: replace sprintf with snprintf
This commit is contained in:
@ -674,7 +674,9 @@ int DumpAtom::convert_image(int n, double *mybuf)
|
||||
memory->grow(sbuf,maxsbuf,"dump:sbuf");
|
||||
}
|
||||
|
||||
offset += sprintf(&sbuf[offset],format,
|
||||
offset += snprintf(&sbuf[offset],
|
||||
maxsbuf - offset,
|
||||
format,
|
||||
static_cast<tagint> (mybuf[m]),
|
||||
static_cast<int> (mybuf[m+1]),
|
||||
mybuf[m+2],mybuf[m+3],mybuf[m+4],
|
||||
@ -700,7 +702,9 @@ int DumpAtom::convert_noimage(int n, double *mybuf)
|
||||
memory->grow(sbuf,maxsbuf,"dump:sbuf");
|
||||
}
|
||||
|
||||
offset += sprintf(&sbuf[offset],format,
|
||||
offset += snprintf(&sbuf[offset],
|
||||
maxsbuf - offset,
|
||||
format,
|
||||
static_cast<tagint> (mybuf[m]),
|
||||
static_cast<int> (mybuf[m+1]),
|
||||
mybuf[m+2],mybuf[m+3],mybuf[m+4]);
|
||||
|
||||
@ -166,23 +166,24 @@ int DumpCFG::convert_string(int n, double *mybuf)
|
||||
}
|
||||
|
||||
for (j = 0; j < size_one; j++) {
|
||||
const auto maxsize = maxsbuf - offset;
|
||||
if (j == 0) {
|
||||
offset += sprintf(&sbuf[offset],"%f \n",mybuf[m]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,"%f \n",mybuf[m]);
|
||||
} else if (j == 1) {
|
||||
offset += sprintf(&sbuf[offset],"%s \n",typenames[(int) mybuf[m]]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,"%s \n",typenames[(int) mybuf[m]]);
|
||||
} else if (j >= 2) {
|
||||
if (vtype[j] == Dump::INT)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],static_cast<int> (mybuf[m]));
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],static_cast<int> (mybuf[m]));
|
||||
else if (vtype[j] == Dump::DOUBLE)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],mybuf[m]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],mybuf[m]);
|
||||
else if (vtype[j] == Dump::STRING)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],typenames[(int) mybuf[m]]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],typenames[(int) mybuf[m]]);
|
||||
else if (vtype[j] == Dump::BIGINT)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],static_cast<bigint> (mybuf[m]));
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],static_cast<bigint> (mybuf[m]));
|
||||
}
|
||||
m++;
|
||||
}
|
||||
offset += sprintf(&sbuf[offset],"\n");
|
||||
offset += snprintf(&sbuf[offset],maxsbuf-offset,"\n");
|
||||
}
|
||||
|
||||
} else if (unwrapflag == 1) {
|
||||
@ -195,29 +196,30 @@ int DumpCFG::convert_string(int n, double *mybuf)
|
||||
}
|
||||
|
||||
for (j = 0; j < size_one; j++) {
|
||||
const auto maxsize = maxsbuf - offset;
|
||||
if (j == 0) {
|
||||
offset += sprintf(&sbuf[offset],"%f \n",mybuf[m]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,"%f \n",mybuf[m]);
|
||||
} else if (j == 1) {
|
||||
offset += sprintf(&sbuf[offset],"%s \n",typenames[(int) mybuf[m]]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,"%s \n",typenames[(int) mybuf[m]]);
|
||||
} else if (j >= 2 && j <= 4) {
|
||||
unwrap_coord = (mybuf[m] - 0.5)/UNWRAPEXPAND + 0.5;
|
||||
offset += sprintf(&sbuf[offset],vformat[j],unwrap_coord);
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],unwrap_coord);
|
||||
} else if (j >= 5) {
|
||||
if (vtype[j] == Dump::INT)
|
||||
offset +=
|
||||
sprintf(&sbuf[offset],vformat[j],static_cast<int> (mybuf[m]));
|
||||
snprintf(&sbuf[offset],maxsize,vformat[j],static_cast<int> (mybuf[m]));
|
||||
else if (vtype[j] == Dump::DOUBLE)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],mybuf[m]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],mybuf[m]);
|
||||
else if (vtype[j] == Dump::STRING)
|
||||
offset +=
|
||||
sprintf(&sbuf[offset],vformat[j],typenames[(int) mybuf[m]]);
|
||||
snprintf(&sbuf[offset],maxsize,vformat[j],typenames[(int) mybuf[m]]);
|
||||
else if (vtype[j] == Dump::BIGINT)
|
||||
offset +=
|
||||
sprintf(&sbuf[offset],vformat[j],static_cast<bigint> (mybuf[m]));
|
||||
snprintf(&sbuf[offset],maxsize,vformat[j],static_cast<bigint> (mybuf[m]));
|
||||
}
|
||||
m++;
|
||||
}
|
||||
offset += sprintf(&sbuf[offset],"\n");
|
||||
offset += snprintf(&sbuf[offset],maxsbuf - offset,"\n");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -1358,20 +1358,21 @@ int DumpCustom::convert_string(int n, double *mybuf)
|
||||
}
|
||||
|
||||
for (j = 0; j < nfield; j++) {
|
||||
const auto maxsize = maxsbuf - offset;
|
||||
if (vtype[j] == Dump::INT)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],static_cast<int> (mybuf[m]));
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],static_cast<int> (mybuf[m]));
|
||||
else if (vtype[j] == Dump::DOUBLE)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],mybuf[m]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],mybuf[m]);
|
||||
else if (vtype[j] == Dump::STRING)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],typenames[(int) mybuf[m]]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],typenames[(int) mybuf[m]]);
|
||||
else if (vtype[j] == Dump::STRING2)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],atom->lmap->typelabel[(int) mybuf[m]-1].c_str());
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],atom->lmap->typelabel[(int) mybuf[m]-1].c_str());
|
||||
else if (vtype[j] == Dump::BIGINT)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],
|
||||
static_cast<bigint> (mybuf[m]));
|
||||
m++;
|
||||
}
|
||||
offset += sprintf(&sbuf[offset],"\n");
|
||||
offset += snprintf(&sbuf[offset],maxsbuf-offset,"\n");
|
||||
}
|
||||
|
||||
return offset;
|
||||
@ -1909,9 +1910,9 @@ int DumpCustom::modify_param(int narg, char **arg)
|
||||
if (ptr == nullptr)
|
||||
error->all(FLERR,"Dump_modify int format does not contain d character");
|
||||
char str[8];
|
||||
sprintf(str,"%s",BIGINT_FORMAT);
|
||||
snprintf(str,8,"%s",BIGINT_FORMAT);
|
||||
*ptr = '\0';
|
||||
sprintf(format_bigint_user,"%s%s%s",format_int_user,&str[1],ptr+1);
|
||||
snprintf(format_bigint_user,n,"%s%s%s",format_int_user,&str[1],ptr+1);
|
||||
*ptr = 'd';
|
||||
|
||||
} else if (strcmp(arg[1],"float") == 0) {
|
||||
|
||||
@ -590,15 +590,16 @@ int DumpGrid::convert_string(int n, double *mybuf)
|
||||
}
|
||||
|
||||
for (j = 0; j < nfield; j++) {
|
||||
const auto maxsize = maxsbuf - offset;
|
||||
if (vtype[j] == Dump::INT)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],static_cast<int> (mybuf[m]));
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],static_cast<int> (mybuf[m]));
|
||||
else if (vtype[j] == Dump::DOUBLE)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],mybuf[m]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],mybuf[m]);
|
||||
else if (vtype[j] == Dump::BIGINT)
|
||||
offset += sprintf(&sbuf[offset],vformat[j], static_cast<bigint> (mybuf[m]));
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j], static_cast<bigint> (mybuf[m]));
|
||||
m++;
|
||||
}
|
||||
offset += sprintf(&sbuf[offset],"\n");
|
||||
offset += snprintf(&sbuf[offset],maxsbuf-offset,"\n");
|
||||
}
|
||||
|
||||
return offset;
|
||||
@ -776,9 +777,9 @@ int DumpGrid::modify_param(int narg, char **arg)
|
||||
if (ptr == nullptr)
|
||||
error->all(FLERR,"Dump_modify int format does not contain d character");
|
||||
char str[8];
|
||||
sprintf(str,"%s",BIGINT_FORMAT);
|
||||
snprintf(str,8,"%s",BIGINT_FORMAT);
|
||||
*ptr = '\0';
|
||||
sprintf(format_bigint_user,"%s%s%s",format_int_user,&str[1],ptr+1);
|
||||
snprintf(format_bigint_user,n,"%s%s%s",format_int_user,&str[1],ptr+1);
|
||||
*ptr = 'd';
|
||||
|
||||
} else if (strcmp(arg[1],"float") == 0) {
|
||||
|
||||
@ -264,9 +264,9 @@ int DumpLocal::modify_param(int narg, char **arg)
|
||||
if (ptr == nullptr)
|
||||
error->all(FLERR, "Dump_modify int format does not contain d character");
|
||||
char str[8];
|
||||
sprintf(str,"%s",BIGINT_FORMAT);
|
||||
snprintf(str,8,"%s",BIGINT_FORMAT);
|
||||
*ptr = '\0';
|
||||
sprintf(format_bigint_user,"%s%s%s",format_int_user,&str[1],ptr+1);
|
||||
snprintf(format_bigint_user,n,"%s%s%s",format_int_user,&str[1],ptr+1);
|
||||
*ptr = 'd';
|
||||
|
||||
} else if (strcmp(arg[1],"float") == 0) {
|
||||
@ -387,17 +387,18 @@ int DumpLocal::convert_string(int n, double *mybuf)
|
||||
}
|
||||
|
||||
for (j = 0; j < size_one; j++) {
|
||||
const auto maxsize = maxsbuf - offset;
|
||||
if (vtype[j] == Dump::INT)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],static_cast<int> (mybuf[m]));
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],static_cast<int> (mybuf[m]));
|
||||
else if (vtype[j] == Dump::DOUBLE)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],mybuf[m]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],mybuf[m]);
|
||||
else if (vtype[j] == Dump::BIGINT)
|
||||
offset += sprintf(&sbuf[offset],vformat[j],static_cast<bigint> (mybuf[m]));
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],static_cast<bigint> (mybuf[m]));
|
||||
else
|
||||
offset += sprintf(&sbuf[offset],vformat[j],mybuf[m]);
|
||||
offset += snprintf(&sbuf[offset],maxsize,vformat[j],mybuf[m]);
|
||||
m++;
|
||||
}
|
||||
offset += sprintf(&sbuf[offset],"\n");
|
||||
offset += snprintf(&sbuf[offset],maxsbuf-offset,"\n");
|
||||
}
|
||||
|
||||
return offset;
|
||||
|
||||
@ -85,7 +85,7 @@ void DumpXYZ::init_style()
|
||||
typenames = new char*[ntypes+1];
|
||||
for (int itype = 1; itype <= ntypes; itype++) {
|
||||
typenames[itype] = new char[12];
|
||||
sprintf(typenames[itype],"%d",itype);
|
||||
snprintf(typenames[itype],12,"%d",itype);
|
||||
}
|
||||
}
|
||||
|
||||
@ -206,7 +206,7 @@ int DumpXYZ::convert_string(int n, double *mybuf)
|
||||
memory->grow(sbuf,maxsbuf,"dump:sbuf");
|
||||
}
|
||||
|
||||
offset += sprintf(&sbuf[offset], format, typenames[static_cast<int> (mybuf[m+1])],
|
||||
offset += snprintf(&sbuf[offset], maxsbuf-offset, format, typenames[static_cast<int> (mybuf[m+1])],
|
||||
mybuf[m+2], mybuf[m+3], mybuf[m+4]);
|
||||
m += size_one;
|
||||
}
|
||||
|
||||
@ -1025,7 +1025,7 @@ char *Variable::retrieve(const char *name)
|
||||
error->all(FLERR, "Variable {}: format variable {} has incompatible style",
|
||||
names[ivar],data[ivar][0]);
|
||||
double answer = compute_equal(jvar);
|
||||
sprintf(data[ivar][2],data[ivar][1],answer);
|
||||
snprintf(data[ivar][2],VALUELENGTH,data[ivar][1],answer);
|
||||
str = data[ivar][2];
|
||||
|
||||
} else if (style[ivar] == GETENV) {
|
||||
|
||||
@ -121,7 +121,7 @@ TEST_F(LAMMPS_extract_variable, loop_pad)
|
||||
char str[10];
|
||||
char *fstr;
|
||||
for (i = 1; i <= 10; i++) {
|
||||
std::sprintf(str, "%02d", i);
|
||||
std::snprintf(str, 10, "%02d", i);
|
||||
fstr = f_lammps_extract_variable_loop_pad();
|
||||
EXPECT_STREQ(fstr, str);
|
||||
std::free(fstr);
|
||||
@ -170,7 +170,7 @@ TEST_F(LAMMPS_extract_variable, format)
|
||||
char str[16];
|
||||
char *fstr;
|
||||
for (i = 1; i <= 10; i++) {
|
||||
std::sprintf(str, "%.6G", std::exp(i));
|
||||
std::snprintf(str, 16, "%.6G", std::exp(i));
|
||||
fstr = f_lammps_extract_variable_format();
|
||||
EXPECT_STREQ(fstr, str);
|
||||
std::free(fstr);
|
||||
@ -185,7 +185,7 @@ TEST_F(LAMMPS_extract_variable, format_pad)
|
||||
char str[16];
|
||||
char *fstr;
|
||||
for (i = 1; i <= 10; i++) {
|
||||
std::sprintf(str, "%08.6G", std::exp(i));
|
||||
std::snprintf(str, 16, "%08.6G", std::exp(i));
|
||||
fstr = f_lammps_extract_variable_format_pad();
|
||||
EXPECT_STREQ(fstr, str);
|
||||
std::free(fstr);
|
||||
|
||||
Reference in New Issue
Block a user