Commit Graph

242 Commits

Author SHA1 Message Date
Frédéric Delanoy 5e3cb1867b cmd: Infer handle type from handle value in WCMD_fgets and WCMD_ReadAndParseLine. 2011-10-06 16:46:41 -05:00
Frédéric Delanoy 63e11558b6 cmd: Improve handle type recognition in WCMD_ReadFile. 2011-10-05 16:59:48 -05:00
Frédéric Delanoy aee397a317 cmd: Output error messages to stderr instead of stdout where appropriate. 2011-10-03 09:45:43 -05:00
Frédéric Delanoy 29b57ca82d cmd: Get rid of unused parameter in WCMD_ReadFile. 2011-09-28 17:29:24 +02:00
Frédéric Delanoy d6f4f7308a cmd: Avoid checking whether we're in console mode for every read. 2011-09-28 17:29:10 +02:00
Frédéric Delanoy fbddecab77 cmd: Add WCMD_output_stderr function to output error messages to stderr. 2011-09-26 22:42:01 +02:00
Frédéric Delanoy e5565a6d64 cmd: Use helper function to return file io buffer. 2011-09-26 22:42:01 +02:00
Frédéric Delanoy a536004f34 cmd: Improve WCMD_volume documentation. 2011-09-23 12:43:53 +02:00
Frédéric Delanoy c4db72f50e cmd: verify_mode has BOOL type instead of int. 2011-09-16 17:24:19 +02:00
Frédéric Delanoy b3561bf82e cmd: echo_mode has BOOL type instead of int. 2011-09-16 17:24:18 +02:00
Frédéric Delanoy 9bf515974d cmd: Make some variables static. 2011-09-14 17:27:20 +02:00
Christian Costa faa23d2a16 cmd: Move externals list at the same place as the builtins one so it's easier to known how a command is implemented. 2011-09-12 11:10:53 +02:00
Frédéric Delanoy 4c3c2b121e cmd: Backup echo mode before running external batch file. 2011-09-09 16:09:58 +02:00
Frédéric Delanoy 3627c28958 cmd: Add an output parameter to WCMD_parameter to point to the end of the extracted param, if requested. 2011-09-08 20:08:07 +02:00
Christian Costa 4aa865ed76 cmd: Remove attrib from builtins list. 2011-09-07 11:35:58 +02:00
Christian Costa 7b41ffbf61 attrib: Move implementation from cmd.exe to the standalone command. 2011-09-06 13:25:50 +02:00
Frédéric Delanoy 54c2f6491d cmd: Get rid of obsolete autoexec.bat handling code. 2011-09-06 12:23:56 +02:00
Frédéric Delanoy c1c76d279e cmd: Add WCMD_output_asis_stderr function. 2011-08-30 16:55:46 +02:00
Frédéric Delanoy 93a68fa659 cmd: Avoid reading garbage when looking for redirection handle. 2011-08-29 13:55:47 +02:00
Frédéric Delanoy bbdaed2f33 cmd: Fix redirection handle parsing. 2011-08-29 13:55:41 +02:00
Frédéric Delanoy ef70d88be0 cmd: Make some WCHAR arrays static. 2011-08-26 11:32:35 +02:00
Frédéric Delanoy eda33f22ff cmd: Fix if/else tab handling. 2011-08-25 14:51:02 +02:00
Frédéric Delanoy 6d3fd3abcd cmd: Fix REM tab handling. 2011-08-25 14:50:51 +02:00
Frédéric Delanoy f37ab586d8 cmd: Skip tabs as well as spaces in WCMD_skip_leading_spaces. 2011-08-25 14:50:38 +02:00
Frédéric Delanoy 7b125126a7 cmd: Fix FOR tab handling. 2011-08-25 14:50:31 +02:00
Frédéric Delanoy 20fa3fe802 cmd: Fix FOR tab handling. 2011-08-24 14:01:13 +02:00
Frédéric Delanoy ff501904a7 cmd: Constify some function parameters. 2011-08-23 16:53:50 +02:00
Frédéric Delanoy bb47576f59 cmd: Rename WCMD_strtrim_leading_spaces to WCMD_skip_leading_spaces to better reflect its purpose. 2011-08-23 16:53:50 +02:00
Frédéric Delanoy 0758390607 cmd: Clarify some trace messages. 2011-08-23 16:53:50 +02:00
Frédéric Delanoy d1731eb98a cmd: Use CSTR_* instead of hardcoded values as result of CompareStringW. 2011-08-23 16:53:49 +02:00
Frédéric Delanoy 71a237d478 cmd: Fix handling of lines starting with echo. or echo:. 2011-08-05 16:41:14 +02:00
Dan Kegel 15ce9a5784 cmd: mkdir: Handle multiple arguments. 2011-08-03 17:44:53 +02:00
Frédéric Delanoy 8b73720d4e cmd: Fix some comments. 2011-07-27 12:28:26 +02:00
Frédéric Delanoy f43297f989 cmd: Do not show prompt when echo mode is off. 2011-07-15 17:07:46 +02:00
Frédéric Delanoy 123d5d0d60 cmd: Output a empty line before version in VER. 2011-07-15 17:03:17 +02:00
Dan Kegel 32ea7d1f2e cmd: WCMD_delete: fix /s for dirnames containing spaces, add test. 2011-06-02 17:24:58 +02:00
Dan Kegel 1857a05996 cmd: Don't read past end of thisVar in WCMD_expand_envvar (valgrind). 2011-05-26 15:23:57 +02:00
Detlef Riekenberg 7045e478a8 cmd: Add CHOICE builtin with DOS6 to XP commandline parameter. 2010-12-20 12:47:41 +01:00
Alexandre Goujon 4cd2a0e542 cmd: Add a space at the end of the first echo'ed batch line. 2010-11-08 18:13:36 +01:00
Michael Stefaniuc 71e647fe51 cmd: Don't treat all command lines with '/?' as builtin commands. 2010-06-22 11:22:55 +02:00
Yann Droneaud 727df7a2ef cmd: Fixed uninitialised field in WCMD_addCommand() (Valgrind). 2010-03-15 13:42:08 +01:00
Arjun Comar a607f53779 cmd: Fix cmd to take /? as a help parameter. 2010-03-04 17:31:05 +01:00
Paul Vriens 4064efdc27 cmd: Fix a memory leak (Valgrind). 2010-02-23 12:06:51 +01:00
Dan Kegel b6e8e13599 cmd: Fix echoing of multiline commands. 2010-01-04 11:41:28 +01:00
Dan Kegel 27235ecb65 cmd: Echoed prompts are preceded by a blank line. 2010-01-04 11:41:28 +01:00
Andrew Nguyen f06cb3e6c0 cmd: Set the PROMPT environment variable on startup. 2009-12-31 12:12:18 +01:00
Austin English cc72c4d346 cmd: Use DOS newlines, not UNIX. 2009-12-23 14:27:31 +01:00
Alexandre Julliard 79b00726f2 cmd: Use the explicit name for all A/W function. 2009-12-09 18:52:40 +01:00
Marcus Meissner f62218fc66 cmd: Break out of the argument scan loop (Coverity). 2009-12-04 14:34:58 +01:00
Peter Dons Tychsen a78ccf1160 cmd: Fix handling of quotes when line includes redirections and/or pipes. 2009-10-08 14:00:00 +02:00
André Hentschel 765d9a1411 wcmd: Ignore start and end quotes. 2009-08-29 16:48:52 +02:00
Francois Gouget 0c01b71a4e cmd: Replace malloc() with HeapAlloc(). 2009-06-15 13:42:30 +02:00
Francois Gouget c48e5e048f cmd: Introduce a WCMD_strsubstW() function to simplify string substitutions. 2009-06-15 13:42:29 +02:00
James Hawkins 474276d569 cmd: Fix a memory leak (Coverity 904). 2009-03-23 18:21:05 +01:00
Diaa Sami 8ea1a12ed6 cmd: Fixed a number of buffer overflows. 2009-03-03 14:03:48 +01:00
Erich Hoover 4691cc4f85 wcmd: Properly cleanup redirects when there are no in/out/error pipes. 2009-02-12 11:54:02 +01:00
Erich Hoover 8defde719a wcmd: Fix redirecting a pipe to another pipe. 2009-01-13 16:39:18 +01:00
Erich Hoover 423929ad10 wcmd: Handle batch scripts containing quotes within quotes. 2009-01-13 16:39:13 +01:00
Francois Gouget e46d25a661 cmd: Make some functions static. 2009-01-06 10:09:37 +01:00
Francois Gouget 6b16d0229d cmd: WCMD_strtrim_trailing_spaces() is unused so remove it. 2009-01-06 10:09:37 +01:00
Alexandre Julliard 854c9b2089 cmd.exe: Don't use wvsprintf on sysv-style varargs, use a libwine function instead. 2009-01-03 11:38:26 +01:00
Alexandre Julliard aa6f1c730a cmd: Don't include time.h before winsock.h to avoid conflicts. 2008-12-31 20:05:33 +01:00
Francois Gouget 3d070ff8a6 cmd: Reorder some functions to avoid forward declarations. 2008-12-31 12:28:02 +01:00
Francois Gouget 3154768a94 cmd: Make WCMD_DumpCommands() static. 2008-12-15 12:25:00 +01:00
Michael Stefaniuc cf8571fed0 cmd: Remove some superfluous casts. 2008-12-04 12:08:24 +01:00
Lei Zhang e6bce797d3 cmd: Check the return value from HeapAlloc. 2008-07-30 14:38:51 +02:00
Francois Gouget 304b415284 Assorted spelling fixes. 2008-03-19 11:21:27 +01:00
Jason Edmeades 4492334762 cmd.exe: Support cd .. when saving current directory. 2008-03-04 11:54:21 +01:00
Jason Edmeades 84f02a6ab2 cmd.exe: Fix pipes. 2008-03-04 11:54:21 +01:00
Jason Edmeades 52e8f6f69b cmd.exe: Fix running programs from root of drive. 2008-03-04 11:54:21 +01:00
Marcus Meissner 53f5d67364 cmd: Include <time.h> for time(). 2008-01-22 12:00:42 +01:00
Francois Gouget 44b52b128c Assorted spelling fixes. 2008-01-16 12:48:29 +01:00
Alexander Nicolaysen Sørnes 5d9f73eaef cmd: Seed the random number generator. 2008-01-10 11:38:21 +01:00
Lance Jackson d56217e98e cmd: Fix some unclosed file and registry handles. 2008-01-04 12:12:51 +01:00
Francois Gouget b2bc712323 Assorted spelling fixes. 2007-09-27 20:12:53 +02:00
Jason Edmeades 1ee75382c7 cmd.exe: Fix redirect ordering on a command line. 2007-09-12 12:40:16 +02:00
Jason Edmeades bcaf4fb43f cmd.exe: Add suport for if 1==1 echo yes. 2007-09-12 12:39:41 +02:00
Jason Edmeades b69241124e cmd.exe: Expand for variables at last with tilda modifications. 2007-09-12 12:39:21 +02:00
Jason Edmeades 7fce92ea54 cmd.exe: Redirection for external programs was broken by the conversion to unicode. 2007-08-13 12:01:46 +02:00
Jason Edmeades 09969e8de1 cmd.exe: Wait when launching GUI pgms in batch. 2007-08-10 12:58:17 +02:00
Jason Edmeades e34f58ad78 cmd: Remove some debug code. 2007-07-30 15:01:53 +02:00
Anatoly Lyutin 2364a87d1b cmd: Use toupperW instead of toupper. 2007-07-20 11:44:53 +02:00
Paul Vriens 61d8402fe2 programs/cmd: Do the assignment after the return to avoid a missing free() (Coverity). 2007-07-12 13:00:32 +02:00
Francois Gouget a3317a5c01 Assorted spelling fixes. 2007-07-05 19:56:34 +02:00
Jason Edmeades 54d890ca1e cmd.exe: Fix FOR so it works as 'well' as before. 2007-06-18 14:24:59 +02:00
Jason Edmeades d2e7b401a2 cmd.exe: Support IF..ELSE processing tolerate multiline/part lines. 2007-06-18 14:24:23 +02:00
Jason Edmeades 345cb89175 cmd.exe: Correctly parse IF ELSE plus multipart/multiline. 2007-06-18 14:24:01 +02:00
Jason Edmeades d4afe81c3f cmd.exe: Parse multipart FOR statements. 2007-06-18 14:23:42 +02:00
Jason Edmeades d2474dece3 cmd.exe: EXIT /b skips any residual commands. 2007-06-18 14:23:23 +02:00
Jason Edmeades de4c6970a3 cmd.exe: Lines starting with REM ignore any multiline/part characters. 2007-06-18 14:23:14 +02:00
Jason Edmeades 929a92f3c4 cmd.exe: GOTO throws away any preloaded multi part/line command. 2007-06-18 14:22:57 +02:00
Jason Edmeades 8f12d8bde3 cmd.exe: Pass the command list through so it is available to built in commands. 2007-06-18 14:22:43 +02:00
Jason Edmeades aad1d8ce24 cmd.exe: Pass command structure into WCMD_pipe, not command line itself. 2007-06-18 14:22:26 +02:00
Jason Edmeades a88a6c802a cmd.exe: Add basic support for && and (...) syntax. 2007-06-18 14:22:07 +02:00
Jason Edmeades 7e9d498d1e cmd.exe: Add support for cmd.exe /u (Unicode from internal pgms). 2007-06-15 13:26:42 +02:00
Jason Edmeades 81c1aa14d5 cmd.exe: Change from main to wmain. 2007-06-04 14:47:36 +02:00
Jason Edmeades c4885bc46f cmd.exe: Fix handling of malformed environment variable expansion. 2007-06-04 14:47:17 +02:00
Jason Edmeades b8aa5fc586 cmd.exe: Convert cmd to Unicode. 2007-06-04 14:44:46 +02:00
Jason Edmeades 398e710376 cmd.exe: Handle command line as Unicode. 2007-06-04 14:14:57 +02:00
Jason Edmeades 926da13e56 cmd.exe: Move writing to console into a single function. 2007-06-04 14:11:50 +02:00
Jason Edmeades 5cc492c783 cmd.exe: Move English constants into NLS files. 2007-06-04 14:10:04 +02:00
Jason Edmeades 68b11d1290 cmd.exe: Support for DEL filename /s. 2007-04-24 11:53:13 +02:00
Jason Edmeades ce87522f84 cmd.exe: Implement a basic 'more'.
This implements a basic more, eg 'dir | more' or 'more file.c'
but it does not support the flags or keys which can control it.
Basically its not worth implementing those, as in some modes
we cannot read a single key, we have to wait for <enter> anyway.
2007-04-16 12:24:49 +02:00
Jason Edmeades 53c05cb534 cmd.exe: Fix regression when launching a fully qualified program. 2007-04-12 16:38:45 +02:00
Jason Edmeades fc8a9a20c6 cmd.exe: Make dir support multiple parameters. 2007-04-06 12:31:08 +02:00
Jason Edmeades 5704b4bec9 cmd.exe: Attempt to launch pgm even if fails to locate it. 2007-04-06 12:31:08 +02:00
Jason Edmeades b573f68b36 cmd.exe: Only search for supplied command as-is if it includes an extension.
Files with no extensions cannot be run as-is. This enables a directory
with 'fred' and 'fred.bat' to correctly run fred.bat if just fred is
executed.
2007-04-06 12:31:08 +02:00
Alexander Farber 6ae5814623 cmd: Enlarge max. length of PATH variable. 2007-03-29 21:02:17 +02:00
Alexandre Julliard 7c1418ae2c cmd: Fix a compiler warning. 2007-03-16 13:02:06 +01:00
Jason Edmeades a801995cdb cmd.exe: Add 2>&1 and 1>&2 support. 2007-03-13 12:02:40 +01:00
Jason Edmeades 4ef2f8ba1a cmd.exe: Add TYPE multiple file support. 2007-03-13 12:02:29 +01:00
Jason Edmeades 085c0f4a3a cmd.exe: Add support for stderr redirection to a file. 2007-03-13 12:02:17 +01:00
Jason Edmeades d0db751e0c cmd.exe: Save initial working directory. 2007-03-13 11:58:38 +01:00
Jason Edmeades 9e041c6bc9 cmd.exe: Add support for FTYPE. 2007-03-13 11:58:19 +01:00
Francois Gouget 540d8186df cmd: Fix compilation on systems that don't support nameless unions. 2007-03-12 12:08:33 +01:00
Jason Edmeades 612dc9d35d cmd.exe: Support SHIFT /n option. 2007-03-08 13:38:27 +01:00
Jason Edmeades 2b03d7d75f cmd.exe: Add support for working directories per drive. 2007-03-08 13:36:28 +01:00
Jason Edmeades e5a26bc24d cmd.exe: Support PUSHD with wildcards. 2007-03-08 13:34:32 +01:00
Jason Edmeades eb6d084fd6 cmd.exe: Support unquoted directories in CD command. 2007-03-08 13:33:10 +01:00
Jason Edmeades b9265bc3a9 cmd.exe: Support default colours for wineconsole. 2007-03-08 13:32:20 +01:00
Jason Edmeades 00ad4c5317 cmd.exe: Add cmd.exe /T option. 2007-03-08 13:30:27 +01:00
Jason Edmeades e37463fab5 cmd.exe: Add COLOR command. 2007-03-08 13:30:20 +01:00
Jason Edmeades 9e518dc79d cmd.exe: Fix stdio redirects. 2007-03-05 12:59:12 +01:00
Jason Edmeades a97d1200f3 cmd.exe: Add support for del file1 file2. 2007-03-05 12:58:07 +01:00
Jason Edmeades 79aa1a009f cmd.exe: Add ASSOC command. 2007-03-05 12:56:48 +01:00
Jason Edmeades 8049ae1af8 cmd.exe: PROMPT option to show pushd levels. 2007-03-05 12:56:09 +01:00
Jason Edmeades 00ba810dbf cmd.exe: Additional PROMPT options. 2007-03-05 12:56:04 +01:00
Jason Edmeades 0efa91de15 cmd.exe: Support rd dir1 dir2. 2007-03-05 12:55:47 +01:00
Alexandre Julliard abfe105c2f cmd: Fix silly local variables indentation that breaks diff -p. 2007-03-01 12:43:19 +01:00
Alexander Farber fdeb6d5ae5 cmd: Fixed 3 buffer overflows when fetching environment variables. 2007-03-01 12:38:28 +01:00
Jason Edmeades 3232e61b94 cmd.exe: Locate programs more correctly. 2007-02-27 12:29:33 +01:00
Jason Edmeades 54ba046ad5 cmd.exe: Allow special named env vars to be modified. 2007-02-27 12:26:48 +01:00
Jason Edmeades 3ab449c96a cmd.exe: Add special SET modifiers. 2007-02-26 13:52:23 +01:00
Jason Edmeades e8fa5df394 cmd.exe: Add %random% special name support. 2007-02-26 13:50:36 +01:00
Jason Edmeades 98ae8a6941 cmd.exe: Unify parsing and expansion. 2007-02-26 13:50:21 +01:00
Jason Edmeades 327d7ef9e6 cmd.exe: Add support for call :label and goto :label. 2007-02-26 13:49:21 +01:00
Jason Edmeades 365f86fd7e cmd.exe: Add pushd and popd. 2007-02-26 13:45:48 +01:00
Alexandre Julliard cdca32c12e cmd: Remove execute permission on source files. 2007-02-23 12:51:55 +01:00
Jason Edmeades 938719062d cmd.exe: Add support for %ERRORLEVEL% in both batch and cmd line. 2007-02-21 11:48:06 +01:00
Jason Edmeades 3bdb64149b cmd.exe: Support return code if fail to launch program. 2007-02-21 11:47:11 +01:00
Jason Edmeades c36664891c cmd.exe: Support exit [/b] returncode. 2007-02-21 11:42:43 +01:00
Dan Kegel 39857443e4 programs/wcmd: Rename to programs/cmd. 2006-09-07 15:08:44 +02:00