| 131 | }; |
| 132 | |
| 133 | static std::unique_ptr <nbt::tag_compound> parseServersDat(const QString& filename) |
| 134 | { |
| 135 | try |
| 136 | { |
| 137 | QByteArray input = FS::read(filename); |
| 138 | std::istringstream foo(std::string(input.constData(), input.size())); |
| 139 | auto pair = nbt::io::read_compound(foo); |
| 140 | |
| 141 | if(pair.first != "") |
| 142 | return nullptr; |
| 143 | |
| 144 | if(pair.second == nullptr) |
| 145 | return nullptr; |
| 146 | |
| 147 | return std::move(pair.second); |
| 148 | } |
| 149 | catch (...) |
| 150 | { |
| 151 | return nullptr; |
| 152 | } |
| 153 | } |
| 154 | |
| 155 | static bool serializeServerDat(const QString& filename, nbt::tag_compound * levelInfo) |
| 156 | { |