]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
Tweak xfs_copy so that it works with non-XFS target filesystems also; minor.
authorNathan Scott <nathans@sgi.com>
Sun, 3 Aug 2003 23:46:38 +0000 (23:46 +0000)
committerNathan Scott <nathans@sgi.com>
Sun, 3 Aug 2003 23:46:38 +0000 (23:46 +0000)
copy/xfs_copy.c

index 78255205703fbbcf1cb26bc8a649bb3203825c13..1e3937f5b8ae7ebc7096e659b6e4d82658ef55f3 100644 (file)
@@ -786,16 +786,20 @@ main(int argc, char **argv)
                                        progname);
                                die_perror();
                        }
-                       if (xfsctl(target[i].name, target[i].fd,
+                       if (platform_test_xfs_fd(target[i].fd))  {
+                               if (xfsctl(target[i].name, target[i].fd,
                                                XFS_IOC_DIOINFO, &d) < 0)  {
-                               do_log(_("%s:  xfsctl on \"%s\" failed.\n"),
-                                       progname, target[i].name);
-                               die_perror();
+                                       do_log(
+                               _("%s:  xfsctl on \"%s\" failed.\n"),
+                                               progname, target[i].name);
+                                       die_perror();
+                               } else {
+                                       wbuf_align = MAX(wbuf_align, d.d_mem);
+                                       wbuf_size = MIN(d.d_maxiosz, wbuf_size);
+                                       wbuf_miniosize = MAX(d.d_miniosz,
+                                                               wbuf_miniosize);
+                               }
                        }
-                       wbuf_align = MAX(wbuf_align, d.d_mem);
-                       wbuf_size = MIN(d.d_maxiosz, wbuf_size);
-                       wbuf_miniosize = MAX(d.d_miniosz, wbuf_miniosize);
-
                } else  {
                        char    *lb[XFS_MAX_SECTORSIZE] = { 0 };
                        off64_t off;