Skip to content

Commit

Permalink
build-remote: fix format string shenanigans
Browse files Browse the repository at this point in the history
HintFmt(string) invokes the HintFmt("%s", literal) constructor,
which is not what we want here. Add a constructor with a proper name
and call that.

Next step: rename all the other ones to HintFmt::literal(string).

Fixes #10238
  • Loading branch information
K900 committed Mar 26, 2024
1 parent 290072c commit 2d4edb9
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/build-remote/build-remote.cc
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ static int main_build_remote(int argc, char * * argv)
else
drvstr = "<unknown>";

auto error = HintFmt(errorText);
auto error = HintFmt::fromFormatString(errorText);
error
% drvstr
% neededSystem
Expand Down
4 changes: 4 additions & 0 deletions src/libutil/fmt.hh
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,10 @@ public:
: HintFmt("%s", Uncolored(literal))
{ }

static HintFmt fromFormatString(const std::string & format) {
return HintFmt(boost::format(format));
}

/**
* Interpolate the given arguments into the format string.
*/
Expand Down

0 comments on commit 2d4edb9

Please sign in to comment.