Add new checks for vkconfig, and detect after startup

* We check every couple of seconds for the vkconfig file (and then stop checking
  after warning) so that users are more likely to see the warning.
This commit is contained in:
baldurk
2025-10-20 12:19:14 +01:00
parent 4db8616ec4
commit 466a11100c
2 changed files with 50 additions and 28 deletions
-28
View File
@@ -574,34 +574,6 @@ int main(int argc, char *argv[])
GUIInvoke::init();
{
QString homePath = QStandardPaths::writableLocation(QStandardPaths::HomeLocation);
#if defined(Q_OS_WIN32)
QString fn = homePath + lit("/AppData/Local/LunarG/vkconfig/override/");
#else
QString fn = homePath + lit("/.local/share/vulkan/implicit_layer.d/");
#endif
// documentation is unclear, mentions both these files so check both just in case
QFileInfo vkconfigcheck1(fn + lit("VkLayerOverride.json"));
QFileInfo vkconfigcheck2(fn + lit("VkLayer_Override.json"));
// lower case might be used on linux
QFileInfo vkconfigcheck3(fn + lit("VkLayer_override.json"));
if((vkconfigcheck1.exists() && vkconfigcheck1.isFile()) ||
(vkconfigcheck2.exists() && vkconfigcheck2.isFile()) ||
(vkconfigcheck3.exists() && vkconfigcheck3.isFile()))
{
RDDialog::warning(
NULL, tr("vkconfig detected - possible incompatibility"),
tr("Configuration from 'vkconfig' tool detected.\n\n"
"This program has caused problems in the past and it is \n"
"strongly recommended that you disable it while using RenderDoc.\n\n"
"If this program is not active check the path below for any leftover files:\n\n%1")
.arg(fn));
qInfo() << "vkconfig detected and warned";
}
}
{
GlobalEnvironment env;
#if defined(RENDERDOC_PLATFORM_LINUX)