Fix case where binary name doesn't have any extension.
authorRichard W.M. Jones <rjones@redhat.com>
Wed, 30 Apr 2008 13:30:20 +0000 (14:30 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Wed, 30 Apr 2008 13:30:20 +0000 (14:30 +0100)
diskzip/diskzip.ml

index b4a0a5a..21d2cc3 100644 (file)
@@ -29,8 +29,10 @@ let rec main () =
   (* Program name changes behaviour. *)
   let compressing =
     let name = Sys.argv.(0) in
   (* Program name changes behaviour. *)
   let compressing =
     let name = Sys.argv.(0) in
-    let name = Filename.basename name in       (* just the executable name *)
-    let name = Filename.chop_extension name in (* remove .opt or .exe *)
+    let name = Filename.basename name in (* just the executable name *)
+    let name =                          (* remove .opt or .exe *)
+      try Filename.chop_extension name
+      with Invalid_argument("Filename.chop_extension") -> name in
     let name = String.lowercase name in
     match name with
     | "diskzcat" -> false
     let name = String.lowercase name in
     match name with
     | "diskzcat" -> false
@@ -145,6 +147,11 @@ and go_compress extcompress images =
   (* Scan the images for filesystems. *)
   let machine = Diskimage.scan_machine machine in
 
   (* Scan the images for filesystems. *)
   let machine = Diskimage.scan_machine machine in
 
+  (* Create ownership tables. *)
+  let ownership = Diskimage.create_ownership machine in
+
+
+
   (* Redirect output through external pipe if asked. *)
   (match extcompress with
    | None -> ()
   (* Redirect output through external pipe if asked. *)
   (match extcompress with
    | None -> ()