fix: Escape user controlled input

This commit is contained in:
Robinhuett 2019-02-25 18:28:56 +01:00
parent abfa428dab
commit 7247360e29
2 changed files with 3 additions and 3 deletions

View File

@ -123,7 +123,7 @@ void waybar::modules::Custom::parseOutputRaw()
int i = 0;
while (getline(output, line)) {
if (i == 0) {
text_ = line;
text_ = Glib::Markup::escape_text(line);
tooltip_ = line;
class_ = "";
} else if (i == 1) {
@ -143,7 +143,7 @@ void waybar::modules::Custom::parseOutputJson()
std::string line;
while (getline(output, line)) {
auto parsed = parser_.parse(line);
text_ = parsed["text"].asString();
text_ = Glib::Markup::escape_text(parsed["text"].asString());
tooltip_ = parsed["tooltip"].asString();
class_ = parsed["class"].asString();
if (!parsed["percentage"].asString().empty() && parsed["percentage"].isUInt()) {

View File

@ -20,7 +20,7 @@ void waybar::modules::sway::Mode::worker()
auto res = ipc_.handleEvent();
auto parsed = parser_.parse(res.payload);
if (parsed["change"] != "default") {
mode_ = parsed["change"].asString();
mode_ = Glib::Markup::escape_text(parsed["change"].asString());
} else {
mode_.clear();
}