From c2fd0c1cb1ae858770b9532753407ea6c529a1c5 Mon Sep 17 00:00:00 2001
From: Kubat <mael.martin31@gmail.com>
Date: Wed, 25 Aug 2021 15:29:49 +0200
Subject: [PATCH] MISC: Explicitly set string codec to UTF-8

---
 src/VivyApplication.cc | 4 +++-
 src/VivyCli.cc         | 5 ++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/VivyApplication.cc b/src/VivyApplication.cc
index 075638a9..7bf1e08b 100644
--- a/src/VivyApplication.cc
+++ b/src/VivyApplication.cc
@@ -5,6 +5,7 @@
 #include <QIcon>
 #include <QFontDatabase>
 #include <locale>
+#include <QTextCodec>
 
 using namespace Vivy;
 
@@ -35,7 +36,8 @@ VivyApplication::setTheme(Theme theme) noexcept
 int
 VivyApplication::exec() noexcept
 {
-    // For MPV
+    // For MPV & Qt
+    QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
     std::setlocale(LC_NUMERIC, "C");
 
     // Add fonts
diff --git a/src/VivyCli.cc b/src/VivyCli.cc
index 87e54139..0dedba63 100644
--- a/src/VivyCli.cc
+++ b/src/VivyCli.cc
@@ -1,5 +1,6 @@
 #include "VivyCli.hh"
 #include <iostream>
+#include <QTextCodec>
 
 using namespace Vivy;
 
@@ -13,12 +14,14 @@ VivyCli::VivyCli(int &argc, char **argv) noexcept
 int
 VivyCli::exec() noexcept
 {
+    QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
+
     if ((selectedDoc == nullptr) || (!scriptStore.executeScript(selectedDoc->getUuid())))
         return 1;
 
     for (const auto &str : scriptStore.getLoadedModules()) {
         std::cout << "Module " << str << " was loaded!\n";
-        const auto *mod = scriptStore.getModule(str);
+        [[maybe_unused]] const auto *mod = scriptStore.getModule(str);
     }
     return 0;
 }
-- 
GitLab