view mkinstalldirs @ 38536:09aca87f88ce

Overall speedup when using many buffers. (uniquify-fix-item-base, uniquify-fix-item-filename, uniquify-fix-item-buffer): Changed defmacro to defalias (cosmetic change). (uniquify-fix-item-unrationalized-buffer): Deleted: was the fourth place in the item, but waas never used. (uniquify-fix-item-min-proposed): New defalias: the fourth place in the item is now used as cache for the proposed name. (uniquify-rationalize-file-buffer-names): Move computation made on newbuffile out of the loop, in the newbuffile-nd local var. Use dolist (cosmetic change). Compute the proposed name for the most common case and cache it in the fourth place in the item. (uniquify-rationalize-file-buffer-names): Used to return a list of flags indicating renamed buffers, but that return value was never used. (uniquify-item-lessp): Replaces uniquify-filename-lessp, works on the cached proposed name, does much less consing and is quicker. (uniquify-filename-lessp): Deleted. (uniquify-rationalize-a-list): Use dolist (cosmetic change). Do not bind locally the uniquify-possibly-resolvable flag. Use the cached proposed name if possible. (uniquify-get-proposed-name): Arguments changed, callers changed. (uniquify-rationalize-conflicting-sublist): Explicitely reset the uniquify-possibly-resolvable flag, which is no more bound locally. (uniquify-rename-buffer): Do not set the unrationalised-buffer flag, which is replaced by the cached proposed name.
author Francesco Potortì <pot@gnu.org>
date Tue, 24 Jul 2001 10:39:09 +0000
parents 774df19dd335
children f0eb34e60705 746c40973d25
line wrap: on
line source

#! /bin/sh
# mkinstalldirs --- make directory hierarchy
# Author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
# Public domain

# $Id: mkinstalldirs,v 1.1 2001/02/02 13:04:53 gerd Exp $

errstatus=0

for file
do
   set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
   shift

   pathcomp=
   for d
   do
     pathcomp="$pathcomp$d"
     case "$pathcomp" in
       -* ) pathcomp=./$pathcomp ;;
     esac

     if test ! -d "$pathcomp"; then
        echo "mkdir $pathcomp" 1>&2

        (mkdir "$pathcomp" && chmod a+rx "$pathcomp") || lasterr=$?

        if test ! -d "$pathcomp"; then
  	  errstatus=$lasterr
        fi
     fi

     pathcomp="$pathcomp/"
   done
done

exit $errstatus

# mkinstalldirs ends here