ports/179209: net-im/icb: Fix build with Tcl/Tk 8.6

KATO Tsuguru tkato432 at yahoo.com
Sun Jun 2 18:10:01 UTC 2013


>Number:         179209
>Category:       ports
>Synopsis:       net-im/icb: Fix build with Tcl/Tk 8.6
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jun 02 18:10:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     KATO Tsuguru
>Release:        FreeBSD 8.4-RELEASE i386
>Organization:
>Environment:
>Description:
- Fix build with Tcl/Tk 8.6
- Update MASTER_SITES

New file: 
files/patch-icb__c_hush.c

>How-To-Repeat:
>Fix:

diff -urN /usr/ports/net-im/icb/Makefile net-im/icb/Makefile
--- /usr/ports/net-im/icb/Makefile	2013-05-07 01:37:24.000000000 +0900
+++ net-im/icb/Makefile	2013-06-03 00:00:00.000000000 +0900
@@ -5,7 +5,8 @@
 PORTVERSION=	5.1.0
 PORTREVISION=	4
 CATEGORIES=	net-im tcl
-MASTER_SITES=	http://www.obfuscation.org/icb/
+#MASTER_SITES=	http://www.obfuscation.org/icb/
+MASTER_SITES=	http://fossies.org/linux/misc/old/
 DISTNAME=	c${PORTNAME}-${PORTVERSION}
 
 MAINTAINER=	ports at FreeBSD.org
diff -urN /usr/ports/net-im/icb/files/patch-icb::c_log.c net-im/icb/files/patch-icb::c_log.c
--- /usr/ports/net-im/icb/files/patch-icb::c_log.c	2013-02-08 03:11:04.000000000 +0900
+++ net-im/icb/files/patch-icb::c_log.c	2013-06-03 00:00:00.000000000 +0900
@@ -20,3 +20,46 @@
  
  	/* determine pathname to use */
  	if (path == NULL || *path == '\0') {
+@@ -43,17 +47,17 @@
+ 	/* expand a tilde style path */
+ 	if (*path == '~')
+ 		if ((path = tildexpand(path)) == NULL) {
+-			strcpy(TRET, "c_log: bad login id in path");
++			strcpy(Tcl_GetStringResult(interp), "c_log: bad login id in path");
+ 			return(-1);
+ 		}
+ 	
+ 	/* open the session log */
+ 	if ((logfp = fopen(path, "a")) == NULL) {
+ 		if (errno > sys_nerr)
+-		   sprintf(TRET,
++		   sprintf(Tcl_GetStringResult(interp),
+ 		    "c_log: can't open \"%s\": errno %d", path, errno);
+ 		else
+-		   sprintf(TRET,
++		   sprintf(Tcl_GetStringResult(interp),
+ 		    "c_log: can't open \"%s\": %s", path, strerror(errno));
+ 		return(-1);
+ 	}
+@@ -61,10 +65,10 @@
+ 	/* protect the logfile against others */
+ 	if (fchmod((int)(fileno(logfp)), 0600) != 0) {
+ 		if (errno > sys_nerr)
+-		   sprintf(TRET,
++		   sprintf(Tcl_GetStringResult(interp),
+ 		    "c_log: can't fchmod \"%s\": errno %d", path, errno);
+ 		else
+-		   sprintf(TRET,
++		   sprintf(Tcl_GetStringResult(interp),
+ 		    "c_log: can't fchmod \"%s\": %s", path, strerror(errno));
+ 		fclose(logfp);
+ 		logfp = NULL;
+@@ -146,7 +150,7 @@
+ 				return(TCL_ERROR);
+ 	} else {
+ 		if (logging()) {
+-			sprintf(TRET, "c_log: session logging already on");
++			sprintf(Tcl_GetStringResult(interp), "c_log: session logging already on");
+ 			return(TCL_ERROR);
+ 		} else
+ 			if (startsessionlog(interp, argv[1]) < 0)
diff -urN /usr/ports/net-im/icb/files/patch-icb__c_hush.c net-im/icb/files/patch-icb__c_hush.c
--- /usr/ports/net-im/icb/files/patch-icb__c_hush.c	1970-01-01 09:00:00.000000000 +0900
+++ net-im/icb/files/patch-icb__c_hush.c	2013-06-03 00:00:00.000000000 +0900
@@ -0,0 +1,29 @@
+--- icb/c_hush.c.orig
++++ icb/c_hush.c
+@@ -23,7 +23,7 @@
+ 	while (*nick == ' ' || *nick == '\t') nick++;
+ 
+ 	if (*nick == '\0') {
+-		strcpy(TRET, "c_hush: can't hush a null nickname");
++		strcpy(Tcl_GetStringResult(interp), "c_hush: can't hush a null nickname");
+ 		return(-1);
+ 	}
+ 
+@@ -31,7 +31,7 @@
+ 		*(nick + MAX_NICKLEN) = '\0';
+ 
+ 	if ((hp = strmakenode(strlen(nick))) == NULL) {
+-		strcpy(TRET, "c_hush: out of memory");
++		strcpy(Tcl_GetStringResult(interp), "c_hush: out of memory");
+ 		return(-1);
+ 	}
+ 	strcpy(hp->str, nick);
+@@ -55,7 +55,7 @@
+ 	STRLIST *s;
+ 
+ 	if ((s = strgetnode(nick, hushhead, 1)) == NULL) {
+-		sprintf(TRET, "c_hush: %s is not being hushed", nick);
++		sprintf(Tcl_GetStringResult(interp), "c_hush: %s is not being hushed", nick);
+ 		return(-1);
+ 	}
+ 	sprintf(mbuf, 
diff -urN /usr/ports/net-im/icb/files/patch-icb__oset.c net-im/icb/files/patch-icb__oset.c
--- /usr/ports/net-im/icb/files/patch-icb__oset.c	2013-02-08 03:11:04.000000000 +0900
+++ net-im/icb/files/patch-icb__oset.c	2013-06-03 00:00:00.000000000 +0900
@@ -18,3 +18,47 @@
  			return(TCL_OK);
  		}
  	}
+@@ -109,7 +109,7 @@
+ 	}
+ 
+ 	if (vars[x].name == NULL) {
+-		sprintf(TRET, "oset: no such variable \"%s\"", argv[1]);
++		sprintf(Tcl_GetStringResult(interp), "oset: no such variable \"%s\"", argv[1]);
+ 		return(TCL_ERROR);
+ 	}
+ 
+@@ -278,7 +278,7 @@
+ 	}
+ 
+ 	if (vars[x].name == NULL) {
+-		sprintf(TRET, "ounset: no such variable \"%s\"", argv[1]);
++		sprintf(Tcl_GetStringResult(interp), "ounset: no such variable \"%s\"", argv[1]);
+ 		return(TCL_ERROR);
+ 	}
+ 
+@@ -310,7 +310,7 @@
+ 	case V_NONNEG:
+ 		tmp = atoi(s);
+ 		if (tmp < 0) {
+-			strcpy(TRET, "oset: only non-negative values allowed");
++			strcpy(Tcl_GetStringResult(interp), "oset: only non-negative values allowed");
+ 			return(-1);
+ 		}
+ 		memcpy (address, &tmp, sizeof(int));
+@@ -331,14 +331,14 @@
+ 			*i_addr = (int)0;
+ 			}
+ 		else {
+-			strcpy(TRET, "oset: only boolean values allowed");
++			strcpy(Tcl_GetStringResult(interp), "oset: only boolean values allowed");
+ 			return(-1);
+ 		}
+ 		break;
+ 	case V_STRING:
+ 		tmp = strlen(s) + 1;
+ 		if ((p = malloc(tmp)) == NULL) {
+-			strcpy(TRET, "oset: not enough memory to set string");
++			strcpy(Tcl_GetStringResult(interp), "oset: not enough memory to set string");
+ 			return(-1);
+ 		}
+ 		memcpy (p, s, tmp);
diff -urN /usr/ports/net-im/icb/files/patch-icb__parse.c net-im/icb/files/patch-icb__parse.c
--- /usr/ports/net-im/icb/files/patch-icb__parse.c	2013-02-08 03:11:04.000000000 +0900
+++ net-im/icb/files/patch-icb__parse.c	2013-06-03 00:00:00.000000000 +0900
@@ -11,3 +11,22 @@
  extern Tcl_Interp *interp;
  char *nextword();
  
+@@ -78,14 +82,14 @@
+ 
+ 	/* Print the tcl result. */
+ 	if (result == TCL_OK) {
+-		if (*interp->result != 0)
+-			putl(interp->result, PL_SL);
++		if (Tcl_GetStringResult(interp) != 0)
++			putl(Tcl_GetStringResult(interp), PL_SL);
+ 	} else {
+-		if (interp->result) {
++		if (Tcl_GetStringResult(interp)) {
+ 			sprintf(mbuf, 
+ 				"%s[=Error=] %s%s",
+ 				printcolor(ColERROR, ColSANE),
+-				interp->result,
++				Tcl_GetStringResult(interp),
+ 				printcolor(ColSANE, ColSANE));
+ 			putl(mbuf, PL_SL);
+ 		} else {
diff -urN /usr/ports/net-im/icb/files/patch-icb__tcl.c net-im/icb/files/patch-icb__tcl.c
--- /usr/ports/net-im/icb/files/patch-icb__tcl.c	2013-02-08 03:11:04.000000000 +0900
+++ net-im/icb/files/patch-icb__tcl.c	2013-06-03 00:00:00.000000000 +0900
@@ -10,3 +10,14 @@
  #ifdef HAVE_UNISTD_H
  #include <unistd.h>
  #endif
+@@ -70,8 +73,8 @@
+ 	for (x = 0; defprocs[x] != 0; x++)
+ 		if (Tcl_Eval(interp, defprocs[x]) != TCL_OK) {
+ 			printf("Default binding failed: %s\r\n", defprocs[x]);
+-			if (*interp->result != 0)
+-				puts(interp->result);
++			if (Tcl_GetStringResult(interp) != 0)
++				puts(Tcl_GetStringResult(interp));
+ 		}
+ 
+ }
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-ports-bugs mailing list