summaryrefslogtreecommitdiff
path: root/x11-clocks/asclock
diff options
context:
space:
mode:
authorDirk Meyer <dinoex@FreeBSD.org>2008-12-04 20:57:48 +0000
committerDirk Meyer <dinoex@FreeBSD.org>2008-12-04 20:57:48 +0000
commit70dc515711786a04b6929d2788ae4861638d9d60 (patch)
treeeb2a091fb8c59f7ff9c3593a6ed0f8291cea6f59 /x11-clocks/asclock
parent- Update to 1.75 (diff)
- fix buffer overrun at startup
PR: 129326 Submitted by: G. Paul Ziemba
Notes
Notes: svn path=/head/; revision=223782
Diffstat (limited to 'x11-clocks/asclock')
-rw-r--r--x11-clocks/asclock/Makefile2
-rw-r--r--x11-clocks/asclock/files/patch-color76
2 files changed, 77 insertions, 1 deletions
diff --git a/x11-clocks/asclock/Makefile b/x11-clocks/asclock/Makefile
index 37fe0a518c4d..51d829e50321 100644
--- a/x11-clocks/asclock/Makefile
+++ b/x11-clocks/asclock/Makefile
@@ -7,7 +7,7 @@
PORTNAME= asclock
PORTVERSION= 1.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= x11-clocks afterstep
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= applications
diff --git a/x11-clocks/asclock/files/patch-color b/x11-clocks/asclock/files/patch-color
new file mode 100644
index 000000000000..cd2ccfc1eb29
--- /dev/null
+++ b/x11-clocks/asclock/files/patch-color
@@ -0,0 +1,76 @@
+--- asclock.c
++++ work/asclock/asclock.c 2008-11-30 23:32:41.000000000 -0800
+@@ -302,8 +302,8 @@
+ static char **clock_xpm;
+ XColor col;
+ XWindowAttributes attributes;
+- char led1[22];
+- char led2[22];
++ char led1[64];
++ char led2[64];
+ int ret;
+
+ clock_xpm =ONLYSHAPE ? mask_xpm : clk_xpm;
+@@ -317,51 +317,49 @@
+ nocolor("parse",LedColor);
+ }
+
+- sprintf(&led1[0], ". c #%4X%4X%4X", col.red, col.green, col.blue);
+- for(ret=10;ret<22;ret++)
+- if(led1[ret]==' ') led1[ret]='0';
+- led_xpm[2] = &led1[0];
++ sprintf(led1, ". c #%04X%04X%04X", col.red, col.green, col.blue);
++ led_xpm[2] = led1;
+
+ col.red = (col.red /10) *3;
+ col.green = (col.green/10) *3;
+ col.blue = (col.blue /10) *3;
+- sprintf(&led2[0], "X c #%4X%4X%4X", col.red, col.green, col.blue);
+- for(ret=10;ret<22;ret++)
+- if(led2[ret]==' ') led2[ret]='0';
+- led_xpm[3] = &led2[0];
++ sprintf(led2, "X c #%04X%04X%04X", col.red, col.green, col.blue);
++ led_xpm[3] = led2;
+
+ asclock.attributes.valuemask |= (XpmReturnPixels | XpmReturnExtensions);
+ ret = XpmCreatePixmapFromData(dpy, Root, clock_xpm, &asclock.pixmap,
+ &asclock.mask, &asclock.attributes);
+ if(ret != XpmSuccess)
+- {fprintf(stderr, ERR_colorcells);exit(1);}
++ {fprintf(stderr, "1: %s\n", XpmGetErrorString(ret));exit(1);}
+ visible.attributes.valuemask |= (XpmReturnPixels | XpmReturnExtensions);
+ ret = XpmCreatePixmapFromData(dpy, Root, clk_xpm, &visible.pixmap,
+ &visible.mask, &visible.attributes);
++ if(ret != XpmSuccess)
++ {fprintf(stderr, "2: %s\n", XpmGetErrorString(ret));exit(1);}
+
+ led.attributes.valuemask |= (XpmReturnPixels | XpmReturnExtensions);
+ ret = XpmCreatePixmapFromData(dpy, Root, led_xpm, &led.pixmap,
+ &led.mask, &led.attributes);
+ if(ret != XpmSuccess)
+- {fprintf(stderr, ERR_colorcells);exit(1);}
++ {fprintf(stderr, "3: %s\n", XpmGetErrorString(ret));exit(1);}
+
+ month.attributes.valuemask |= (XpmReturnPixels | XpmReturnExtensions);
+ ret = XpmCreatePixmapFromData(dpy, Root, month_xpm, &month.pixmap,
+ &month.mask, &month.attributes);
+ if(ret != XpmSuccess)
+- {fprintf(stderr, ERR_colorcells);exit(1);}
++ {fprintf(stderr, "4: %s\n", XpmGetErrorString(ret));exit(1);}
+
+ date.attributes.valuemask |= (XpmReturnPixels | XpmReturnExtensions);
+ ret = XpmCreatePixmapFromData(dpy, Root, date_xpm, &date.pixmap,
+ &date.mask, &date.attributes);
+ if(ret != XpmSuccess)
+- {fprintf(stderr, ERR_colorcells);exit(1);}
++ {fprintf(stderr, "5: %s\n", XpmGetErrorString(ret));exit(1);}
+
+ weekday.attributes.valuemask |= (XpmReturnPixels | XpmReturnExtensions);
+ ret = XpmCreatePixmapFromData(dpy, Root, weekday_xpm, &weekday.pixmap,
+ &weekday.mask, &weekday.attributes);
+ if(ret != XpmSuccess)
+- {fprintf(stderr, ERR_colorcells);exit(1);}
++ {fprintf(stderr, "6: %s\n", XpmGetErrorString(ret));exit(1);}
+ }
+ /****************************************************************************/
+ /* Removes expose events for a specific window from the queue */