File no-winemenubuilder.patch of Package wine
I don't want winemenubuilder to even try to run without me asking.
diff --git a/loader/wine.inf.in b/loader/wine.inf.in
index 167f8e1..56fc050 100644
--- a/loader/wine.inf.in
+++ b/loader/wine.inf.in
@@ -1343,7 +1343,6 @@ StartType=3
ErrorControl=1
[Services]
-HKLM,%CurrentVersion%\RunServices,"winemenubuilder",2,"%11%\winemenubuilder.exe -a -r"
HKLM,"System\CurrentControlSet\Services\Dnscache\Parameters",,16
HKLM,"System\CurrentControlSet\Services\Eventlog\Application",,16
HKLM,"System\CurrentControlSet\Services\Eventlog\System","Sources",0x10000,""
diff --git a/programs/winemenubuilder/winemenubuilder.c b/programs/winemenubuilder/winemenubuilder.c
index e881408..c7e97c0 100644
--- a/programs/winemenubuilder/winemenubuilder.c
+++ b/programs/winemenubuilder/winemenubuilder.c
@@ -2864,6 +2864,22 @@ static BOOL associations_enabled(void)
return ret;
}
+static BOOL allowed_to_run(void)
+{
+ BYTE buf[32];
+ HKEY hkey;
+ BOOL ret = FALSE;
+ DWORD len;
+
+ if (RegOpenKeyW(HKEY_CURRENT_USER, L"Software\\Wine", &hkey) == ERROR_SUCCESS)
+ {
+ if (!RegQueryValueExA(hkey, "AllowMenuBuilder", NULL, NULL, buf, &len))
+ ret = IS_OPTION_TRUE(buf[0]);
+ RegCloseKey(hkey);
+ }
+ return ret;
+}
+
/***********************************************************************
*
* wWinMain
@@ -2876,6 +2892,9 @@ int PASCAL wWinMain (HINSTANCE hInstance, HINSTANCE prev, LPWSTR cmdline, int sh
HRESULT hr;
int ret = 0;
+ if (!allowed_to_run())
+ return 0;
+
if (!init_xdg())
return 1;