Eradicate calls to deprecated sprintf()

This commit is contained in:
Erica Fischer
2023-07-06 12:57:38 -07:00
parent 350d79399f
commit 1c2c07c596
7 changed files with 20 additions and 20 deletions
+1 -1
View File
@@ -29,7 +29,7 @@ static void json_context(json_object *j) {
char *s = json_stringify(j);
if (strlen(s) >= 500) {
sprintf(s + 497, "...");
snprintf(s + 497, strlen(s) + 1 - 497, "...");
}
fprintf(stderr, "in JSON object %s\n", s);
+1 -1
View File
@@ -114,7 +114,7 @@ std::string sort_quote(const char *s) {
for (size_t i = 0; i < utf32.size(); i++) {
if (utf32[i] < 0xD800) {
char buf[8];
sprintf(buf, "\\u%04lu", utf32[i]);
snprintf(buf, sizeof(buf), "\\u%04lu", utf32[i]);
ret.append(std::string(buf));
} else {
unsigned long c = utf32[i];
+11 -11
View File
@@ -723,9 +723,9 @@ void radix1(int *geomfds_in, int *indexfds_in, int inputs, int prefix, int split
sub_geompos[i] = 0;
char geomname[strlen(tmpdir) + strlen("/geom.XXXXXXXX") + 1];
sprintf(geomname, "%s%s", tmpdir, "/geom.XXXXXXXX");
snprintf(geomname, sizeof(geomname), "%s%s", tmpdir, "/geom.XXXXXXXX");
char indexname[strlen(tmpdir) + strlen("/index.XXXXXXXX") + 1];
sprintf(indexname, "%s%s", tmpdir, "/index.XXXXXXXX");
snprintf(indexname, sizeof(indexname), "%s%s", tmpdir, "/index.XXXXXXXX");
geomfds[i] = mkstemp_cloexec(geomname);
if (geomfds[i] < 0) {
@@ -1187,10 +1187,10 @@ std::pair<int, metadata> read_input(std::vector<source> &sources, char *fname, i
char geomname[strlen(tmpdir) + strlen("/geom.XXXXXXXX") + 1];
char indexname[strlen(tmpdir) + strlen("/index.XXXXXXXX") + 1];
sprintf(poolname, "%s%s", tmpdir, "/pool.XXXXXXXX");
sprintf(treename, "%s%s", tmpdir, "/tree.XXXXXXXX");
sprintf(geomname, "%s%s", tmpdir, "/geom.XXXXXXXX");
sprintf(indexname, "%s%s", tmpdir, "/index.XXXXXXXX");
snprintf(poolname, sizeof(poolname), "%s%s", tmpdir, "/pool.XXXXXXXX");
snprintf(treename, sizeof(treename), "%s%s", tmpdir, "/tree.XXXXXXXX");
snprintf(geomname, sizeof(geomname), "%s%s", tmpdir, "/geom.XXXXXXXX");
snprintf(indexname, sizeof(indexname), "%s%s", tmpdir, "/index.XXXXXXXX");
r->poolfd = mkstemp_cloexec(poolname);
if (r->poolfd < 0) {
@@ -1649,7 +1649,7 @@ std::pair<int, metadata> read_input(std::vector<source> &sources, char *fname, i
// Serial reading of chunks that are then parsed in parallel
char readname[strlen(tmpdir) + strlen("/read.XXXXXXXX") + 1];
sprintf(readname, "%s%s", tmpdir, "/read.XXXXXXXX");
snprintf(readname, sizeof(readname), "%s%s", tmpdir, "/read.XXXXXXXX");
int readfd = mkstemp_cloexec(readname);
if (readfd < 0) {
perror(readname);
@@ -1702,7 +1702,7 @@ std::pair<int, metadata> read_input(std::vector<source> &sources, char *fname, i
checkdisk(&readers);
ahead = 0;
sprintf(readname, "%s%s", tmpdir, "/read.XXXXXXXX");
snprintf(readname, sizeof(readname), "%s%s", tmpdir, "/read.XXXXXXXX");
readfd = mkstemp_cloexec(readname);
if (readfd < 0) {
perror(readname);
@@ -1837,7 +1837,7 @@ std::pair<int, metadata> read_input(std::vector<source> &sources, char *fname, i
}
char poolname[strlen(tmpdir) + strlen("/pool.XXXXXXXX") + 1];
sprintf(poolname, "%s%s", tmpdir, "/pool.XXXXXXXX");
snprintf(poolname, sizeof(poolname), "%s%s", tmpdir, "/pool.XXXXXXXX");
int poolfd = mkstemp_cloexec(poolname);
if (poolfd < 0) {
@@ -1917,7 +1917,7 @@ std::pair<int, metadata> read_input(std::vector<source> &sources, char *fname, i
}
char indexname[strlen(tmpdir) + strlen("/index.XXXXXXXX") + 1];
sprintf(indexname, "%s%s", tmpdir, "/index.XXXXXXXX");
snprintf(indexname, sizeof(indexname), "%s%s", tmpdir, "/index.XXXXXXXX");
int indexfd = mkstemp_cloexec(indexname);
if (indexfd < 0) {
@@ -1933,7 +1933,7 @@ std::pair<int, metadata> read_input(std::vector<source> &sources, char *fname, i
unlink(indexname);
char geomname[strlen(tmpdir) + strlen("/geom.XXXXXXXX") + 1];
sprintf(geomname, "%s%s", tmpdir, "/geom.XXXXXXXX");
snprintf(geomname, sizeof(geomname), "%s%s", tmpdir, "/geom.XXXXXXXX");
int geomfd = mkstemp_cloexec(geomname);
if (geomfd < 0) {
+1 -1
View File
@@ -481,7 +481,7 @@ static std::string quote(std::string const &s) {
buf.push_back(ch);
} else if (ch < ' ') {
char tmp[7];
sprintf(tmp, "\\u%04x", ch);
snprintf(tmp, sizeof(tmp), "\\u%04x", ch);
buf.append(std::string(tmp));
} else {
buf.push_back(ch);
+1 -1
View File
@@ -45,7 +45,7 @@ void json_context(json_object *j) {
char *s = json_stringify(j);
if (strlen(s) >= 500) {
sprintf(s + 497, "...");
snprintf(s + 497, strlen(s) + 1 - 497, "...");
}
fprintf(stderr, "in JSON object %s\n", s);
+1 -1
View File
@@ -46,7 +46,7 @@ std::string check_utf8(std::string s) {
out += " ";
}
char tmp[6];
sprintf(tmp, "0x%02X", s[i + j] & 0xFF);
snprintf(tmp, sizeof(tmp), "0x%02X", s[i + j] & 0xFF);
out += std::string(tmp);
}
out += ")";
+4 -4
View File
@@ -2331,11 +2331,11 @@ long long write_tile(decompressor *geoms, std::atomic<long long> *geompos_in, ch
p.full_keys.push_back("point_count_abbreviated");
sv4.type = mvt_string;
if (point_count >= 10000) {
sprintf(abbrev, "%.0fk", point_count / 1000.0);
snprintf(abbrev, sizeof(abbrev), "%.0fk", point_count / 1000.0);
} else if (point_count >= 1000) {
sprintf(abbrev, "%.1fk", point_count / 1000.0);
snprintf(abbrev, sizeof(abbrev), "%.1fk", point_count / 1000.0);
} else {
sprintf(abbrev, "%lld", point_count);
snprintf(abbrev, sizeof(abbrev), "%lld", point_count);
}
sv4.s = abbrev;
p.full_values.push_back(sv4);
@@ -3021,7 +3021,7 @@ int traverse_zooms(int *geomfd, off_t *geom_size, char *stringpool, std::atomic<
int subfd[TEMP_FILES];
for (size_t j = 0; j < TEMP_FILES; j++) {
char geomname[strlen(tmpdir) + strlen("/geom.XXXXXXXX" XSTRINGIFY(INT_MAX)) + 1];
sprintf(geomname, "%s/geom%zu.XXXXXXXX", tmpdir, j);
snprintf(geomname, sizeof(geomname), "%s/geom%zu.XXXXXXXX", tmpdir, j);
subfd[j] = mkstemp_cloexec(geomname);
// printf("%s\n", geomname);
if (subfd[j] < 0) {