(main): Don't expect array index `n_files - 1' to evaluate
authorJim Meyering <jim@meyering.net>
Mon, 24 Jan 2000 13:48:12 +0000 (13:48 +0000)
committerJim Meyering <jim@meyering.net>
Mon, 24 Jan 2000 13:48:12 +0000 (13:48 +0000)
to `-1' for unsigned int n_files == 0.  Doing so lead to a segfault on
alpha.  From Michael Stone.

src/mv.c

index 3e1e6b96c157468f91e4ea6ac1123ce8ca5848a0..71b4de8564ad2ccc6547bf09b0b6c4b8c3d146d6 100644 (file)
--- a/src/mv.c
+++ b/src/mv.c
@@ -464,12 +464,8 @@ main (int argc, char **argv)
   file = argv + optind;
 
   target_directory_specified = (target_directory != NULL);
-  if (target_directory == NULL)
-    {
-      /* Be careful below.  When n_files is 0, this value will be
-        argv[0], `--', or an option string.  */
-      target_directory = file[n_files - 1];
-    }
+  if (target_directory == NULL && n_files != 0)
+    target_directory = file[n_files - 1];
 
   dest_is_dir = (n_files > 0 && isdir (target_directory));