quilt-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Quilt-dev] [PATCH 10/39] backup-files: Speed up ensure_nolinks


From: Jean Delvare
Subject: [Quilt-dev] [PATCH 10/39] backup-files: Speed up ensure_nolinks
Date: Sat, 19 Mar 2011 10:52:40 +0100
User-agent: quilt/0.48-17.1

Calling dirname and basename is costly, and here we really don't have
to. We can simply use a different temporary file name.

Additionally, if stat succeeds, it will always return a valid number,
so we can relax the tests.

Signed-off-by: Jean Delvare <address@hidden>
Reviewed-by: Raphael Hertzog <address@hidden>
---
 quilt/scripts/backup-files.in |    9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

--- a/quilt/scripts/backup-files.in
+++ b/quilt/scripts/backup-files.in
@@ -47,14 +47,11 @@ usage () {
 
 ensure_nolinks() {
        local filename="$1"
-       local link_count dirname basename tmpname
+       local link_count tmpname
 
        link_count=$(stat @STAT_HARDLINK@ "$filename")
-       if [ -z "$link_count" ] || [ "$link_count" -gt 1 ]; then
-               dirname=$(dirname "$filename")
-               basename=$(basename "$filename")
-               # Temp file name is "path/to/.file.XXXXXX"
-               tmpname=$(mktemp "${dirname}/.${basename}.XXXXXX")
+       if [ $link_count -gt 1 ]; then
+               tmpname=$(mktemp "$filename.XXXXXX")
                cp -p "$filename" "$tmpname"
                mv "$tmpname" "$filename"
        fi




reply via email to

[Prev in Thread] Current Thread [Next in Thread]