cygcheck output alignment

Igor Pechtchanski pechtcha@cs.nyu.edu
Fri Feb 7 19:55:00 GMT 2003


Hi all,

This patch fixes the badly aligned output of "cygcheck -c".
	Igor
=======================================================================
ChangeLog:
2003-02-07  Igor Pechtchanski <pechtcha@cs.nyu.edu>

	* dump_setup.cc (dump_setup): Compute the longest
	package name and align columns properly.

-- 
				http://cs.nyu.edu/~pechtcha/
      |\      _,,,---,,_		pechtcha@cs.nyu.edu
ZZZzz /,`.-'`'    -.  ;-;;,_		igor@watson.ibm.com
     |,4-  ) )-,_. ,\ (  `'-'		Igor Pechtchanski
    '---''(_/--'  `-'\_) fL	a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

Oh, boy, virtual memory! Now I'm gonna make myself a really *big* RAMdisk!
  -- /usr/games/fortune
-------------- next part --------------
Index: winsup/utils/dump_setup.cc
===================================================================
RCS file: /cvs/src/src/winsup/utils/dump_setup.cc,v
retrieving revision 1.4
diff -u -p -r1.4 dump_setup.cc
--- winsup/utils/dump_setup.cc	29 Jan 2002 18:37:00 -0000	1.4
+++ winsup/utils/dump_setup.cc	7 Feb 2003 19:51:01 -0000
@@ -204,7 +204,6 @@ dump_setup (int verbose, char **argv, bo
   pkgver *packages;
 
   packages = (pkgver *) calloc (nlines, sizeof(packages[0]));
-  printf ("%-*s%-*s\n", package_len, "Package", version_len, "Version");
   int n;
   for (n = 0; fgets (buf, 4096, fp) && n < nlines;)
     {
@@ -225,7 +224,13 @@ dump_setup (int verbose, char **argv, bo
 	  strcpy (packages[n].name , package);
 	  if (f.what[0])
 	    strcat (strcat (packages[n].name, "-"), f.what);
+	  int pkg_len = strlen(packages[n].name);
+	  if (package_len < pkg_len+1)
+	    package_len = pkg_len+1;
 	  packages[n].ver = strdup (f.ver);
+	  int ver_len = strlen(packages[n].ver);
+	  if (version_len < ver_len+1)
+	    version_len = ver_len+1;
 	  n++;
 	  if (strtok (NULL, " ") == NULL)
 	    break;
@@ -234,6 +239,7 @@ dump_setup (int verbose, char **argv, bo
 
   qsort (packages, n, sizeof (packages[0]), compar);
 
+  printf ("%-*s%-*s\n", package_len, "Package", version_len, "Version");
   for (int i = 0; i < n; i++)
     printf ("%-*s%-*s\n", package_len, packages[i].name,
 			  version_len, packages[i].ver);


More information about the Cygwin-patches mailing list