Make hard-linking work when a device has an st_dev of 0.
authorWayne Davison <wayned@samba.org>
Wed, 30 Jul 2008 01:06:26 +0000 (18:06 -0700)
committerWayne Davison <wayned@samba.org>
Wed, 30 Jul 2008 01:06:26 +0000 (18:06 -0700)
flist.c

diff --git a/flist.c b/flist.c
index 2d17bf7..849851e 100644 (file)
--- a/flist.c
+++ b/flist.c
@@ -1242,8 +1242,8 @@ struct file_struct *make_file(const char *fname, struct file_list *flist,
                if (protocol_version >= 28
                 ? (!S_ISDIR(st.st_mode) && st.st_nlink > 1)
                 : S_ISREG(st.st_mode)) {
-                       tmp_dev = st.st_dev;
-                       tmp_ino = st.st_ino;
+                       tmp_dev = (int64)st.st_dev + 1;
+                       tmp_ino = (int64)st.st_ino;
                } else
                        tmp_dev = 0;
        }