Commit Graph

720 Commits

Author SHA1 Message Date
Piotr Caban 743a42b259 cmd: Fixed memory leak in WCMD_run_program. 2013-03-01 18:03:30 +01:00
Francois Gouget a5ff4b8088 Assorted spelling fixes. 2013-01-29 12:13:04 +01:00
Piotr Caban e727e44dfa cmd: Even if FindExecutable fails wait for process to finish in non-interactive mode. 2013-01-17 12:15:28 +01:00
Jason Edmeades 0b00b717b9 cmd: Add beginnings of support for delayed expansion. 2013-01-07 11:15:23 +01:00
Jason Edmeades 3735bf6af5 cmd: Avoid division by zero in set /a with %. 2013-01-07 11:14:24 +01:00
Francois Gouget f963f93964 Assorted spelling fixes. 2013-01-07 11:10:40 +01:00
Ann and Jason Edmeades 95279b87e4 cmd: Add set /a support. 2012-12-21 12:00:19 +01:00
Jason Edmeades 51c4411a15 cmd: Add more tests for set /a. 2012-12-21 11:45:31 +01:00
Jason Edmeades 836f3e4c29 cmd: Convert the set /a tests to validate better. 2012-12-21 11:45:18 +01:00
Frédéric Delanoy 5188f08bf4 cmd: Remove dead assignments (clang). 2012-12-20 12:00:45 +01:00
Frédéric Delanoy 40a69ae868 cmd: Remove dead assignment (clang). 2012-12-19 14:38:59 +01:00
Jason Edmeades 64d7151669 cmd: Wait for command to complete when spawned through cmd /c. 2012-11-30 11:44:09 +01:00
Jason Edmeades fc847f868c cmd: Change what 'ver' issues. 2012-11-28 20:14:54 +01:00
Jason Edmeades d71f5c9483 cmd: Prevent overflow for long command string. 2012-11-27 19:45:38 +01:00
Jason Edmeades d16f4e700b cmd: Add support for NUL in copy. 2012-11-20 11:53:15 +01:00
Jason Edmeades 2e92853091 cmd: Prevent external env vars causing tests to fail. 2012-11-20 11:53:10 +01:00
Jason Edmeades 47b35d5545 cmd: Add support for tokens= (for /f). 2012-11-20 11:46:40 +01:00
Jacek Caban 08c17ada57 cmd: Added HeapFree wrapper. 2012-11-16 11:40:36 +01:00
Jacek Caban c6d24089db cmd: Make allocation unfailable. 2012-11-15 21:21:53 +01:00
Frédéric Delanoy 250ce222b9 cmd/tests: Simplify 'if' comparison tests. 2012-11-07 11:57:51 +01:00
Jason Edmeades ae4571fb79 cmd: Fix for loops within for loops. 2012-11-06 16:02:41 +01:00
Jason Edmeades e26c2a5691 attrib: Add support for attrib /s. 2012-11-06 16:02:40 +01:00
Jason Edmeades 8e575940ad attrib: Support relative paths as args. 2012-11-06 16:02:39 +01:00
Jason Edmeades 7c3f3d09dd cmd: Don't overflow parameter length when copying substring. 2012-11-06 16:02:38 +01:00
Francois Gouget d55bb4497f Assorted spelling fixes. 2012-11-05 11:30:30 +01:00
Frédéric Delanoy 5108b18940 cmd: Fix some leaks (coverity). 2012-11-01 15:54:40 +01:00
Frédéric Delanoy 1d3f679ef1 cmd: Avoid handle leaks (coverity). 2012-10-30 19:14:37 +01:00
Francois Gouget 5f86884771 cmd: Make WCMD_forf_getinputhandle() static. 2012-10-29 10:47:02 +01:00
Frédéric Delanoy 16d5f457e2 cmd: Display a clearer error message for not found commands. 2012-10-26 16:42:34 +02:00
Frédéric Delanoy 90c6f57fa9 cmd: Add support for GTR comparison operator in if statements. 2012-10-26 12:01:45 +02:00
Frédéric Delanoy 73995c71e0 cmd: Add support for GEQ comparison operator in if statements. 2012-10-26 12:01:40 +02:00
Frédéric Delanoy 80f8d49b07 cmd: Add support for NEQ comparison operator in if statements. 2012-10-26 12:01:36 +02:00
Frédéric Delanoy 14cd4151a9 cmd: Add support for EQU comparison operator in if statements. 2012-10-26 12:01:31 +02:00
Frédéric Delanoy 78af04f427 cmd: Add support for LEQ comparison operator in if statements. 2012-10-26 12:01:25 +02:00
Frédéric Delanoy 154710a093 cmd: Add support for LSS comparison operator in if statements. 2012-10-26 12:01:18 +02:00
Frédéric Delanoy 17607b8020 cmd: Avoid using strstr to match == operator in WCMD_if. 2012-10-26 12:00:44 +02:00
Frédéric Delanoy dd13954424 cmd: Move common error reporting code in WCMD_if. 2012-10-26 12:00:41 +02:00
Frédéric Delanoy cee1652e61 cmd: Get rid of longer needed 'end' parameter in WCMD_parameter. 2012-10-26 11:59:58 +02:00
Frédéric Delanoy 517ed44396 cmd: Correctly set the 'raw' parameter in calls to WCMD_parameter in WCMD_if. 2012-10-26 11:59:54 +02:00
Jason Edmeades 51b0d941d0 cmd: Add for /f delims= support. 2012-10-24 11:30:43 +02:00
Jason Edmeades a45301cb93 cmd: Strip quotes from for /f string before attempting to parse it. 2012-10-24 11:30:40 +02:00
Jason Edmeades 182c5459b0 cmd: Correct for /f string and command set handling. 2012-10-24 11:30:36 +02:00
Jason Edmeades 9171fd1454 cmd: Add support for usebackq (for /f). 2012-10-24 11:30:11 +02:00
Jason Edmeades 293da2d06c cmd: Implement support for for /f eol=c option. 2012-10-24 11:29:43 +02:00
Jason Edmeades a3688948d0 cmd: Use a common function for the string parsing in for /f. 2012-10-24 11:29:22 +02:00
Jason Edmeades 84ecf34c2c cmd: Refactor building a list of directories out of WCMD_for. 2012-10-24 11:29:13 +02:00
Jason Edmeades d64298df99 cmd: Add support parsing for /f options and implement skip. 2012-10-24 11:29:06 +02:00
Frédéric Delanoy c5faceabd2 cmd/tests: Add tests for mixed number/stringified numbers comparisons in "if" statements. 2012-10-23 12:10:56 +02:00
Frédéric Delanoy 5888ad3537 cmd/tests: Add tests for GTR comparison operator in "if" statements. 2012-10-23 12:10:52 +02:00
Frédéric Delanoy 43f5471cba cmd/tests: Add tests for GEQ comparison operator in "if" statements. 2012-10-23 12:10:49 +02:00
Frédéric Delanoy 8e3227c824 cmd/tests: Add tests for NEQ comparison operator in "if" statements. 2012-10-23 12:10:45 +02:00
Frédéric Delanoy a0a61cb592 cmd/tests: Add tests for EQU comparison operator in "if" statements. 2012-10-23 12:10:41 +02:00
Frédéric Delanoy ac52924d44 cmd/tests: Add tests for LEQ comparison operator in "if" statements. 2012-10-23 12:10:38 +02:00
Frédéric Delanoy e3b5b6fd14 cmd/tests: Add tests for LSS comparison operator in "if" statements. 2012-10-23 12:10:32 +02:00
Akihiro Sagawa 8daef1649b cmd: Properly handle multibyte characters in batch files. 2012-10-22 12:23:26 +02:00
Francois Gouget ed9e745580 Assorted spelling tweaks and fixes. 2012-10-22 12:21:55 +02:00
Jason Edmeades 3c05818515 cmd: Add support for calling a built in command. 2012-10-17 11:59:34 +02:00
Jason Edmeades 9f83165efb cmd: Rename parameter passed to builtin calls. 2012-10-17 11:57:35 +02:00
Jason Edmeades dccccfc273 cmd: Handle very odd delimiter support for command line. 2012-10-17 11:57:23 +02:00
Jason Edmeades f45f75ca7d cmd: %* expands to first non-whitespace delimiter of first arg. 2012-10-16 11:45:13 +02:00
Jason Edmeades 4236c2007d cmd: Identify the program name using more appropriate parsing. 2012-10-16 11:44:49 +02:00
Jason Edmeades 25cf0aa046 cmd: cmd /c "pgmname" searches all extensions on PATHEXT. 2012-10-16 11:44:32 +02:00
Jason Edmeades 130cdcd727 cmd: Add full support for copy concatenation and ascii/binary. 2012-10-15 15:25:22 +02:00
Jason Edmeades 260210f6e6 cmd: Support copy to an 'ascii' destination. 2012-10-15 15:25:20 +02:00
Jason Edmeades a65314c8fa cmd: Add suite of tests for the copy command. 2012-10-15 15:25:16 +02:00
Jason Edmeades 8f019b1111 cmd: Fix some issues with ~ modifier expansion. 2012-10-15 15:25:14 +02:00
Jason Edmeades 7b9971abf9 cmd: Rework the body of WCMD_copy based on new parameter parsing. 2012-10-15 15:25:10 +02:00
Jason Edmeades 89b8868ae0 cmd: Rework parameter parsing for WCMD_Copy. 2012-10-15 15:25:07 +02:00
Jason Edmeades 270163f380 cmd: Fix regression around prompting during copy. 2012-10-15 15:25:05 +02:00
Frédéric Delanoy 3803134fce cmd/tests: Add tests for command line parsing.
Adapted from original patch by Martin Wilck <mwilck@arcor.de>.
2012-10-11 20:38:46 +02:00
Frédéric Delanoy 0ab71a42b4 cmd/tests: Move command line tests to separate file. 2012-10-11 20:37:59 +02:00
Jason Edmeades f252e9dfc8 cmd: Change command line parsing away from argv/argc. 2012-10-03 11:24:13 +02:00
Jason Edmeades 88f14bb590 cmd: Fix basic cmd.exe /c "echo hello" type syntax.
Add checks for existance of command to run in order to keep the
new quote handling capabilities of cmd.exe /C or /K. If the command
cannot be found, drop back to /S processing mode as per cmd.exe help.
2012-10-02 14:08:36 +02:00
Jason Edmeades b1dacc6c37 cmd: cmd.exe /c or /k should suppress copy overwrite prompts. 2012-10-02 14:08:36 +02:00
Jason Edmeades 4e10456bf6 cmd: Ensure current directory saved during cmd /c. 2012-10-01 14:31:33 +02:00
Jason Edmeades c55cd87632 cmd: Fix setlocal/endlocal implementation. 2012-10-01 14:30:49 +02:00
Jason Edmeades 9dde62cb96 cmd: Add full for /R support. 2012-10-01 14:29:58 +02:00
Jason Edmeades 8fbd65358e cmd: Convert wcmd_for to use WCMD_parameter. 2012-10-01 14:24:48 +02:00
Francois Gouget 906127fe29 Assorted spelling fixes. 2012-10-01 12:07:41 +02:00
Frédéric Delanoy c5a4878f5f cmd: Reuse common string constants. 2012-09-28 17:14:38 +02:00
Frédéric Delanoy 8b3d494247 cmd: Spelling fixes. 2012-09-28 17:14:34 +02:00
Jason Edmeades cd9451c499 cmd: Display 'set' sort ordering correctly. 2012-09-26 17:49:23 +02:00
Jason Edmeades a810e41e47 cmd: Echo back command with whitespace removed first. 2012-09-26 17:49:11 +02:00
Jason Edmeades 2ff533c1f2 cmd: Support for ^ character at end of line.
Based on a patch by John Chow.
2012-09-26 17:48:59 +02:00
Jason Edmeades d8c0fbcedc cmd: Add circumflex support into command shell. 2012-09-26 17:48:24 +02:00
Jason Edmeades e35b239b41 cmd: Fix parameterization around delimiters. 2012-09-26 17:47:20 +02:00
Francois Gouget 5f55a71b70 Assorted spelling fixes. 2012-09-24 22:27:29 +02:00
Jason Edmeades ebd1810918 cmd: Space does not delimit environment variable names. 2012-09-06 18:23:40 +02:00
Jason Edmeades f9b4c78a89 cmd: A successful set should reset the errorlevel. 2012-09-06 18:23:40 +02:00
Jason Edmeades 9877b53b8c cmd: Fix incorrect pointer comparison. 2012-09-05 21:56:55 +02:00
Jason Edmeades 141e33b845 cmd: More generic zero iteration for loop fix. 2012-09-05 21:56:52 +02:00
Jason Edmeades 4f71f4af59 cmd: Fix "PATH=value" command. 2012-09-05 13:25:24 +02:00
Jason Edmeades c5a72379a1 cmd: Fix renaming inside directories. 2012-09-04 15:04:01 +02:00
Jason Edmeades 94f9e789c9 cmd: Fix rmdir error during recursive delete. 2012-09-04 15:03:44 +02:00
Jason Edmeades 1a9413b98a cmd: for /l with zero iterations failed to skip its commands. 2012-09-03 15:51:26 +02:00
Jason Edmeades 3a25888f38 cmd: for loops did not respect boundaries. 2012-09-03 15:51:20 +02:00
Francois Gouget e0f4d5caf9 start: Fix the command line handling. 2012-06-28 01:38:40 +02:00
Frédéric Delanoy 0f032203f5 cmd: Improve WCMD_parameter documentation. 2012-05-16 20:27:28 +02:00
Frédéric Delanoy 0e4ceb9a8d cmd: Use BOOL instead of int for boolean variables. 2012-03-29 20:49:18 +02:00
Christian Costa 6533168089 cmd/tests: If we rewind to the beginning of the line, don't increment line number. 2012-03-27 13:58:19 +02:00
Christian Costa 6520f19181 attrib: Dislay attribute flags in the right order. 2012-03-27 13:57:38 +02:00
Christian Costa a4e2f1d42a attrib: Add 2 missing spaces between attribute flags and filename. 2012-03-27 13:56:37 +02:00
Francois Gouget da7e97bbe5 start: Remove the license and the /L option. 2012-03-01 17:29:10 +01:00
Frédéric Delanoy 668e44ab26 cmd: Respect constant wide strings naming convention. 2012-02-13 12:29:34 +01:00
Frédéric Delanoy 7cf307a7bd cmd: Reuse common string constants. 2012-02-13 12:29:30 +01:00
Frédéric Delanoy 7e6e783cbb cmd: Add short help for START command. 2012-02-11 19:11:54 +01:00
Alexandre Julliard 3c8d8f1e95 cmd: START needs to be an internal command. 2012-02-11 16:12:01 +01:00
Francois Gouget 02b12e1117 programs: Standardize references to the <Enter> key. 2012-01-25 11:53:06 +01:00
Francois Gouget af3d368aca cmd: Fix an internationalization issue in WCMD_ask_confirm().
Don't break the strings to translate in little chunks: this makes it
hard or even impossible to translate them correctly. For instance it
must be possible to insert an unbreakable space before question marks
for French.
2012-01-23 19:42:54 +01:00
Francois Gouget c2a9aae4ca cmd: Fix asking for a Yes / No / All confirmation. 2012-01-23 19:42:52 +01:00
Francois Gouget 774eb34e36 cmd: Remove an unused variable. 2012-01-23 19:42:52 +01:00
Alexandre Julliard c9eee73450 makefiles: Define __WINESRC__ when building programs. 2012-01-23 16:07:37 +01:00
Francois Gouget 34c0b74ace cmd: A few usage message tweaks and fixes. 2012-01-23 16:07:28 +01:00
Alexandre Julliard da35622b83 makefiles: Disable use of Unicode macros globally for all the programs. 2012-01-20 13:14:16 +01:00
Frédéric Delanoy 0b358703ca cmd: Avoid unreachable code (Coverity). 2012-01-03 19:28:22 +01:00
Frédéric Delanoy dbdf927e74 cmd: Merge two if blocks. 2011-12-20 20:24:10 +01:00
Francois Gouget eb109f46e3 cmd: Avoid hardcoding the Unicode string literal lengths. 2011-12-16 17:40:48 +01:00
Akihiro Sagawa 8a00eb8609 cmd: Improve the message when the volume has no label. 2011-12-15 17:46:31 +01:00
Frédéric Delanoy 15f65a0792 cmd: Avoid dead assignment (Clang). 2011-12-07 17:50:03 +01:00
Frédéric Delanoy 0eec6b5de0 cmd: Avoid duplication of commonly used strings. 2011-12-07 17:49:57 +01:00
Francois Gouget 8ef901fa32 cmd: Use FormatMessage() for better internationalization support.
This makes it possible to reorder the format string placeholders in message translations.
2011-12-06 18:23:49 +01:00
Francois Gouget bc176ecb81 cmd: Print error messages on stderr, not on stdout. 2011-12-02 11:53:23 +01:00
Francois Gouget 66db270d22 cmd/tests: Use resynchronization points to better deal with two IF statements tests. 2011-11-30 16:41:12 +01:00
Frédéric Delanoy a5becedd0e cmd: Reorder global vars declarations/definitions to improve readability. 2011-11-30 11:44:13 +01:00
Frédéric Delanoy 44a1e7d199 cmd: Move commonly used global vars declarations to header file. 2011-11-30 11:44:05 +01:00
Frédéric Delanoy ad81871f15 cmd: Move a global var to the file using it. 2011-11-30 11:43:21 +01:00
Frédéric Delanoy 513ee9a3aa cmd: Rename unicodePipes variable. 2011-11-29 16:48:33 +01:00
Frédéric Delanoy 1a8df977ac cmd: Reduce the scope of a global variable. 2011-11-29 16:48:22 +01:00
Frédéric Delanoy 51b05c72d7 cmd: Use boolean types for boolean variables. 2011-11-29 16:48:12 +01:00
Frédéric Delanoy 2820ed9764 cmd: Remove an unused global variable. 2011-11-29 16:47:58 +01:00
Francois Gouget 87a770fa73 cmd/tests: Tweak subsection headers so they are treated as resynchronization points. 2011-11-29 13:56:24 +01:00
Francois Gouget 128d0656de cmd/tests: Standardize the batch file section headers. 2011-11-29 13:56:12 +01:00
Francois Gouget 81f64ee906 cmd/tests: Treat lines that start with '---' as resynchronization points. 2011-11-29 13:56:03 +01:00
Eric Pouech 6faea5a606 cmd: Correctly parse program name when launching external processes. 2011-11-29 13:25:55 +01:00
Francois Gouget 3b72928464 cmd: Use WCMD_output_asis*() for strings that are not supposed to contain formating directives. 2011-11-25 17:16:11 +01:00
Frédéric Delanoy 3d028ab67c cmd: Avoid dead assignment (clang). 2011-11-24 20:57:01 +01:00
Frédéric Delanoy de7841b2ce cmd: Move builtins list to builtins.c. 2011-11-21 15:34:58 +01:00
Frédéric Delanoy e3a5423478 cmd: Move WCMD_part_execute function to avoid forward declaration. 2011-11-18 15:37:04 +01:00
Frédéric Delanoy 5fc25686a4 cmd: Avoid duplication of commonly used strings. 2011-11-15 11:45:58 +01:00
Frédéric Delanoy e8d8df3c54 cmd: Trim whitespace in echo on/off. 2011-11-15 11:44:40 +01:00
Frédéric Delanoy 6221e300bc cmd: Avoid comparison between signed and unsigned values. 2011-11-08 13:55:14 +01:00
Frédéric Delanoy 6d01f15a27 cmd: Rename a parameter in WCMD_parameter. 2011-10-31 16:48:33 +01:00
Frédéric Delanoy 41a9450440 cmd: Avoid unnecessary null pointer checks. 2011-10-31 16:48:26 +01:00
Frédéric Delanoy ecc4d87253 cmd: Fix a comment. 2011-10-28 12:47:10 +02:00
Frédéric Delanoy 45c1dff552 cmd: Make 'if errorlevel' only recognize integer values. 2011-10-28 12:43:27 +02:00
Frédéric Delanoy 42f126e80d cmd: Constify WCMD_pushd parameter. 2011-10-21 12:31:46 +02:00
Frédéric Delanoy d19455e895 cmd: Rename WCMD_opt_s_strip_quotes function. 2011-10-19 16:38:52 +02:00
Frédéric Delanoy 6fd9d77426 cmd: Make RENAME work for read-only files. 2011-10-14 20:26:43 +02:00
Frédéric Delanoy d5523fcd80 cmd/tests: Show that read-only files are RENAMEable. 2011-10-14 20:26:43 +02:00
Frédéric Delanoy 1f5c0a6170 cmd/tests: Add tests for directories RENAMEs. 2011-10-14 20:26:43 +02:00