Seu código funciona perfeitamente na minha máquina.
Eu criei um dir de teste com seu test.bat e dois diretórios de teste contendo um x.bat:
C:\tmp5348>dir /s /b
C:\tmp5348\f1
C:\tmp5348\f2
C:\tmp5348\test.bat
C:\tmp5348\f1\x.bat
C:\tmp5348\f2\x.bat
Esses arquivos contêm:
C:\tmp5348>type test.bat
@echo off
for /r /d %%x in ("*") do (
pushd "%%x"
call "x.bat"
popd
)
pause
C:\tmp5348>type f1\x.bat
echo "I'm f1"
C:\tmp5348>type f2\x.bat
echo "I'm f2"
Agora, execute:
C:\tmp5348>test.bat
"I'm f1"
"I'm f2"
Press any key to continue . . .
Funciona bem para mim. Eu diria que o problema está no x.bat nos subdiretórios. Claro que você não codificou "folder1" em todos eles em algum lugar?