commit - f9c8cdb5a6b612f49ee544bba9024081852fdaf1
commit + 0e881c054a76801032e640db3947e0602cfccbeb
blob - 344a7b553ed12a9e93986370d2a9515699e723ef
blob + ed68ed19c1ef8c03eafc35a66d1979ed09a3976c
--- src/cmd/9term/9term.c
+++ src/cmd/9term/9term.c
dir = smprint("%.*S", (el-1)-(sl+3), sl+3);
if(dir){
- drawsetlabel(dir);
- free(w->dir);
- w->dir = dir;
+ if(strcmp(dir, "*9term-hold+") == 0) {
+ w->holding = 1;
+ wrepaint(w);
+ } else {
+ drawsetlabel(dir);
+ free(w->dir);
+ w->dir = dir;
+ }
}
/* remove trailing /-sysname if present */
blob - e5d21416e7880abb2a606e14c19b369d95cbeb0b
blob + e08e032c3999b90059ed5c79d00e70daf9008af6
--- src/cmd/9term/win.c
+++ src/cmd/9term/win.c
return n;
*r = 0;
- /*
- * add /-sysname if not present
- */
- snprint(wdir, sizeof wdir, "name %s", sl+3);
- p = strrchr(wdir, '/');
- if(p==nil || *(p+1) != '-'){
- p = wdir+strlen(wdir);
- if(*(p-1) != '/')
- *p++ = '/';
- *p++ = '-';
- strcpy(p, name);
+ if(strcmp(sl+3, "*9term-hold+") != 0) {
+ /*
+ * add /-sysname if not present
+ */
+ snprint(wdir, sizeof wdir, "name %s", sl+3);
+ p = strrchr(wdir, '/');
+ if(p==nil || *(p+1) != '-'){
+ p = wdir+strlen(wdir);
+ if(*(p-1) != '/')
+ *p++ = '/';
+ *p++ = '-';
+ strcpy(p, name);
+ }
+ strcat(wdir, "\n0\n");
+ fswrite(ctlfd, wdir, strlen(wdir));
}
- strcat(wdir, "\n0\n");
- fswrite(ctlfd, wdir, strlen(wdir));
memmove(sl, el, er-el);
n -= (el-sl);