x11, used, etc.
diff --git a/man/man1/install.1 b/man/man1/install.1
index 172bd8e..ce30127 100644
--- a/man/man1/install.1
+++ b/man/man1/install.1
@@ -71,7 +71,7 @@
 If 
 .B LOCAL.config
 contains a line
-.B WSYS=nowsys
+.B WSYSTYPE=nowsys
 then the system is built without using X11.
 .SH FILES
 .TP
diff --git a/src/cmd/9pserve.c b/src/cmd/9pserve.c
index 1e222ab..65bf23d 100644
--- a/src/cmd/9pserve.c
+++ b/src/cmd/9pserve.c
@@ -123,7 +123,7 @@
 int timefmt(Fmt*);
 void dorootstat(void);
 int stripudirread(Msg*);
-int stripustat(Fcall*, uchar**, int);
+int cvtustat(Fcall*, uchar**, int);
 
 void
 usage(void)
@@ -464,7 +464,7 @@
 			}
 			m->fid->ref++;
 			if(m->tx.type==Twstat && dotu && !c->dotu){
-				if(stripustat(&m->tx, &m->tpkt, 1) < 0){
+				if(cvtustat(&m->tx, &m->tpkt, 1) < 0){
 					err(m, "cannot convert stat buffer");
 					continue;
 				}
@@ -790,7 +790,7 @@
 			break;
 		case Tstat:
 			if(!err && dotu && !m->c->dotu)
-				stripustat(&m->rx, &m->rpkt, 0);
+				cvtustat(&m->rx, &m->rpkt, 0);
 			break;
 		case Topen:
 		case Tcreate:
@@ -802,6 +802,7 @@
 			m->rx.ename = ename;
 			repack(&m->rx, &m->rpkt, c->dotu);
 			free(ename);
+			m->rx.ename = "XXX";
 		}
 		if(delhash(m->c->tag, m->ctag, m) == 0)
 			msgput(m);
@@ -973,6 +974,7 @@
 
 Msg **msgtab;
 int nmsgtab;
+int nmsg;
 Msg *freemsg;
 
 void
@@ -999,6 +1001,7 @@
 	m->ref = 1;
 	if(verbose > 1) fprint(2, "%T msgnew @0x%lux %p tag %d ref %d\n",
 		getcallerpc(&x), m, m->tag, m->ref);
+	nmsg++;
 	return m;
 }
 
@@ -1050,6 +1053,7 @@
 	assert(m->ref > 0);
 	if(--m->ref > 0)
 		return;
+	nmsg--;
 	msgclear(m);
 	if(m->tpkt){
 		free(m->tpkt);
@@ -1141,6 +1145,7 @@
 	e = emalloc(sizeof(Qel));
 	qlock(&q->lk);
 	if(q->hungup){
+		free(e);
 		werrstr("hungup queue");
 		qunlock(&q->lk);
 		return -1;
@@ -1376,7 +1381,7 @@
 }
 
 int
-stripustat(Fcall *f, uchar **fpkt, int s2u)
+cvtustat(Fcall *f, uchar **fpkt, int tounix)
 {
 	int n;
 	uchar *buf;
@@ -1384,20 +1389,21 @@
 	Dir dir;
 
 	str = emalloc(f->nstat);
-	n = convM2Du(f->stat, f->nstat, &dir, str, s2u);
-	if(n <= BIT16SZ)
+	n = convM2Du(f->stat, f->nstat, &dir, str, !tounix);
+	if(n <= BIT16SZ){
+		free(str);
 		return -1;
-	n = sizeD2Mu(&dir, !s2u);
-	buf = emalloc(n);
+	}
 
-	n = convD2Mu(&dir, buf, n, !s2u);
-	if(n <= BIT16SZ)
-		return -1;
+	n = sizeD2Mu(&dir, tounix);
+	buf = emalloc(n);
+	convD2Mu(&dir, f->stat, n, tounix);
 	f->nstat = n;
 	f->stat = buf;
 
 	repack(f, fpkt, dotu);
 	free(buf);
+	f->stat = nil;	/* is this okay ??? */
 	free(str);
 
 	return 0;
@@ -1454,6 +1460,7 @@
 	repack(&msg->rx, &msg->rpkt, 0);
 	free(str);
 	free(buf);
+	rx->data = nil;	/* is this okay ??? */
 
 	return 0;
 }
diff --git a/src/libdraw/mkwsysrules.sh b/src/libdraw/mkwsysrules.sh
index f5cf9ca..7263866 100644
--- a/src/libdraw/mkwsysrules.sh
+++ b/src/libdraw/mkwsysrules.sh
@@ -17,19 +17,27 @@
 fi
 
 if [ "x$WSYSTYPE" = "x" ]; then
-	if [ -d "$X11/include" ]; then
+	if [ -d "$X11" ]; then
 		WSYSTYPE=x11
 	else
 		WSYSTYPE=nowsys
 	fi
 fi
 
+if [ "x$WSYSTYPE" = "xX11" -a "x$X11H" = "x" ]; then
+	if [ -d "$X11/include" ]; then
+		X11H="-I$X11/include"
+	else
+		X11H=""
+	fi
+fi
+	
+
 echo 'WSYSTYPE='$WSYSTYPE
 echo 'X11='$X11
 
 if [ $WSYSTYPE = x11 ]; then
-	echo 'CFLAGS=$CFLAGS -I$X11/include'
+	echo 'CFLAGS=$CFLAGS $X11H'
 	echo 'HFILES=$HFILES $XHFILES'
 fi
 
-
diff --git a/src/libdraw/nowsys-wsys.c b/src/libdraw/nowsys-wsys.c
index 2127dca..c5b50ad 100644
--- a/src/libdraw/nowsys-wsys.c
+++ b/src/libdraw/nowsys-wsys.c
@@ -17,8 +17,6 @@
 
 void
 drawresizewindow(Rectangle r)
-{
-	USED(r);
-	
+{	
 	bad();
 }