Partially revert the over-reaching r80813.

This commit is contained in:
Brett Cannon 2010-05-05 20:24:30 +00:00
parent 0b03f10afb
commit 417439e6cd
4 changed files with 85 additions and 78 deletions

View file

@ -28,7 +28,7 @@ getcwd(char *buf, int size)
{
char localbuf[MAXPATHLEN+1];
char *ret;
if (size <= 0) {
errno = EINVAL;
return NULL;
@ -59,13 +59,14 @@ getcwd(char *buf, int size)
{
FILE *fp;
char *p;
int sts;
if (size <= 0) {
errno = EINVAL;
return NULL;
}
if ((fp = popen(PWD_CMD, "r")) == NULL)
return NULL;
if (fgets(buf, size, fp) == NULL || pclose(fp) != 0) {
if (fgets(buf, size, fp) == NULL || (sts = pclose(fp)) != 0) {
errno = EACCES; /* Most likely error */
return NULL;
}