summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@rei2.9hal>2012-02-11 02:00:44 +0100
committercinap_lenrek <cinap_lenrek@rei2.9hal>2012-02-11 02:00:44 +0100
commitb9ff604c31a0b9e34c2c529a5e27454edbbf9fab (patch)
tree265181f2ac03aaefdba3cdda533e87fde8081e06
parente283619ecb1ef7594fc25f57e7a0d6773330d134 (diff)
downloadplan9front-b9ff604c31a0b9e34c2c529a5e27454edbbf9fab.tar.xz
mothra: use aux/statusmsg to display download window, add aux/statusmsg to mkfile
-rw-r--r--sys/src/cmd/aux/mkfile1
-rw-r--r--sys/src/cmd/mothra/mothra.c25
2 files changed, 9 insertions, 17 deletions
diff --git a/sys/src/cmd/aux/mkfile b/sys/src/cmd/aux/mkfile
index 3cc2a3dd0..4299dbfda 100644
--- a/sys/src/cmd/aux/mkfile
+++ b/sys/src/cmd/aux/mkfile
@@ -33,6 +33,7 @@ TARG=\
searchfs\
seek\
statusbar\
+ statusmsg\
stub\
tablet\
timesync\
diff --git a/sys/src/cmd/mothra/mothra.c b/sys/src/cmd/mothra/mothra.c
index 70f05c155..188c6acc3 100644
--- a/sys/src/cmd/mothra/mothra.c
+++ b/sys/src/cmd/mothra/mothra.c
@@ -265,6 +265,8 @@ void main(int argc, char *argv[]){
char *url;
int errfile;
int i;
+
+ quotefmtinstall();
ARGBEGIN{
case 'd': debug++; break;
case 'v': verbose=1; break;
@@ -551,7 +553,7 @@ char *arg(char *s){
return s;
}
void save(int ifd, char *name){
- char buf[NNAME];
+ char buf[NNAME+64];
int cfd, ofd;
if(ifd < 0){
message("save: %s: %r", name);
@@ -571,22 +573,11 @@ void save(int ifd, char *name){
close(ifd);
dup(ofd, 1);
close(ofd);
- snprint(buf, sizeof(buf), "-pid %d", getpid());
- if(newwindow(buf) != -1){
- close(2); open("/dev/cons", OWRITE);
- if((cfd = open("/dev/label", OWRITE)) >= 0){
- fprint(cfd, "save %s", name);
- close(cfd);
- }
- if((cfd = open("/dev/wctl", OWRITE)) >= 0){
- fprint(cfd, "scroll\n");
- close(cfd);
- }
- fprint(2, "save %s...\n", name);
- execl("/bin/tput", "tput", "-p", nil);
- }
- execl("/bin/cat", "cat", nil);
- exits(0);
+
+ snprint(buf, sizeof(buf),
+ "{tput -p || cat} |[2] {aux/statusmsg -k %q >/dev/null || cat >/dev/null}", name);
+ execl("/bin/rc", "rc", "-c", buf, nil);
+ exits("exec");
}
close(ifd);
close(ofd);