On 5/28/26 15:28, Daniel Hora via Devel wrote:
> From: Daniel Hora <[email protected]>
> 
> Improved formatting of the shell output of the
> function showDomains based on length of the longest domain.
> 
> Signed-off-by: Daniel Hora <[email protected]>
> ---
>  examples/c/misc/hellolibvirt.c | 31 +++++++++++++++++++++++++++++--
>  1 file changed, 29 insertions(+), 2 deletions(-)
> 
> diff --git a/examples/c/misc/hellolibvirt.c b/examples/c/misc/hellolibvirt.c
> index 39cefe934c..77098d7be3 100644
> --- a/examples/c/misc/hellolibvirt.c
> +++ b/examples/c/misc/hellolibvirt.c
> @@ -4,6 +4,7 @@
>  
>  #include <stdio.h>
>  #include <stdlib.h>
> +#include <string.h>
>  #include <libvirt/libvirt.h>
>  #include <libvirt/virterror.h>
>  
> @@ -44,11 +45,34 @@ showHypervisorInfo(virConnectPtr conn)
>      return 0;
>  }
>  
> +static int
> +longestDomain(virDomainPtr *nameList, int numNames)
> +{
> +    int longestDomainLength;
> +    size_t i;
> +
> +    longestDomainLength = 0;

This can be done when declaring the variable.

> +
> +    for (i = 0; i < numNames; i++) {
> +        const char *currentDomain = virDomainGetName(nameList[i]);
> +
> +        if (currentDomain != NULL) {
> +            int currentDomainLength = strlen(currentDomain);
> +
> +            if (currentDomainLength > longestDomainLength) {
> +                longestDomainLength = currentDomainLength;
> +            }
> +        }
> +    }
> +
> +    return longestDomainLength;
> +
> +}
>  
>  static int
>  showDomains(virConnectPtr conn)
>  {
> -    int numNames, numInactiveDomains, numActiveDomains;
> +    int numNames, numInactiveDomains, numActiveDomains, longestDomainLength;
>      ssize_t i;
>      int flags = VIR_CONNECT_LIST_DOMAINS_ACTIVE |
>                  VIR_CONNECT_LIST_DOMAINS_INACTIVE;
> @@ -88,9 +112,12 @@ showDomains(virConnectPtr conn)
>          return 1;
>      }
>  
> +    longestDomainLength = longestDomain(nameList, numNames);
> +
>      for (i = 0; i < numNames; i++) {
>          int active = virDomainIsActive(nameList[i]);
> -        printf("  %8s (%s)\n",
> +        printf("  %-*s (%s)\n",
> +                longestDomainLength,

Ooops, misaligned.

>                 virDomainGetName(nameList[i]),
>                 (active == 1 ? "active" : "non-active"));
>          /* must free the returned named per the API documentation */

I'll fix those trivial nits before pushing (we're in a freeze, so after
the release).

Reviewed-by: Michal Privoznik <[email protected]>

Michal

Reply via email to