Warning: Attempt to read property "date" on null in /usr/local/www/websvn.planix.org/blame.php on line 247

Warning: Attempt to read property "msg" on null in /usr/local/www/websvn.planix.org/blame.php on line 247
WebSVN – planix.SVN – Blame – /os/branches/feature_unix/acme/bin/source/mkwnew.c – Rev 2

Subversion Repositories planix.SVN

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
#include <u.h>
2
#include <libc.h>
3
 
4
void
5
main(int argc, char *argv[])
6
{
7
	int i, fd, pid, n;
8
	char wdir[256];
9
	int dflag;
10
 
11
	dflag = 0;
12
	ARGBEGIN{
13
	case 'd':
14
		dflag = 1;
15
		break;
16
	default:
17
		fprint(2, "usage: wnew [-d] [label]\n");
18
	}ARGEND
19
 
20
	pid = getpid();
21
	wdir[0] = '\0';
22
	if(!dflag)
23
		getwd(wdir, sizeof wdir);
24
	if(argc>0)
25
		for(i=0; i<argc; i++)
26
			snprint(wdir, sizeof wdir, "%s%c%s", wdir, i==0? '/' : '-', argv[i]);
27
	else
28
		snprint(wdir, sizeof wdir, "%s/-win", wdir);
29
 
30
	if((fd = open("/dev/wnew", ORDWR)) < 0)
31
		sysfatal("wnew: can't open /dev/wnew: %r");
32
 
33
	if(fprint(fd, "%d %s", pid, wdir+dflag) < 0)
34
		sysfatal("wnew: can't create window: %r");
35
 
36
	if(seek(fd, 0, 0) != 0)
37
		sysfatal("wnew: can't seek: %r");
38
 
39
	if((n=read(fd, wdir, sizeof wdir-1)) < 0)
40
		sysfatal("wnew: can't read window id: %r");
41
	wdir[n] = '\0';
42
 
43
	print("%s\n", wdir);
44
	exits(nil);
45
}