[CMD] Show the executed command in the title, do not restore the old title when it is modified. CORE-12586

svn path=/trunk/; revision=73478
This commit is contained in:
Mark Jansen
2016-12-22 21:25:37 +00:00
parent 11e9d57a30
commit 21a0d64aa3
2 changed files with 10 additions and 3 deletions
+8 -3
View File
@@ -163,6 +163,7 @@ CRITICAL_SECTION ChildProcessRunningLock;
BOOL bUnicodeOutput = FALSE;
BOOL bDisableBatchEcho = FALSE;
BOOL bDelayedExpansion = FALSE;
BOOL bTitleSet = FALSE;
DWORD dwChildProcessId = 0;
HANDLE hIn;
HANDLE hOut;
@@ -314,7 +315,7 @@ Execute(LPTSTR Full, LPTSTR First, LPTSTR Rest, PARSED_COMMAND *Cmd)
{
TCHAR szFullName[MAX_PATH];
TCHAR *first, *rest, *dot;
TCHAR szWindowTitle[MAX_PATH];
TCHAR szWindowTitle[MAX_PATH], szNewTitle[MAX_PATH*2];
DWORD dwExitCode = 0;
TCHAR *FirstEnd;
TCHAR szFullCmdLine [CMDLINE_LENGTH];
@@ -377,7 +378,10 @@ Execute(LPTSTR Full, LPTSTR First, LPTSTR Rest, PARSED_COMMAND *Cmd)
return 1;
}
GetConsoleTitle (szWindowTitle, MAX_PATH);
GetConsoleTitle(szWindowTitle, ARRAYSIZE(szWindowTitle));
bTitleSet = FALSE;
_stprintf(szNewTitle, _T("%s - %s%s"), szWindowTitle, First, Rest);
SetConsoleTitle(szNewTitle);
/* check if this is a .BAT or .CMD file */
dot = _tcsrchr (szFullName, _T('.'));
@@ -475,7 +479,8 @@ Execute(LPTSTR Full, LPTSTR First, LPTSTR Rest, PARSED_COMMAND *Cmd)
/* Get code page if it has been changed */
InputCodePage= GetConsoleCP();
OutputCodePage = GetConsoleOutputCP();
SetConsoleTitle(szWindowTitle);
if (!bTitleSet)
SetConsoleTitle(szWindowTitle);
return dwExitCode;
}
+2
View File
@@ -13,6 +13,7 @@
#ifdef INCLUDE_CMD_TITLE
extern BOOL bTitleSet;
INT cmd_title (LPTSTR param)
{
@@ -27,6 +28,7 @@ INT cmd_title (LPTSTR param)
return 0;
}
bTitleSet = TRUE;
return SetConsoleTitle (param);
}