launch: Ensure g->cmdline is allocated before assigning g->cmdline[0].
[libguestfs.git] / fish / inspect.c
index 713501e..2ca54d2 100644 (file)
@@ -73,6 +73,12 @@ compare_keys (const void *p1, const void *p2)
 void
 inspect_mount (void)
 {
+  if (live) {
+    fprintf (stderr, _("%s: don't use --live and -i options together\n"),
+             program_name);
+    exit (EXIT_FAILURE);
+  }
+
   inspect_do_decrypt ();
 
   char **roots = guestfs_inspect_os (g);
@@ -82,12 +88,14 @@ inspect_mount (void)
   if (roots[0] == NULL) {
     fprintf (stderr, _("%s: no operating system was found on this disk\n"),
              program_name);
+    free_strings (roots);
     exit (EXIT_FAILURE);
   }
 
   if (roots[1] != NULL) {
     fprintf (stderr, _("%s: multi-boot operating systems are not supported by the -i option\n"),
              program_name);
+    free_strings (roots);
     exit (EXIT_FAILURE);
   }
 
@@ -136,7 +144,7 @@ void
 print_inspect_prompt (void)
 {
   char *name = guestfs_inspect_get_product_name (g, root);
-  if (STRNEQ (name, "unknown"))
+  if (name && STRNEQ (name, "unknown"))
     printf (_("Operating system: %s\n"), name);
   free (name);