Skip to content

Commit

Permalink
fix print format
Browse files Browse the repository at this point in the history
Allows the compiler to actually diagnose formats.

Signed-off-by: Rosen Penev <[email protected]>
  • Loading branch information
neheb committed May 10, 2023
1 parent c86ae6a commit 37184fd
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 21 deletions.
4 changes: 2 additions & 2 deletions src/bmffimage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -265,7 +265,7 @@ uint64_t BmffImage::boxHandler(std::ostream& out /* = std::cout*/, Exiv2::PrintS
if (bTrace) {
bLF = true;
out << Internal::indent(depth) << "Exiv2::BmffImage::boxHandler: " << toAscii(box_type)
<< Internal::stringFormat(" %8ld->%" PRIu64 " ", address, box_length);
<< Internal::stringFormat(" %8zd->%" PRIu64 " ", address, box_length);
}

if (box_length == 1) {
Expand Down Expand Up @@ -435,7 +435,7 @@ uint64_t BmffImage::boxHandler(std::ostream& out /* = std::cout*/, Exiv2::PrintS
uint32_t ldata = data.read_uint32(skip + step - 4, endian_);
if (bTrace) {
out << Internal::indent(depth)
<< Internal::stringFormat("%8ld | %8ld | ID | %4u | %6u,%6u", address + skip, step, ID, offset, ldata)
<< Internal::stringFormat("%8zd | %8zd | ID | %4u | %6u,%6u", address + skip, step, ID, offset, ldata)
<< std::endl;
}
// save data for post-processing in meta box
Expand Down
4 changes: 2 additions & 2 deletions src/image_int.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@
#include <string>

#if defined(__MINGW32__)
#define ATTRIBUTE_FORMAT_PRINTF __attribute__((format(__MINGW_PRINTF_FORMAT, 1, 0)))
#define ATTRIBUTE_FORMAT_PRINTF __attribute__((format(__MINGW_PRINTF_FORMAT, 1, 2)))
#elif defined(__GNUC__)
#define ATTRIBUTE_FORMAT_PRINTF __attribute__((format(printf, 1, 0)))
#define ATTRIBUTE_FORMAT_PRINTF __attribute__((format(printf, 1, 2)))
#else
#define ATTRIBUTE_FORMAT_PRINTF
#endif
Expand Down
2 changes: 1 addition & 1 deletion src/jp2image.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -411,7 +411,7 @@ void Jp2Image::printStructure(std::ostream& out, PrintStructureOption option, si
Internal::enforce(box.length <= boxHSize + io_->size() - io_->tell(), ErrorCode::kerCorruptedMetadata);

if (bPrint) {
out << Internal::stringFormat("%8ld | %8ld | ", position - boxHSize, static_cast<size_t>(box.length))
out << Internal::stringFormat("%8zd | %8zd | ", position - boxHSize, static_cast<size_t>(box.length))
<< toAscii(box.type) << " | ";
bLF = true;
if (box.type == kJp2BoxTypeClose)
Expand Down
2 changes: 1 addition & 1 deletion src/jpgimage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ void JpegBase::readMetadata() {

#define REPORT_MARKER \
if ((option == kpsBasic || option == kpsRecursive)) \
out << Internal::stringFormat("%8ld | 0xff%02x %-5s", io_->tell() - 2, marker, nm[marker].c_str())
out << Internal::stringFormat("%8zd | 0xff%02x %-5s", io_->tell() - 2, marker, nm[marker].c_str())

void JpegBase::printStructure(std::ostream& out, PrintStructureOption option, size_t depth) {
if (io_->open() != 0)
Expand Down
30 changes: 15 additions & 15 deletions src/rafimage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
if (bPrint) {
io_->seek(0, BasicIo::beg); // rewind
size_t address = io_->tell();
const auto format = " %8d | %8d | ";
const auto format = " %8zu | %8ld | ";

{
out << Internal::indent(depth) << "STRUCTURE OF RAF FILE: " << io().path() << std::endl;
Expand All @@ -81,7 +81,7 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
io_->read(magicdata, 16);
magicdata[16] = 0;
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, 16, 0)
out << Internal::indent(depth) << Internal::stringFormat(format, address, 16L) // 0
<< " magic : " << reinterpret_cast<char*>(magicdata) << std::endl;
}

Expand All @@ -90,7 +90,7 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
io_->read(data1, 4);
data1[4] = 0;
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4, 16)
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4L) // 16
<< " data1 : " << std::string(reinterpret_cast<char*>(&data1)) << std::endl;
}

Expand All @@ -99,7 +99,7 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
io_->read(data2, 8);
data2[8] = 0;
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, 8, 20)
out << Internal::indent(depth) << Internal::stringFormat(format, address, 8L) // 20
<< " data2 : " << std::string(reinterpret_cast<char*>(&data2)) << std::endl;
}

Expand All @@ -108,7 +108,7 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
io_->read(camdata, 32);
camdata[32] = 0;
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, 32, 28)
out << Internal::indent(depth) << Internal::stringFormat(format, address, 32L) // 28
<< " camera : " << std::string(reinterpret_cast<char*>(&camdata)) << std::endl;
}

Expand All @@ -117,15 +117,15 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
io_->read(dir_version, 4);
dir_version[4] = 0;
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4, 60)
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4L) // 60
<< " version : " << std::string(reinterpret_cast<char*>(&dir_version)) << std::endl;
}

address = io_->tell();
DataBuf unknown(20);
io_->read(unknown.data(), unknown.size());
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, 20)
out << Internal::indent(depth) << Internal::stringFormat(format, address, 20L)
<< " unknown : " << Internal::binaryToString(makeSlice(unknown, 0, unknown.size())) << std::endl;
}

Expand All @@ -143,9 +143,9 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
j_off << jpg_img_off;
j_len << jpg_img_len;
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4) << "JPEG Offset : " << j_off.str()
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4L) << "JPEG Offset : " << j_off.str()
<< std::endl;
out << Internal::indent(depth) << Internal::stringFormat(format, address2, 4) << "JPEG Length : " << j_len.str()
out << Internal::indent(depth) << Internal::stringFormat(format, address2, 4L) << "JPEG Length : " << j_len.str()
<< std::endl;
}

Expand All @@ -162,9 +162,9 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
ch_off << cfa_hdr_off;
ch_len << cfa_hdr_len;
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4) << " CFA Offset : " << ch_off.str()
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4L) << " CFA Offset : " << ch_off.str()
<< std::endl;
out << Internal::indent(depth) << Internal::stringFormat(format, address2, 4) << " CFA Length : " << ch_len.str()
out << Internal::indent(depth) << Internal::stringFormat(format, address2, 4L) << " CFA Length : " << ch_len.str()
<< std::endl;
}

Expand All @@ -181,9 +181,9 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
c_off << cfa_off;
c_len << cfa_len;
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4) << "TIFF Offset : " << c_off.str()
out << Internal::indent(depth) << Internal::stringFormat(format, address, 4L) << "TIFF Offset : " << c_off.str()
<< std::endl;
out << Internal::indent(depth) << Internal::stringFormat(format, address2, 4) << "TIFF Length : " << c_len.str()
out << Internal::indent(depth) << Internal::stringFormat(format, address2, 4L) << "TIFF Length : " << c_len.str()
<< std::endl;
}

Expand All @@ -200,15 +200,15 @@ void RafImage::printStructure(std::ostream& out, PrintStructureOption option, si
address = io_->tell();
io_->read(payload.data(), payload.size());
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, cfa_hdr_len, cfa_hdr_off)
out << Internal::indent(depth) << Internal::stringFormat(format, address, cfa_hdr_len) // cfa_hdr_off
<< " CFA : " << Internal::binaryToString(makeSlice(payload, 0, payload.size())) << std::endl;
}

io_->seek(cfa_off, BasicIo::beg); // rewind
address = io_->tell();
io_->read(payload.data(), payload.size());
{
out << Internal::indent(depth) << Internal::stringFormat(format, address, cfa_len, cfa_off)
out << Internal::indent(depth) << Internal::stringFormat(format, address, cfa_len) // cfa_off
<< " TIFF : " << Internal::binaryToString(makeSlice(payload, 0, payload.size())) << std::endl;
}
}
Expand Down

0 comments on commit 37184fd

Please sign in to comment.