From 13fa4331fb4d9c34d0b72254904c37e8eae8dfbe Mon Sep 17 00:00:00 2001 From: Syping Date: Thu, 11 May 2023 21:51:51 +0200 Subject: [PATCH] build fix for older Boost.JSON versions --- src/JsonEditorDialog.cpp | 13 +++++++++---- src/SnapmaticPicture.cpp | 2 +- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/JsonEditorDialog.cpp b/src/JsonEditorDialog.cpp index 36d0c92..05fdda8 100644 --- a/src/JsonEditorDialog.cpp +++ b/src/JsonEditorDialog.cpp @@ -74,9 +74,14 @@ JsonEditorDialog::JsonEditorDialog(SnapmaticPicture *picture, QWidget *parent) : ui->txtJSON->setTabStopWidth(fontMetrics.width(" ")); #endif - const boost::json::value jsonValue = boost::json::parse(jsonCode); ui->txtJSON->setStyleSheet("QPlainTextEdit{background-color:rgb(46,47,48);color:rgb(238,231,172);}"); - ui->txtJSON->setPlainText(QString::fromUtf8(SnapmaticJson::serialize(jsonValue, true).c_str())); + + boost::json::error_code ec; + const boost::json::value jsonValue = boost::json::parse(jsonCode, ec); + if (jsonValue.is_object()) { + const boost::json::object jsonObject = jsonValue.get_object(); + ui->txtJSON->setPlainText(QString::fromUtf8(SnapmaticJson::serialize(jsonObject, true).c_str())); + } jsonHl = new JSHighlighter(ui->txtJSON->document()); // DPI calculation @@ -107,7 +112,7 @@ JsonEditorDialog::~JsonEditorDialog() void JsonEditorDialog::closeEvent(QCloseEvent *ev) { const QString jsonPatched = QString(ui->txtJSON->toPlainText()).replace("\t", ""); - std::error_code ec; + boost::json::error_code ec; const boost::json::value jsonNew = boost::json::parse(jsonPatched.toUtf8().constData(), ec); const boost::json::value jsonOriginal = boost::json::parse(jsonCode, ec); const std::string newCode = SnapmaticJson::serialize(jsonNew); @@ -137,7 +142,7 @@ void JsonEditorDialog::closeEvent(QCloseEvent *ev) bool JsonEditorDialog::saveJsonContent() { const QString jsonPatched = QString(ui->txtJSON->toPlainText()).replace("\t", ""); - std::error_code ec; + boost::json::error_code ec; const boost::json::value jsonNew = boost::json::parse(jsonPatched.toUtf8().constData(), ec); if (jsonNew.is_object()) { const boost::json::value jsonOriginal = boost::json::parse(jsonCode, ec); diff --git a/src/SnapmaticPicture.cpp b/src/SnapmaticPicture.cpp index 9504705..516f108 100644 --- a/src/SnapmaticPicture.cpp +++ b/src/SnapmaticPicture.cpp @@ -568,7 +568,7 @@ bool SnapmaticPicture::preloadFile() if (!picFilePath.endsWith(".g5e", Qt::CaseInsensitive) && p_ragePhoto.format() == G5EPhotoFormat::G5EX) isFormatSwitch = true; - std::error_code ec; + boost::json::error_code ec; const boost::json::value jsonValue = boost::json::parse(p_ragePhoto.json(), ec); if (ec) return false;