10497cb
diff -up ksh-20120801/src/cmd/ksh93/bltins/cd_pwd.c.cdfix ksh-20120801/src/cmd/ksh93/bltins/cd_pwd.c
01a16b1
--- ksh-20120801/src/cmd/ksh93/bltins/cd_pwd.c.cdfix	2013-02-01 16:04:55.507150242 +0100
01a16b1
+++ ksh-20120801/src/cmd/ksh93/bltins/cd_pwd.c	2013-02-01 16:06:39.361007641 +0100
10497cb
@@ -214,7 +214,10 @@ int	b_cd(int argc, char *argv[],Shbltin_
10497cb
 			if(*++dp=='.' && (*++dp=='/' || *dp==0))
10497cb
 				n++;
10497cb
 			else if(*dp && *dp!='/')
10497cb
+			{
10497cb
+				dp--;
10497cb
 				break;
10497cb
+			}
10497cb
 			if(*dp==0)
10497cb
 				break;
10497cb
 		}