Re: why is this code here?
On Fri, Dec 10, 1999 at 01:39:07PM -0800, Sean 'Shaleh' Perry was heard to say:
> in dbootstrap/choose_medium.c:choose_NFS_server()
>
> for (;;) {
> /* keep user entry between calls to choose_NFS_server */
>
> if (!preventry) preventry=strdup(""); <<-- why??????
>
> nfsmountpath=inputBox(_("Please choose the NFS server and the mount path of
> the NFS filesystem that contains the Debian archive.\nEnter them in this way:
> server:/ftp/debian"),_("Choose Debian NFS filesystem"),preventry);
> if (! nfsmountpath) return 1;
> free(preventry);
> preventry=nfsmountpath;
>
> .....
> }
>
> preventry is set to NULL at the top, strdup("") just sets it to NULL again.
> What am I missing????
Huh? Unless the semantics of C strings have changed underneath me, strdup("")
sets it to *a pointer to* a NULL byte. This is important, since otherwise
you'll segfault when you try to access strdup..assuming that inputBox doesn't
treat NULL strings as "".
Daniel
--
Believe in the Great God Om or be stricken with thunderbolts?
Is that the way it always has to be?
-- Terry Pratchett, _Small Gods_
Reply to: