git: plan9front

Download patch

ref: f2f19dd888da68f3513f43d493dfc98ca18209ce
parent: 061d55111b677de4810fa8fd4a8f05907adaef8b
author: cinap_lenrek <cinap_lenrek@rei2.9hal>
date: Tue Feb 7 23:09:48 EST 2012

rc: change plan9 envname limit to 128, cleanup

--- a/sys/src/cmd/rc/code.c
+++ b/sys/src/cmd/rc/code.c
@@ -22,10 +22,7 @@
 morecode(void)
 {
 	ncode+=100;
-	codebuf = (code *)realloc((char *)codebuf, ncode*sizeof codebuf[0]);
-	if(codebuf==0)
-		panic("Can't realloc %d bytes in morecode!",
-				ncode*sizeof codebuf[0]);
+	codebuf = (code *)erealloc((char *)codebuf, ncode*sizeof codebuf[0]);
 	return 0;
 }
 
--- a/sys/src/cmd/rc/havefork.c
+++ b/sys/src/cmd/rc/havefork.c
@@ -71,15 +71,6 @@
 	}
 }
 
-char*
-erealloc(char *p, long n)
-{
-	p = realloc(p, n);		/* botch, should be Realloc */
-	if(p==0)
-		panic("Can't realloc %d bytes\n", n);
-	return p;
-}
-
 /*
  * Who should wait for the exit from the fork?
  */
--- a/sys/src/cmd/rc/haventfork.c
+++ b/sys/src/cmd/rc/haventfork.c
@@ -51,15 +51,6 @@
 	setvar("apid", newword(buf, (word *)0));
 }
 
-char*
-erealloc(char *p, long n)
-{
-	p = realloc(p, n);		/* botch, should be Realloc */
-	if(p==0)
-		panic("Can't realloc %d bytes\n", n);
-	return p;
-}
-
 enum { Stralloc = 100, };
 
 void
@@ -227,4 +218,4 @@
 	}
 	free(argv);
 	return -1;
-}
\ No newline at end of file
+}
--- a/sys/src/cmd/rc/io.c
+++ b/sys/src/cmd/rc/io.c
@@ -178,9 +178,7 @@
 
 	if(f->strp){
 		n = f->ebuf - f->strp;
-		f->strp = realloc(f->strp, n+Stralloc+1);
-		if(f->strp==0)
-			panic("Can't realloc %d bytes in flush!", n+Stralloc+1);
+		f->strp = erealloc(f->strp, n+Stralloc+1);
 		f->bufp = f->strp + n;
 		f->ebuf = f->bufp + Stralloc;
 		memset(f->bufp, '\0', Stralloc+1);
--- a/sys/src/cmd/rc/plan9.c
+++ b/sys/src/cmd/rc/plan9.c
@@ -10,7 +10,7 @@
 #include "getflags.h"
 
 enum {
-	Maxenvname = 256,	/* undocumented limit */
+	Maxenvname = 128,	/* undocumented limit */
 };
 
 char *Signame[] = {
@@ -622,6 +622,12 @@
 	return malloc(n);
 }
 
+void*
+Realloc(void *p, ulong n)
+{
+	return realloc(p, n);
+}
+
 int *waitpids;
 int nwaitpids;
 
@@ -628,9 +634,7 @@
 void
 addwaitpid(int pid)
 {
-	waitpids = realloc(waitpids, (nwaitpids+1)*sizeof waitpids[0]);
-	if(waitpids == 0)
-		panic("Can't realloc %d waitpids", nwaitpids+1);
+	waitpids = erealloc(waitpids, (nwaitpids+1)*sizeof waitpids[0]);
 	waitpids[nwaitpids++] = pid;
 }
 
--- a/sys/src/cmd/rc/rc.h
+++ b/sys/src/cmd/rc/rc.h
@@ -97,8 +97,11 @@
 
 #define	new(type)	((type *)emalloc(sizeof(type)))
 
-void *emalloc(long);
 void *Malloc(ulong);
+void *Realloc(void *, ulong);
+
+void *emalloc(long);
+void *erealloc(void *, long);
 void efree(void *);
 
 #define	NOFILE	128		/* should come from <param.h> */
--- a/sys/src/cmd/rc/subr.c
+++ b/sys/src/cmd/rc/subr.c
@@ -7,10 +7,18 @@
 emalloc(long n)
 {
 	void *p = Malloc(n);
-
 	if(p==0)
 		panic("Can't malloc %d bytes", n);
 /*	if(err){ pfmt(err, "malloc %d->%p\n", n, p); flush(err); } /**/
+	return p;
+}
+
+void*
+erealloc(void *p, long n)
+{
+	p = Realloc(p, n);		/* botch, should be Realloc */
+	if(p==0)
+		panic("Can't realloc %d bytes\n", n);
 	return p;
 }
 
--- a/sys/src/cmd/rc/unix.c
+++ b/sys/src/cmd/rc/unix.c
@@ -467,3 +467,9 @@
 {
 	return (void *)malloc(n);
 }
+
+void*
+Realloc(void *p, ulong n)
+{
+	return realloc(p, n);
+}
--- a/sys/src/cmd/rc/win32.c
+++ b/sys/src/cmd/rc/win32.c
@@ -558,3 +558,9 @@
 {
 	return malloc(n);
 }
+
+void*
+Realloc(void *p, ulong n)
+{
+	return realloc(p, n);
+}
--