File procinfo-gcc.dif of Package procinfo

--- routines.c
+++ routines.c	2008-04-25 19:18:18.282206402 +0200
@@ -269,6 +269,11 @@ make_version (FILE * versionfp)
     fseek (versionfp, 0L, SEEK_SET);
     fgets (line, sizeof (line), versionfp);
 
+    there = line;
+    while ((here = strchr(there, '[')))
+	if ((there = strchr(here, ']')))
+	    memset(here, ' ', there-here+1);
+
     ret = sscanf (line, "Linux version %s (%[^)]) (gcc %[^)]) #%s %[^\n]",
 		  ver, host, gcc, compno, date);
 
@@ -277,6 +282,8 @@ make_version (FILE * versionfp)
 		      ver, host, gcc, compno, date);
     if (ret != 5)	/* Maybe even one layer more */
 	ret = sscanf (line, "Linux version %s (%[^)]) (gcc %[^(] (%*[^)]) (%*[^)])) #%s %[^\n]", ver, host, gcc, compno, date);
+    if (ret != 5)	/* Oogh */
+	ret = sscanf (line, "Linux version %s (%[^)]) (gcc %[^(] (%*[^)]) (%*[^)])%*[ ]) #%s %[^\n]", ver, host, gcc, compno, date);
 
     if (ret == 3) {	/* At least we've got ver & host right... */
 	strcpy (gcc, "[can't parse]");
openSUSE Build Service is sponsored by