Commit 95d2b2e3f5de791b0532f6241c526d6e7296421d
1 parent
49f455fa
Fixed output special cases
Showing
1 changed file
with
16 additions
and
7 deletions
openbr/core/qtutils.cpp
| @@ -99,16 +99,25 @@ void readFile(const QString &file, QByteArray &data, bool uncompress) | @@ -99,16 +99,25 @@ void readFile(const QString &file, QByteArray &data, bool uncompress) | ||
| 99 | 99 | ||
| 100 | void writeFile(const QString &file, const QStringList &lines) | 100 | void writeFile(const QString &file, const QStringList &lines) |
| 101 | { | 101 | { |
| 102 | - QFile f(file); | ||
| 103 | - touchDir(f); | 102 | + if (file.isEmpty()) return; |
| 103 | + const QString baseName = QFileInfo(file).baseName(); | ||
| 104 | + | ||
| 105 | + if (baseName == "terminal") { | ||
| 106 | + printf("%s\n", qPrintable(lines.join("\n"))); | ||
| 107 | + } else if (baseName == "buffer") { | ||
| 108 | + Globals->buffer = lines.join("\n").toStdString().c_str(); | ||
| 109 | + } else { | ||
| 110 | + QFile f(file); | ||
| 111 | + touchDir(f); | ||
| 104 | 112 | ||
| 105 | - if (!f.open(QFile::WriteOnly)) | ||
| 106 | - qFatal("Failed to open %s for writing.", qPrintable(file)); | 113 | + if (!f.open(QFile::WriteOnly)) |
| 114 | + qFatal("Failed to open %s for writing.", qPrintable(file)); | ||
| 107 | 115 | ||
| 108 | - foreach (const QString &line, lines) | ||
| 109 | - f.write((line+"\n").toLocal8Bit() ); | 116 | + foreach (const QString &line, lines) |
| 117 | + f.write((line+"\n").toLocal8Bit()); | ||
| 110 | 118 | ||
| 111 | - f.close(); | 119 | + f.close(); |
| 120 | + } | ||
| 112 | } | 121 | } |
| 113 | 122 | ||
| 114 | void writeFile(const QString &file, const QString &data) | 123 | void writeFile(const QString &file, const QString &data) |