Lines Matching full:cwd
40 /* Record the location of the current working directory in CWD so that
50 save_cwd (cwd) in save_cwd() argument
51 struct saved_cwd *cwd; in save_cwd()
55 cwd->desc = -1;
56 cwd->name = NULL;
61 cwd->desc = open (".", O_RDONLY);
62 if (cwd->desc < 0)
71 if (fchdir (cwd->desc))
75 close (cwd->desc);
76 cwd->desc = -1;
82 close (cwd->desc);
83 cwd->desc = -1;
96 cwd->name = xgetwd ();
97 if (cwd->name == NULL)
106 /* Change to recorded location, CWD, in directory hierarchy.
111 restore_cwd (cwd, dest) in restore_cwd() argument
112 const struct saved_cwd *cwd; in restore_cwd()
116 if (cwd->desc >= 0)
118 if (fchdir (cwd->desc))
125 else if (chdir (cwd->name) < 0)
127 error (0, errno, "%s", cwd->name);
134 free_cwd (cwd) in free_cwd() argument
135 struct saved_cwd *cwd; in free_cwd()
137 if (cwd->desc >= 0)
138 close (cwd->desc);
139 if (cwd->name)
140 free (cwd->name);