tags 679966 + patch
tags 679966 + pending
thanks
Dear maintainer,
I've prepared an NMU for ksh (versioned as 93u+-1.1) and
uploaded it to DELAYED/00. Please feel free to tell me if I
should delay it longer.
RMs: please clear for an upload to t-p-u, thanks.
Regards.
--
Jonathan Wiltshire jmw@debian.org
Debian Developer http://people.debian.org/~jmw
4096R: 0xD3524C51 / 0A55 B7C5 1223 3942 86EC 74C3 5394 479D D352 4C51
<directhex> i have six years of solaris sysadmin experience, from
8->10. i am well qualified to say it is made from bonghits
layered on top of bonghits
diff -Nru ksh-93u+/debian/changelog ksh-93u+/debian/changelog
--- ksh-93u+/debian/changelog 2012-04-24 23:36:58.000000000 +0100
+++ ksh-93u+/debian/changelog 2012-10-13 22:58:47.000000000 +0100
@@ -1,3 +1,11 @@
+ksh (93u+-1.1) testing-proposed-updates; urgency=low
+
+ * Non-maintainer upload.
+ * Fix handling of cd ../../.. and similar
+ (cddotdot.patch, Closes: #679966)
+
+ -- Jonathan Wiltshire <jmw@debian.org> Sat, 13 Oct 2012 22:53:44 +0100
+
ksh (93u+-1) unstable; urgency=low
* Bump to Standards-Version 3.9.3
diff -Nru ksh-93u+/debian/patches/cddotdot.patch ksh-93u+/debian/patches/cddotdot.patch
--- ksh-93u+/debian/patches/cddotdot.patch 1970-01-01 01:00:00.000000000 +0100
+++ ksh-93u+/debian/patches/cddotdot.patch 2012-10-13 23:18:24.000000000 +0100
@@ -0,0 +1,51 @@
+Description: fix handling of cd ../../.. etc
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=679966
+Forwarded: not-needed
+Author: Jonathan Wiltshire <jmw@debian.org>, Adam D. Barratt <adsb@debian.org>
+Last-Update: 2012-10-13
+
+Index: ksh-93+/src/cmd/ksh93/bltins/cd_pwd.c
+===================================================================
+--- ksh-93+.orig/src/cmd/ksh93/bltins/cd_pwd.c 2012-10-13 23:14:07.000000000 +0100
++++ ksh-93+/src/cmd/ksh93/bltins/cd_pwd.c 2012-10-13 23:18:14.522450133 +0100
+@@ -116,14 +116,17 @@
+ dp++;
+ if(*dp==0 || *dp=='/')
+ {
+- struct stat statb;
+ if((dp-dir)==2)
+ {
+- sfprintf(shp->strbuf,oldpwd);
+- dp = sfstruse(shp->strbuf);
+- *strrchr(dp,'/')=0;
++ char *sp;
++ sfputr(shp->strbuf,oldpwd,0);
+ if(*dp)
+- dir = (char*)dp;
++ sfputr(shp->strbuf,dp+1,0);
++ sp = sfstruse(shp->strbuf);
++ *(dir=strrchr(sp,'/'))=0;
++ if(*dp)
++ strcpy(dir,dp);
++ dir = (char*)sp;
+ }
+ cdpath = 0;
+ }
+@@ -202,8 +205,6 @@
+ if(*dir != '/')
+ return(0);
+ nv_putval(opwdnod,oldpwd,NV_RDONLY);
+- if(oldpwd)
+- free(oldpwd);
+ flag = strlen(dir);
+ /* delete trailing '/' */
+ while(--flag>0 && dir[flag]=='/')
+@@ -214,6 +215,8 @@
+ nv_scan(shp->track_tree,rehash,(void*)0,NV_TAGGED,NV_TAGGED);
+ path_newdir(shp,shp->pathlist);
+ path_newdir(shp,shp->cdpathlist);
++ if(oldpwd)
++ free(oldpwd);
+ return(0);
+ }
+
diff -Nru ksh-93u+/debian/patches/series ksh-93u+/debian/patches/series
--- ksh-93u+/debian/patches/series 2012-04-24 23:33:36.000000000 +0100
+++ ksh-93u+/debian/patches/series 2012-10-13 22:54:37.000000000 +0100
@@ -2,3 +2,4 @@
cleanup-man-title.patch
no-rpath.patch
handle-removed-working-dir.patch
+cddotdot.patch
Attachment:
signature.asc
Description: Digital signature