Simon Wollwage <[email protected]> writes:

> Dave Voutila <[email protected]> writes:
>
>>
>> Yes, I'm in agreement that 0 semantically makes sense here.
>>
>> If you have a diff, happy to review if you can share in the thread.

Noticed an erroneous whitespace in my diff and while fixing that I
realized that found_running is not needed anymore.

Index: vmctl.c
===================================================================
RCS file: /cvs/src/usr.sbin/vmctl/vmctl.c,v
diff -u -p -r1.98 vmctl.c
--- vmctl.c     16 Apr 2026 21:34:47 -0000      1.98
+++ vmctl.c     29 Aug 2026 02:18:23 -0000
@@ -700,10 +700,10 @@ print_vm_info(struct vmop_info_result *l
        char maxmem[FMT_SCALED_STRSIZE];
        char user[16], group[16];
        const char *name;
-       int running, found_running;
+       int running, matched;
        extern int stat_rflag;
 
-       found_running = 0;
+       matched = 0;
 
        printf("%5s %5s %5s %7s %7s %7s %12s %8s %s\n", "ID", "PID", "VCPUS",
            "MAXMEM", "CURMEM", "TTY", "OWNER", "STATE", "NAME");
@@ -714,9 +714,8 @@ print_vm_info(struct vmop_info_result *l
                if (!running && stat_rflag)
                        continue;
 
-               found_running++;
-
                if (check_info_id(vir->vir_name, vir->vir_id)) {
+                       matched = 1;
                        /* get user name */
                        name = user_from_uid(vir->vir_uid, 1);
                        if (name == NULL)
@@ -768,10 +767,10 @@ print_vm_info(struct vmop_info_result *l
                }
        }
 
-       if (found_running)
+       if (matched || (info_id == 0 && *info_name == '\0'))
                return (0);
-       else
-               return (ENOENT);
+
+       return (ENOENT);
 }
 
 /*

Reply via email to