Hi, hiro!
If You are the subscriber and member of suckless mailing list, would You please report about this mis-patch there? If it will not take much of Your time, of course.
Hi, Rich!
I've made some testing, and the results are the next:
-rwxr-xr-x 1 tc staff 59916 Nov 2 19:44 st
-rwxr-xr-x 1 tc staff 48944 Nov 2 19:47 st
--- x.c.orig
+++ x.c
@@ -1980,6 +1980,9 @@
int
main(int argc, char *argv[])
{
+ int i;
+ char *colval, *coln, *endptr;
+
xw.l = xw.t = 0;
xw.isfixed = False;
xsetcursor(cursorshape);
@@ -2023,6 +2026,17 @@
break;
case 'v':
die("%s " VERSION "\n", argv0);
+ break;
+ case 'C':
+ colval = strtok(EARGF(usage()), "@");
+ coln = strtok(NULL, "@");
+ errno=0;
+ endptr=NULL;
+ i=strtol(coln, &endptr, 10);
+ if((errno != 0) || (coln == endptr))
+ usage();
+ if(( i >= 0) && (i < (sizeof(colorname)/sizeof(char *))))
+ colorname[i] = colval;
break;
default:
usage();
-rwxr-xr-x 1 tc staff 61008 Nov 2 19:51 st
-rwxr-xr-x 1 tc staff 50004 Nov 2 19:53 st
--- x.c.orig
+++ x.c
@@ -1980,6 +1980,9 @@
int
main(int argc, char *argv[])
{
+ unsigned int i;
+ char *colval, *coln;
+
xw.l = xw.t = 0;
xw.isfixed = False;
xsetcursor(cursorshape);
@@ -2023,6 +2026,13 @@
break;
case 'v':
die("%s " VERSION "\n", argv0);
+ break;
+ case 'C':
+ colval = strtok(EARGF(usage()), "@");
+ coln = strtok(NULL, "@");
+ if((!coln) || (!sscanf(coln,"%u",&i)) || (i >= (sizeof(colorname)/sizeof(char *))))
+ usage();
+ colorname[i] = colval;
break;
default:
usage();
-rwxr-xr-x 1 tc staff 61052 Nov 2 20:01 st
-rwxr-xr-x 1 tc staff 50004 Nov 2 20:01 st
Pairs of st sizes are before and after sstriping.
Thanks for strtol description, I will gratefully take it into consideration, using such basic tools must be correct, thanks! Primarily I use libc.pdf from GNU, but mans on library functions appear to be easier in perception, I will use them too, thanks again.