--- lib/sh/getcwd.c.orig Fri Dec 21 11:34:00 2007 +++ lib/sh/getcwd.c Fri Dec 21 11:58:41 2007 @@ -252,9 +256,9 @@ size_t len = pathbuf + pathsize - pathp; if (buf == NULL) { - if (len < (size_t) size) - len = size; - buf = (char *) malloc (len); + if (len > (size_t) size) + size = len; + buf = (char *) malloc (size); if (buf == NULL) goto lose2; }