From e397f8354ce3c4c0e94da3c3a0297fc37f089216 Mon Sep 17 00:00:00 2001 From: DavidXanatos <3890945+DavidXanatos@users.noreply.github.com> Date: Sat, 8 Jul 2023 13:51:30 +0200 Subject: [PATCH] 1.10.0 --- CHANGELOG.md | 1 + Sandboxie/install/Templates.ini | 1 - .../QSbieAPI/Sandboxie/BoxedProcess.cpp | 1 + SandboxiePlus/SandMan/SandMan.cpp | 30 ++++++++++--------- 4 files changed, 18 insertions(+), 15 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index db10a2ec..5d67aa07 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -45,6 +45,7 @@ This project adheres to [Semantic Versioning](http://semver.org/). - added workaround for Chrome not starting on Windows 11 with KB5027231 [#3040](https://github.com/sandboxie-plus/Sandboxie/issues/3040) - improved compatibility with procmon/stack traces for debug builds - fixed issue with non-standard command lines +- fixed online updater not checking every 7 days but dayly ### Removed - cleaned up duplicate code (thanks lmou523) [#3067](https://github.com/sandboxie-plus/Sandboxie/pull/3067) diff --git a/Sandboxie/install/Templates.ini b/Sandboxie/install/Templates.ini index 98d401ff..1ac587ae 100644 --- a/Sandboxie/install/Templates.ini +++ b/Sandboxie/install/Templates.ini @@ -3671,7 +3671,6 @@ OpenIpcPath=\RPC Control\keysvc [Template_Chrome_KB5027231_fix] Tmpl.Title=Chromium fix for Windows 11 with KB5027231 Tmpl.Class=WebBrowser -Tmpl.Scan=x #Tmpl.Scan=u #Tmpl.ScanUpd=KB5027231 Tmpl.ScanScript=if(system.version().major != 11) return false; return system.checkUpdates("KB5027231"); diff --git a/SandboxiePlus/QSbieAPI/Sandboxie/BoxedProcess.cpp b/SandboxiePlus/QSbieAPI/Sandboxie/BoxedProcess.cpp index 62d77031..2b4a4b92 100644 --- a/SandboxiePlus/QSbieAPI/Sandboxie/BoxedProcess.cpp +++ b/SandboxiePlus/QSbieAPI/Sandboxie/BoxedProcess.cpp @@ -39,6 +39,7 @@ struct SBoxedProcess CBoxedProcess::CBoxedProcess(quint32 ProcessId, class CSandBox* pBox) { m_pBox = pBox; + if (pBox) m_BoxName = pBox->GetName(); m = new SBoxedProcess; m->Handle = NULL; diff --git a/SandboxiePlus/SandMan/SandMan.cpp b/SandboxiePlus/SandMan/SandMan.cpp index 5022b121..dde3e0ca 100644 --- a/SandboxiePlus/SandMan/SandMan.cpp +++ b/SandboxiePlus/SandMan/SandMan.cpp @@ -2227,22 +2227,24 @@ void CSandMan::CheckCompat(QObject* receiver, const char* member) QElapsedTimer* timer = new QElapsedTimer(); timer->start(); - QString Script = theGUI->GetScripts()->GetScript("AppCompatibility"); - if (!Script.isEmpty()) { - CBoxEngine* pEngine = new CBoxEngine(this); - pEngine->RunScript(Script, "AppCompatibility.js"); // note: script runs asynchronously - QPointer pObj = receiver; // QPointer tracks lifetime of receiver - connect(pEngine, &CBoxEngine::finished, this, [pEngine, this, timer, pObj, member]() { + if (theConf->GetBool("Options/SmartAppCompatibility", true)) { + QString Script = theGUI->GetScripts()->GetScript("AppCompatibility"); + if (!Script.isEmpty()) { + CBoxEngine* pEngine = new CBoxEngine(this); + pEngine->RunScript(Script, "AppCompatibility.js"); // note: script runs asynchronously + QPointer pObj = receiver; // QPointer tracks lifetime of receiver + connect(pEngine, &CBoxEngine::finished, this, [pEngine, this, timer, pObj, member]() { - m_SbieTemplates->SetCheckResult(pEngine->GetResult().toStringList()); + m_SbieTemplates->SetCheckResult(pEngine->GetResult().toStringList()); - qDebug() << "Compatibility Check took" << timer->elapsed() << "ms"; - delete timer; - pEngine->deleteLater(); // script done - - if(pObj) QMetaObject::invokeMethod(pObj, member); - }); - return; + qDebug() << "Compatibility Check took" << timer->elapsed() << "ms"; + delete timer; + pEngine->deleteLater(); // script done + + if (pObj) QMetaObject::invokeMethod(pObj, member); + }); + return; + } } m_SbieTemplates->RunCheck();