Fixed a sorting problem when an entry has an empty (but not NULL)
authorWayne Davison <wayned@samba.org>
Thu, 29 Apr 2004 19:37:15 +0000 (19:37 +0000)
committerWayne Davison <wayned@samba.org>
Thu, 29 Apr 2004 19:37:15 +0000 (19:37 +0000)
dirname (which I had thought impossible, but it appears to occur
with --relative in some instances).

flist.c

diff --git a/flist.c b/flist.c
index bc216eb..b1a3538 100644 (file)
--- a/flist.c
+++ b/flist.c
@@ -1517,11 +1517,17 @@ int f_name_cmp(struct file_struct *f1, struct file_struct *f2)
        if (!(c1 = (uchar*)f1->dirname)) {
                state1 = fnc_BASE;
                c1 = (uchar*)f1->basename;
+       } else if (!*c1) {
+               state1 = fnc_SLASH;
+               c1 = (uchar*)"/";
        } else
                state1 = fnc_DIR;
        if (!(c2 = (uchar*)f2->dirname)) {
                state2 = fnc_BASE;
                c2 = (uchar*)f2->basename;
+       } else if (!*c2) {
+               state2 = fnc_SLASH;
+               c2 = (uchar*)"/";
        } else
                state2 = fnc_DIR;