diff options
author | Javier <dev.git@javispedro.com> | 2015-04-01 03:36:17 +0200 |
---|---|---|
committer | Javier <dev.git@javispedro.com> | 2015-04-01 03:36:17 +0200 |
commit | dd1fc613da7ffa9039495f6c3fe466feae074019 (patch) | |
tree | c802edf10660d391c8ddeb0d8e852301ac84da80 /saltoqd/cardmanager.cpp | |
parent | ebc496d4e8038834e68ef2069bc53a0524da2008 (diff) | |
download | saltoq-dd1fc613da7ffa9039495f6c3fe466feae074019.tar.gz saltoq-dd1fc613da7ffa9039495f6c3fe466feae074019.zip |
escape notification text
Diffstat (limited to 'saltoqd/cardmanager.cpp')
-rw-r--r-- | saltoqd/cardmanager.cpp | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/saltoqd/cardmanager.cpp b/saltoqd/cardmanager.cpp index 7465cc4..ab3a0bc 100644 --- a/saltoqd/cardmanager.cpp +++ b/saltoqd/cardmanager.cpp @@ -274,28 +274,37 @@ void CardManager::uninstallDeck(CardDeck *deck) disconnect(deck, 0, this, 0); } +QString CardManager::escapeString(const QString &s) +{ + QString e(s); + e.replace('\\', "\\\\"); + e.replace('\n', "\\n"); + e.replace('"', "\\\""); + return e; +} + QString CardManager::generateCardDescription(const QString &verb, Card *card) const { QString desc = verb + " { "; desc += QString("id = \"%1\", ").arg(card->id()); desc += QString("version = 2, cardevents = \"true\", "); if (!card->header().isEmpty()) { - desc += QString("header = \"%1\", ").arg(card->header()); + desc += QString("header = \"%1\", ").arg(escapeString(card->header())); } if (!card->title().isEmpty()) { - desc += QString("title = \"%1\", ").arg(card->title()); + desc += QString("title = \"%1\", ").arg(escapeString(card->title())); } if (card->dateTime().isValid()) { desc += QString("time = \"%1\", ").arg(card->dateTime().toMSecsSinceEpoch()); } if (!card->info().isEmpty()) { - desc += QString("info = \"%1\", ").arg(card->info()); + desc += QString("info = \"%1\", ").arg(escapeString(card->info())); } if (!card->isVibrate()) { desc += QString("suppressvibe = \"true\", "); } if (!card->text().isEmpty()) { - desc += QString("detail = { \"%1\" }").arg(card->text()); + desc += QString("detail = { \"%1\" }").arg(escapeString(card->text())); } desc += QString("}\n"); return desc; |