summaryrefslogtreecommitdiffstatshomepage
path: root/src/tools
diff options
context:
space:
mode:
author Erik <erik_newton@hotmail.com>2023-02-19 17:24:34 +0000
committer GitHub <noreply@github.com>2023-02-20 04:24:34 +1100
commit32f48ebb75f4fefcc7bcf0482289c0afa57d9973 (patch)
treea8c5b68a90a2c29be7dd7a49f13506c4fcddaeed /src/tools
parenta547f50515ea037d11b5725591718ea1a7a66456 (diff)
Reduced usage of sprintf. (#10892)
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/chdman.cpp13
-rw-r--r--src/tools/image_handler.cpp2
-rw-r--r--src/tools/imgtool/modules/psion.cpp2
-rw-r--r--src/tools/imgtool/modules/thomson.cpp22
4 files changed, 18 insertions, 21 deletions
diff --git a/src/tools/chdman.cpp b/src/tools/chdman.cpp
index c414c05f5f5..bbbc81d4526 100644
--- a/src/tools/chdman.cpp
+++ b/src/tools/chdman.cpp
@@ -2429,8 +2429,7 @@ static void do_extract_cd(parameters_map &params)
int chop = default_name.find_last_of('.');
if (chop != -1)
default_name.erase(chop, default_name.size());
- char basename[128];
- strncpy(basename, default_name.c_str(), 127);
+ std::string basename = default_name;
default_name.append(".bin");
std::string *output_bin_file_str;
if (output_bin_file_fnd == params.end())
@@ -2527,17 +2526,15 @@ static void do_extract_cd(parameters_map &params)
std::vector<uint8_t> buffer;
for (int tracknum = 0; tracknum < toc.numtrks; tracknum++)
{
- std::string trackbin_name(basename);
+ std::string trackbin_name = basename;
if (mode == MODE_GDI)
{
- char temp[11];
- sprintf(temp, "%02d", tracknum+1);
- trackbin_name.append(temp);
+ trackbin_name += util::string_format("%02d", tracknum+1);
if (toc.tracks[tracknum].trktype == cdrom_file::CD_TRACK_AUDIO)
- trackbin_name.append(".raw");
+ trackbin_name += ".raw";
else
- trackbin_name.append(".bin");
+ trackbin_name += ".bin";
output_bin_file.reset();
diff --git a/src/tools/image_handler.cpp b/src/tools/image_handler.cpp
index a2083bcbd59..9e88c501a95 100644
--- a/src/tools/image_handler.cpp
+++ b/src/tools/image_handler.cpp
@@ -266,9 +266,9 @@ bool image_handler::floppy_load(const floppy_format_info *format)
bool image_handler::floppy_save(const floppy_format_info *format)
{
std::vector<uint32_t> variants;
- std::string msg = util::string_format("Error opening %s for writing", m_on_disk_path);
FILE *f = fopen(m_on_disk_path.c_str(), "wb");
if (!f) {
+ auto msg = util::string_format("Error opening %s for writing", m_on_disk_path);
perror(msg.c_str());
return true;
}
diff --git a/src/tools/imgtool/modules/psion.cpp b/src/tools/imgtool/modules/psion.cpp
index 007650084b6..ec556bd1cff 100644
--- a/src/tools/imgtool/modules/psion.cpp
+++ b/src/tools/imgtool/modules/psion.cpp
@@ -488,7 +488,7 @@ static imgtoolerr_t datapack_next_enum(imgtool::directory &enumeration, imgtool_
return IMGTOOLERR_SUCCESS;
}
memcpy(ent.filename, pack->pack_index[iter->index].filename, 8);
- sprintf(ent.attr, "Type: %02x ID: %02x", pack->pack_index[iter->index].type, pack->pack_index[iter->index].id);
+ snprintf(ent.attr, std::size(ent.attr), "Type: %02x ID: %02x", pack->pack_index[iter->index].type, pack->pack_index[iter->index].id);
if (pack->pack_index[iter->index].data_rec)
{
diff --git a/src/tools/imgtool/modules/thomson.cpp b/src/tools/imgtool/modules/thomson.cpp
index be584bde240..d5281542c60 100644
--- a/src/tools/imgtool/modules/thomson.cpp
+++ b/src/tools/imgtool/modules/thomson.cpp
@@ -595,14 +595,14 @@ static int thom_find_dirent(thom_floppy* f, unsigned head,
{
int n = 0;
while ( 1 ) {
- thom_get_dirent( f, head, n, d );
- if ( d->type == THOM_DIRENT_END ) return 0;
- if ( d->type == THOM_DIRENT_FILE ) {
- char buf[13];
- sprintf( buf, "%s.%s", d->name, d->ext );
- if ( ! strcmp( buf, name ) ) return 1;
- }
- n++;
+ thom_get_dirent( f, head, n, d );
+ if ( d->type == THOM_DIRENT_END ) return 0;
+ if ( d->type == THOM_DIRENT_FILE ) {
+ char buf[13];
+ snprintf( buf, std::size(buf), "%s.%s", d->name, d->ext );
+ if ( ! strcmp( buf, name ) ) return 1;
+ }
+ n++;
}
}
@@ -957,7 +957,7 @@ static imgtoolerr_t thom_read_file(imgtool::partition &part,
/* convert filename */
thom_conv_filename( filename, name, ext );
- sprintf( fname, "%s.%s", name, ext );
+ snprintf( fname, std::size(fname), "%s.%s", name, ext );
if ( ! thom_find_dirent( f, head, fname, &d ) )
return IMGTOOLERR_FILENOTFOUND;
@@ -978,7 +978,7 @@ static imgtoolerr_t thom_delete_file(imgtool::partition &part,
/* convert filename */
thom_conv_filename( filename, name, ext );
- sprintf( fname, "%s.%s", name, ext );
+ snprintf( fname, std::size(fname), "%s.%s", name, ext );
if ( ! thom_find_dirent( f, head, fname, &d ) )
return IMGTOOLERR_FILENOTFOUND;
@@ -1007,7 +1007,7 @@ static imgtoolerr_t thom_write_file(imgtool::partition &part,
/* convert filename */
thom_conv_filename( filename, name, ext );
- sprintf( fname, "%s.%s", name, ext );
+ snprintf( fname, std::size(fname), "%s.%s", name, ext );
/* check available space & find dir entry */
if ( thom_find_dirent( f, head, fname, &d ) ) {