[comp.sys.ibm.pc] FOLLOW-UP: Microsoft C V5.1 Setup Warning

dick@slvblc.UUCP (Dick Flanagan) (04/28/88)

In article <1455@slvblc.UUCP> I wrote:
> About 30 minutes ago I destroyed several critical program files, including
> the almighty setup.exe file, itself, on the Microsoft C V5.1 installation
> diskettes.

> One of the installation directories you are prompted to enter, very
> plainly declares that its default is to install in directory '[.]'

> Well, folks, when it says it defaults to '.' it's not kidding one little
> bit!  It doesn't mean that it defaults to something reasonable like 'C:.'
> It honest-to-God means that IT DEFAULTS TO INSTALLING OVER THE INSTALLATION
> DISKETTES, THEMSELVES!

> Even though I am 100% to blame for not following the cardinal rule of
> write-protecting all original diskettes, I really do wish Microsoft
> wouldn't offer a default that, if accepted, destroys the very files you
> are trying to install.

As I re-read the setup.doc file in the glaring light of day, the following
paragraph jumped out at me with new significance:

        Note that when SETUP suggests a default response for each
        of the installation directories, it uses the first path
        defined by the PATH environment variable in your environment.

Well, well, well.  I do, indeed, begin my PATH with a directory of '.',
so at least now I know where that damned '[.]' came from.

That also means that anyone whose PATH begins with '.', 'A:', or '\',
will have those same dangerous defaults offered to them by the setup
program.  So, while I still don't blame Microsoft for my lost files,
I will modify my "wish" somewhat:  if they are going to use an unknown
directory obtained from the user's environment, I wish they would at
least check that it doesn't refer back to the installation diskettes,
themselves.

         WRITE-PROTECT THOSE ORIGINAL DISKETTES, FOLKS!

Dick

--
Dick Flanagan, W6OLD                         GEnie: FLANAGAN
UUCP: ...!ucbvax!ucscc!slvblc!dick           Voice: +1 408 336 3481
Internet: slvblc!dick@ucscc.UCSC.EDU         LORAN: N037 04.7 W122 04.6
USPS: PO Box 155, Ben Lomond, CA 95005

dick@slvblc.UUCP (Dick Flanagan) (04/30/88)

In article <146@atpal.UUCP> tneff@atpal.UUCP (Tom Neff) writes:
>In article <1468@slvblc.UUCP> slvblc!dick@ucscc.UCSC.EDU (Dick Flanagan) writes:
>> ... Well, well, well.  I do, indeed, begin my PATH with a directory of '.',
>>so at least now I know where that damned '[.]' came from. ...
>
>This begs the question, why did you put "." in your PATH in the first place?
>MS-DOS always searches your current directory (denoted ".") for executables
>before searching the directories listed in the PATH environment variable.

The "." is in my PATH because several ported-from-UNIX applications only
look at the PATH to find their support files.  Without the "." I would
have to extend my path to include all of their individual application
directories as well.  The leading "." solved those problems at the minimal
cost (for me) of re-searching the current directory cache for other files.

>Thus saying PATH=.;<other directories> forces DOS to search your current
>directory TWICE for programs stored elsewhere.  On a floppy based system
>this could be time consuming; it seems wasteful anywhere.  No wonder MS
>didn't anticipate it in their install program.

A couple of points here, Tom:

        DOS isn't the only user of the PATH variable (see above).

        I don't run a floppy-based system.

        I don't recall suggesting that floppy-based system users (or
        anyone else, for that matter) use "." in their PATH.  *8-)

        Most floppy-bases systems actually DO contain "A:\;B:\" in
        their PATH's, causing occasional-to-frequent "double searches."

        Adequate disk caching (either through DOS CONFIG.SYS buffers
        or third-party products) minimizes "double search" penalties.

        It is very common for hard-disk users to begin their PATH
        with "\" which would cause the same MS C setup behavior.

        I should be able to structure my PATH to satisfy MY needs,
        and not be at potential risk because Microsoft "didn't
        anticipate it."

Tom, my original postings were to warn folks who begin their PATH's with
either ".", "A:", or "\" that the MS C 5.1 setup program would offer them
potentially dangerous default options.  While I've always accepted the
blame for not write-protecting my diskettes, it never occured to me that
folks would blame me because I didn't structure my PATH "right."

Dick

--
Dick Flanagan, W6OLD                         GEnie: FLANAGAN
UUCP: ...!ucbvax!ucscc!slvblc!dick           Voice: +1 408 336 3481
Internet: slvblc!dick@ucscc.UCSC.EDU         LORAN: N037 04.7 W122 04.6
USPS: PO Box 155, Ben Lomond, CA 95005

tneff@atpal.UUCP (Tom Neff) (05/01/88)

In article <1468@slvblc.UUCP> slvblc!dick@ucscc.UCSC.EDU (Dick Flanagan) writes:
> ... Well, well, well.  I do, indeed, begin my PATH with a directory of '.',
>so at least now I know where that damned '[.]' came from. ...

This begs the question, why did you put "." in your PATH in the first place?
MS-DOS always searches your current directory (denoted ".") for executables
before searching the directories listed in the PATH environment variable.
Thus saying PATH=.;<other directories> forces DOS to search your current
directory TWICE for programs stored elsewhere.  On a floppy based system
this could be time consuming; it seems wasteful anywhere.  No wonder MS
didn't anticipate it in their install program.
-- 
Tom Neff			UUCP: ...uunet!pwcmrd!skipnyc!atpal!tneff
	"None of your toys	CIS: 76556,2536		MCI: TNEFF
	 will function..."	GEnie: TOMNEFF		BIX: are you kidding?

madd@bu-cs.BU.EDU (Jim Frost) (05/02/88)

In article <146@atpal.UUCP> tneff@atpal.UUCP (Tom Neff) writes:
|>I do, indeed, begin my PATH with a directory of '.',
|>so at least now I know where that damned '[.]' came from. ...
|
|This begs the question, why did you put "." in your PATH in the first place?
|MS-DOS always searches your current directory (denoted ".") for executables
|before searching the directories listed in the PATH environment variable.

MS-DOS doesn't search the path, the program trying to exec another
program does (eg command.com).  Some of us hated command.com and
switched to something else a long time ago.  In my case it was a shell
that DIDN'T search '.' unless you placed it in your path.  I think
you'll agree that this is a useful function when your "PC" is
multiuser.  (Ours has 9 loosely-couple CPUs, so I'm not so sure it
should be called a PC anymore.)

|Thus saying PATH=.;<other directories> forces DOS to search your current
|directory TWICE for programs stored elsewhere.

Agreed.  A less-than-useful concept on a floppy-based 8086 system. :-)

jim frost
madd@bu-it.bu.edu

del@Data-IO.COM (Erik Lindberg) (05/06/88)

Beginning your path with a "." is a waste of disk accesses, since MSDOS
will always check "." before starting in on your PATH!

Putting "." in your PATH will cause MSDOS to search "." twice...

-- 
del (Erik Lindberg) 
uw-beaver!tikal!pilchuck!del