Microsoft KB Archive/35859

From BetaArchive Wiki

FC.EXE Doesn’t Parse Command Line Properly PSS ID Number: Q35859 Article last modified on 07-14-1993 PSS database name: O_MSDOS

3.20 3.21 3.30 3.30a


The information in this article applies to:
- Microsoft MS-DOS operating system versions 3.20, 3.21, 3.30 and 3.30a


There is a command-line parsing problem with FC.EXE (the file-compare utility) in MS-DOS versions 3.30a and earlier. In addition to some optional command-line options, FC.EXE is written to expect two filenames on the command line, the two files to compare. FC.EXE copies all filenames specified on the command line to an internal array that is only large enough for two filenames. Therefore, if more than two filenames are specified, portions of memory are overwritten, causing unpredictable behavior in FC.EXE.

To work around this problem, do not specify more than two files on the command line of FC.EXE.

Microsoft has confirmed this to be a problem with the FC.EXE that was shipped with MS-DOS versions 3.20, 3.21, 3.30, and 3.30a. This problem was corrected in the version of FC.EXE included with MS-DOS version 4.00.

The version of FC.EXE included with MS-DOS version 4.00 displays an error message if more than two files are specified on the command line of FC.EXE.

Additional reference words: 3.20 3.21 3.30 3.30a noupd

Copyright Microsoft Corporation 1993.