# HG changeset patch # User jwe # Date 832064364 0 # Node ID 0dff6c1595428688515227e3fc922775f8c656a5 # Parent 79595bdfdb1f70430deb7e08a60e3c6b0c74b40b [project @ 1996-05-14 08:58:40 by jwe] diff -r 79595bdfdb1f -r 0dff6c159542 src/dirfns.cc --- a/src/dirfns.cc Tue May 14 08:55:24 1996 +0000 +++ b/src/dirfns.cc Tue May 14 08:59:24 1996 +0000 @@ -72,6 +72,9 @@ #include "utils.h" #include "variables.h" +// The current working directory. +static string Vcurrent_directory; + // Non-zero means follow symbolic links that point to directories just // as if they are real directories. static int follow_symbolic_links = 1; @@ -580,6 +583,31 @@ return retval; } +static int +pwd (void) +{ + int status = 0; + + string s = builtin_string_variable ("PWD"); + + if (s.empty ()) + { + gripe_invalid_value_specified ("PWD"); + status = -1; + } + else + Vcurrent_directory = s; + + return status; +} + +void +symbols_of_dirfns (void) +{ + DEFCONST (PWD, get_working_directory ("initialize_globals"), 0, pwd, + "current working directory"); +} + /* ;;; Local Variables: *** ;;; mode: C++ ***