NAME

       Tcl_TranslateFileName  -  convert file name to native form
       and replace tilde with home directory


SYNOPSIS

       #include <tcl.h>

       char *
       Tcl_TranslateFileName(interp, name, bufferPtr)


ARGUMENTS

       Tcl_Interp    *interp      (in)      Interpreter in  which
                                            to  report  an error,
                                            if any.

       char          *name        (in)      File name, which  may
                                            start with a ``~''.

       Tcl_DString   *bufferPtr   (in/out)  If    needed,    this
                                            dynamic   string   is
                                            used to store the new
                                            file  name.   At  the
                                            time  of  the call it
                                            should be  uninitial­
                                            ized  or  free.   The
                                            caller  must  eventu­
                                            ally             call
                                            Tcl_DStringFree    to
                                            free    up   anything
                                            stored here.
_________________________________________________________________


DESCRIPTION

       This utility procedure translates a file name  to  a  form
       suitable  for  passing  to the local operating system.  It
       converts network names into native  form  and  does  tilde
       substitution.

       If  Tcl_TranslateFileName  has to do tilde substitution or
       translate the name then it  uses  the  dynamic  string  at
       *bufferPtr  to  hold  the  new string it generates.  After
       Tcl_TranslateFileName  returns  a  non-NULL  result,   the
       caller  must eventually invoke Tcl_DStringFree to free any
       information placed in *bufferPtr.   The  caller  need  not
       know  whether  or  not Tcl_TranslateFileName actually used
       the string;  Tcl_TranslateFileName initializes  *bufferPtr
       even  if it doesn't use it, so the call to Tcl_DStringFree
       will be safe in either case.

       If an error occurs (e.g. because there was no user by  the
       given  name)  then  NULL  is returned and an error message

       occurs,  Tcl_TranslateFileName  frees  the  dynamic string
       itself so that the caller need not call Tcl_DStringFree.

       The caller is responsible for making sure that the  inter­
       preter's   result   has   its  default  empty  value  when
       Tcl_TranslateFileName is invoked.


SEE ALSO

       filename


KEYWORDS

       file name, home directory, tilde, translate, user


Man(1) output converted with man2html