Commit 1180fc87 authored by wahikihiki's avatar wahikihiki
Browse files

OutputCallback: Accept std::string argument

parent 748d0245
......@@ -123,11 +123,8 @@ public:
s += "\n";
});
cmSystemTools::SetStdoutCallback(
[&s](const char* m, size_t len) { s.append(m, len); });
cmSystemTools::SetStderrCallback(
[&s](const char* m, size_t len) { s.append(m, len); });
cmSystemTools::SetStdoutCallback([&s](std::string const& m) { s += m; });
cmSystemTools::SetStderrCallback([&s](std::string const& m) { s += m; });
this->CM.SetProgressCallback([&s](const char* msg, float /*unused*/) {
s += msg;
......
......@@ -29,9 +29,9 @@ QCMake::QCMake(QObject* p)
this->messageCallback(msg, title);
});
cmSystemTools::SetStdoutCallback(
[this](const char* msg, size_t len) { this->stdoutCallback(msg, len); });
[this](std::string const& msg) { this->stdoutCallback(msg); });
cmSystemTools::SetStderrCallback(
[this](const char* msg, size_t len) { this->stderrCallback(msg, len); });
[this](std::string const& msg) { this->stderrCallback(msg); });
this->CMakeInstance = new cmake(cmake::RoleProject, cmState::Project);
this->CMakeInstance->SetCMakeEditCommand(
......@@ -365,15 +365,15 @@ void QCMake::messageCallback(const char* msg, const char* /*title*/)
QCoreApplication::processEvents();
}
void QCMake::stdoutCallback(const char* msg, size_t len)
void QCMake::stdoutCallback(std::string const& msg)
{
emit this->outputMessage(QString::fromLocal8Bit(msg, int(len)));
emit this->outputMessage(QString::fromStdString(msg));
QCoreApplication::processEvents();
}
void QCMake::stderrCallback(const char* msg, size_t len)
void QCMake::stderrCallback(std::string const& msg)
{
emit this->outputMessage(QString::fromLocal8Bit(msg, int(len)));
emit this->outputMessage(QString::fromStdString(msg));
QCoreApplication::processEvents();
}
......
......@@ -170,8 +170,8 @@ protected:
bool interruptCallback();
void progressCallback(const char* msg, float percent);
void messageCallback(const char* msg, const char* title);
void stdoutCallback(const char* msg, size_t len);
void stderrCallback(const char* msg, size_t len);
void stdoutCallback(std::string const& msg);
void stderrCallback(std::string const& msg);
bool WarnUninitializedMode;
bool WarnUnusedMode;
......
......@@ -308,7 +308,7 @@ void cmSystemTools::SetStderrCallback(OutputCallback f)
void cmSystemTools::Stderr(const std::string& s)
{
if (s_StderrCallback) {
s_StderrCallback(s.c_str(), s.length());
s_StderrCallback(s);
} else {
std::cerr << s << std::flush;
}
......@@ -317,7 +317,7 @@ void cmSystemTools::Stderr(const std::string& s)
void cmSystemTools::Stdout(const std::string& s)
{
if (s_StdoutCallback) {
s_StdoutCallback(s.c_str(), s.length());
s_StdoutCallback(s);
} else {
std::cout << s << std::flush;
}
......
......@@ -80,7 +80,7 @@ public:
Message(m.c_str(), title);
}
using OutputCallback = std::function<void(const char*, size_t)>;
using OutputCallback = std::function<void(std::string const&)>;
///! Send a string to stdout
static void Stdout(const std::string& s);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment