home *** CD-ROM | disk | FTP | other *** search
/ back2roots/padua / padua.7z / padua / uucp / duucp-1.17 / AU-117b4-src.lha / src / lib / expand_path.c < prev    next >
Encoding:
C/C++ Source or Header  |  1993-12-24  |  611 b   |  38 lines

  1. /*
  2.  *  EXPAND_PATH.C
  3.  */
  4.  
  5. #include <stdio.h>
  6. #include <string.h>
  7. #include "config.h"
  8.  
  9. Prototype char *expand_path (const char *, const char *);
  10.  
  11. char *
  12. expand_path (const char *path, const char *file_name)
  13. {
  14.     register const char
  15.         *p;
  16.     static char
  17.         name [256];
  18.  
  19.     /*
  20.      * If the file_name is a full path name, use that.
  21.      */
  22.  
  23.     p = strchr (file_name, ':');
  24.  
  25.     if (p && (p != file_name))
  26.         return (char *) file_name;
  27.  
  28.     /*
  29.      * If the path ends in ':' or '/', don't add separator!
  30.      */
  31.  
  32.     p = &path [strlen (path) - 1];
  33.     sprintf (name, (*p == ':' || *p == '/') ? "%s%s" : "%s/%s",
  34.         path, file_name);
  35.  
  36.     return name;
  37. }
  38.