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 | 99 | |
| 100 | 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 | 123 | void writeFile(const QString &file, const QString &data) | ... | ... |