~nabijaczleweli/ossp-cvs

[CVS] OSSP: ossp-pkg/shtool/ ChangeLog sh.mkln

Ralf S. Engelschall <rse@ossp.org>
Details
Message ID
<20081223191206.4841075287E@mail.ossp.org>
Sender timestamp
1230063126
DKIM signature
missing
Download raw message
  OSSP CVS Master Repository
  http://cvs.ossp.org/
  ____________________________________________________________________________

  Server: cvs.ossp.org                     Name:   Ralf S. Engelschall
  Root:   /v/ossp/cvs                      Email:  rse@ossp.org
  Module: ossp-pkg                         Date:   23-Dec-2008 20:12:06
  Branch: HEAD                             Handle: 2008122319120500

  Modified files:
    ossp-pkg/shtool         ChangeLog sh.mkln

  Log:
    Fix "mkln -s /foo /foo/bar" (achieving a "bar -> ." symlink)

  Summary:
    Revision    Changes     Path
    1.243       +3  -0      ossp-pkg/shtool/ChangeLog
    1.26        +9  -4      ossp-pkg/shtool/sh.mkln
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: ossp-pkg/shtool/ChangeLog
  ============================================================================
  $ cvs diff -u -r1.242 -r1.243 ChangeLog
  --- ossp-pkg/shtool/ChangeLog	21 Sep 2008 15:01:15 -0000	1.242
  +++ ossp-pkg/shtool/ChangeLog	23 Dec 2008 19:12:05 -0000	1.243
  @@ -11,6 +11,9 @@
   
    Changes between 2.0.8 and 2.0.9 (18-Jul-2008 to xx-XXX-2008):
   
  +   *) Fix "mkln -s /foo /foo/bar" (achieving a "bar -> ." symlink)
  +      [Ralf S. Engelschall]
  +
      *) Provide SHTOOL_ROTATE_LOGFILE environment variable
         to "shtool rotate" prolog/epilog commands.
         [Bill Campbell <bill@celestial.com>]
  @@ .
  patch -p0 <<'@@ .'
  Index: ossp-pkg/shtool/sh.mkln
  ============================================================================
  $ cvs diff -u -r1.25 -r1.26 sh.mkln
  --- ossp-pkg/shtool/sh.mkln	6 Jun 2008 12:15:11 -0000	1.25
  +++ ossp-pkg/shtool/sh.mkln	23 Dec 2008 19:12:05 -0000	1.26
  @@ -114,14 +114,14 @@
           dstdir=""
       else
           while [ ".$srcdir" != . ] && [ ".$dstdir" != . ]; do
  -            presrc=`echo $srcdir | sed -e 's;^\([^/]*\)/.*;\1;'`
  -            predst=`echo $dstdir | sed -e 's;^\([^/]*\)/.*;\1;'`
  +            presrc=`echo $srcdir | sed -e 's;^\([^/][^/]*\)/.*;\1;'`
  +            predst=`echo $dstdir | sed -e 's;^\([^/][^/]*\)/.*;\1;'`
               if [ ".$presrc" != ".$predst" ]; then
                   break
               fi
               prefix="$prefix$presrc/"
  -            srcdir=`echo $srcdir | sed -e 's;^[^/]*/*;;'`
  -            dstdir=`echo $dstdir | sed -e 's;^[^/]*/*;;'`
  +            srcdir=`echo $srcdir | sed -e 's;^[^/][^/]*/*;;'`
  +            dstdir=`echo $dstdir | sed -e 's;^[^/][^/]*/*;;'`
           done
       fi
   
  @@ -165,6 +165,11 @@
           fi
       fi
   
  +    #   special case (usually on "mkln -s /foo /foo/bar", etc)
  +    if [ ".$srcpre$srcdir$srcbase" = . ]; then
  +        srcdir="."
  +    fi
  +
       #   now finalize source and destination directory paths
       srcdir=`echo $srcdir | sed -e 's;\([^/]\)$;\1/;'`
       dstdir=`echo $dstdir | sed -e 's;\([^/]\)$;\1/;'`
  @@ .
Reply to thread Export thread (mbox)