Skip to content

Commit

Permalink
TerminalShell (Windows): adjustments
Browse files Browse the repository at this point in the history
1. Don't pretty print CMD
2. Print conhost as Windows Console
  • Loading branch information
CarterLi committed Mar 25, 2024
1 parent 9681e17 commit 0a8056d
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 5 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Expand Up @@ -2,6 +2,10 @@

Changes:
* Use MS-DOS device name as mountFrom result, instead of useless GUID volume name (Windows, Disk)
* Some adjustments to Terminal detection (Terminal, Windows)
* Don't pretty print CMD
* Print conhost as Windows Console
* Don't detect `wininit` as Terminal

Bugfixes:
* Don't display 0.00 GHz (CPU, FreeBSD)
Expand Down
8 changes: 3 additions & 5 deletions src/detection/terminalshell/terminalshell_windows.c
Expand Up @@ -143,7 +143,7 @@ static void setShellInfoDetails(FFShellResult* result)
ffStrbufSetS(&result->prettyName, "Windows PowerShell ISE");
else if(ffStrbufIgnCaseEqualS(&result->prettyName, "cmd"))
{
ffStrbufClear(&result->prettyName);
ffStrbufSetS(&result->prettyName, "CMD");

FF_AUTO_CLOSE_FD HANDLE snapshot = NULL;
while(!(snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, result->pid)) && GetLastError() == ERROR_BAD_LENGTH) {}
Expand All @@ -156,15 +156,13 @@ static void setShellInfoDetails(FFShellResult* result)
{
if(wcsncmp(module.szModule, L"clink_dll_", strlen("clink_dll_")) == 0)
{
ffStrbufAppendS(&result->prettyName, "CMD (with Clink ");
ffStrbufAppendS(&result->prettyName, " (with Clink ");
getProductVersion(module.szExePath, &result->prettyName);
ffStrbufAppendC(&result->prettyName, ')');
break;
}
}
}
if(result->prettyName.length == 0)
ffStrbufAppendS(&result->prettyName, "Command Prompt");
}
else if(ffStrbufIgnCaseEqualS(&result->prettyName, "nu"))
ffStrbufSetS(&result->prettyName, "nushell");
Expand Down Expand Up @@ -345,7 +343,7 @@ static void setTerminalInfoDetails(FFTerminalResult* result)
: "Windows Terminal"
);
else if(ffStrbufIgnCaseEqualS(&result->prettyName, "conhost"))
ffStrbufSetStatic(&result->prettyName, "Console Window Host");
ffStrbufSetStatic(&result->prettyName, "Windows Console");
else if(ffStrbufIgnCaseEqualS(&result->prettyName, "Code"))
ffStrbufSetStatic(&result->prettyName, "Visual Studio Code");
else if(ffStrbufIgnCaseEqualS(&result->prettyName, "explorer"))
Expand Down

0 comments on commit 0a8056d

Please sign in to comment.