@@ -266,7 +266,7 @@ BOOL CALLBACK DlgMain(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
266266 {
267267 if (index != LB_ERR)
268268 {
269- DWORD CPUs[MAX_CPUS] = { 0 };
269+ DWORD CPUs[MAX_CPUS] = {0 };
270270 DWORD_PTR dwProcessAffinityMask = GetProcessAffinity (dwProcessId);
271271 if (dwProcessAffinityMask != 0 )
272272 {
@@ -301,7 +301,6 @@ BOOL CALLBACK DlgMain(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
301301 }
302302
303303 if (!OneProcessorSelected) {
304- RegKeyDelete (HKEY_CURRENT_USER, registryKey, " AffinityMask" );
305304 break ;
306305 }
307306
@@ -347,10 +346,16 @@ BOOL CALLBACK DlgMain(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
347346 if (GetProcessPriorityBoost (hProcess, &pDisablePriorityBoost)) {
348347 if (pDisablePriorityBoost == FALSE ) {
349348 SetProcessPriorityBoost (hProcess, TRUE );
350- break ;
349+ if (RegKeyQuery (HKEY_CURRENT_USER, registryKey, " PriorityBoost" ) != nullptr ) {
350+ RegKeySet (HKEY_CURRENT_USER, registryKey, " PriorityBoost" , " 0" );
351+ }
352+ } else {
353+ SetProcessPriorityBoost (hProcess, FALSE );
354+ if (RegKeyQuery (HKEY_CURRENT_USER, registryKey, " PriorityBoost" ) != nullptr ) {
355+ RegKeySet (HKEY_CURRENT_USER, registryKey, " PriorityBoost" , " 1" );
356+ }
351357 }
352358 }
353- SetProcessPriorityBoost (hProcess, FALSE );
354359 }
355360
356361 }
@@ -591,6 +596,10 @@ BOOL CALLBACK DlgMain(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
591596
592597 case IDM_CPU_PRIORITY_BOOST_SAVE:
593598 {
599+ if (RegKeyQuery (HKEY_CURRENT_USER, registryKey, " PriorityBoost" ) != nullptr ) {
600+ RegKeyDelete (HKEY_CURRENT_USER, registryKey, " PriorityBoost" );
601+ break ;
602+ }
594603
595604 HANDLE hProcess = OpenProcess (PROCESS_QUERY_LIMITED_INFORMATION, FALSE , dwProcessId);
596605 BOOL pDisablePriorityBoost;
0 commit comments