Skip to content

Commit b55215d

Browse files
committed
fix: safer SuperFetch filters (2)
1 parent 87e2cfe commit b55215d

2 files changed

Lines changed: 29 additions & 12 deletions

File tree

src/playbook/Executables/AtlasDesktop/6. Advanced Configuration/Services/Superfetch/Disable SuperFetch.cmd

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,21 @@ setlocal EnableDelayedExpansion
2727

2828
:: Remove lower filters for rdyboost driver
2929
set "key=HKLM\SYSTEM\CurrentControlSet\Control\Class\{71a27cdd-812a-11d0-bec7-08002be2092f}"
30-
for /f "skip=1 tokens=3*" %%a in ('reg query !key! /v "LowerFilters"') do (set val=%%a)
31-
set val=!val:rdyboost\0=!
32-
set val=!val:\0rdyboost=!
33-
set val=!val:rdyboost=!
34-
reg add "!key!" /v "LowerFilters" /t REG_MULTI_SZ /d "!val!" /f > nul
30+
set "val="
31+
for /f "skip=1 tokens=3*" %%a in ('reg query "!key!" /v "LowerFilters" 2^>nul') do (
32+
set "val=%%a"
33+
if not "%%b"=="" set "val=!val! %%b"
34+
)
35+
if defined val (
36+
set val=!val:rdyboost\0=!
37+
set val=!val:\0rdyboost=!
38+
set val=!val:rdyboost=!
39+
if defined val (
40+
reg add "!key!" /v "LowerFilters" /t REG_MULTI_SZ /d "!val!" /f > nul
41+
) else (
42+
reg delete "!key!" /v "LowerFilters" /f > nul 2>&1
43+
)
44+
)
3545

3646
:: Disable ReadyBoost
3747
reg add "HKLM\SYSTEM\CurrentControlSet\Services\rdyboost" /v "Start" /t REG_DWORD /d "4" /f > nul
@@ -45,4 +55,4 @@ if "%~1"=="/silent" exit /b
4555

4656
echo Finished, please reboot your device for changes to apply.
4757
pause
48-
exit /b
58+
exit /b

src/playbook/Executables/AtlasDesktop/6. Advanced Configuration/Services/Superfetch/Enable SuperFetch (default).cmd

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,19 @@ setlocal EnableDelayedExpansion
2727

2828
:: Add lower filters for rdyboost driver
2929
set "key=HKLM\SYSTEM\CurrentControlSet\Control\Class\{71a27cdd-812a-11d0-bec7-08002be2092f}"
30-
for /f "skip=1 tokens=3*" %%a in ('reg query "!key!" /v "LowerFilters"') do (set val=%%a)
30+
set "val="
31+
for /f "skip=1 tokens=3*" %%a in ('reg query "!key!" /v "LowerFilters" 2^>nul') do (
32+
set "val=%%a"
33+
if not "%%b"=="" set "val=!val! %%b"
34+
)
3135

32-
echo "!val!" > nul | findstr /c:"rdyboost"
33-
if !errorlevel! NEQ 0 (
34-
set "val=!val!\0rdyboost"
35-
reg add "!key!" /v "LowerFilters" /t REG_MULTI_SZ /d "!val!" /f
36+
if not defined val (
37+
reg add "!key!" /v "LowerFilters" /t REG_MULTI_SZ /d "rdyboost" /f > nul
38+
) else (
39+
echo "!val!" | findstr /c:"rdyboost" > nul
40+
if !errorlevel! NEQ 0 (
41+
reg add "!key!" /v "LowerFilters" /t REG_MULTI_SZ /d "!val!\0rdyboost" /f > nul
42+
)
3643
)
3744

3845
:: Enable ReadyBoost
@@ -48,4 +55,4 @@ if "%~1"=="/silent" exit /b
4855

4956
echo Finished, please reboot your device for changes to apply.
5057
pause
51-
exit /b
58+
exit /b

0 commit comments

Comments
 (0)