Browse Source

Plan 9 from Bell Labs 2004-05-15

David du Colombier 20 years ago
parent
commit
e0d855056f
5 changed files with 16 additions and 8 deletions
  1. 3 3
      dist/replica/_plan9.db
  2. 3 3
      dist/replica/plan9.db
  3. 3 0
      dist/replica/plan9.log
  4. 3 1
      sys/src/cmd/acme/rows.c
  5. 4 1
      sys/src/cmd/acme/text.c

+ 3 - 3
dist/replica/_plan9.db

@@ -527,7 +527,7 @@
 386/lib/libauthsrv.a - 664 sys sys 1077636970 33806
 386/lib/libbin.a - 664 sys sys 1073851265 2556
 386/lib/libbio.a - 664 sys sys 1073851265 28338
-386/lib/libc.a - 664 sys sys 1084329149 504790
+386/lib/libc.a - 664 sys sys 1084509809 495150
 386/lib/libcomplete.a - 664 sys sys 1076817073 6312
 386/lib/libcontrol.a - 664 sys sys 1073851267 242856
 386/lib/libdisk.a - 664 sys sys 1073851267 43536
@@ -6835,9 +6835,9 @@ sys/src/cmd/acme/fsys.c - 664 sys sys 1079102915 12799
 sys/src/cmd/acme/look.c - 664 sys sys 1077376257 14213
 sys/src/cmd/acme/mkfile - 664 sys sys 1058463682 543
 sys/src/cmd/acme/regx.c - 664 sys sys 1014926094 16057
-sys/src/cmd/acme/rows.c - 664 sys sys 1068140772 14637
+sys/src/cmd/acme/rows.c - 664 sys sys 1084542482 14664
 sys/src/cmd/acme/scrl.c - 664 sys sys 1014926095 3072
-sys/src/cmd/acme/text.c - 664 sys sys 1081200110 27335
+sys/src/cmd/acme/text.c - 664 sys sys 1084542489 27383
 sys/src/cmd/acme/time.c - 664 sys sys 1014926095 1783
 sys/src/cmd/acme/util.c - 664 sys sys 1079102916 7412
 sys/src/cmd/acme/wind.c - 664 sys sys 1082924470 11115

+ 3 - 3
dist/replica/plan9.db

@@ -527,7 +527,7 @@
 386/lib/libauthsrv.a - 664 sys sys 1077636970 33806
 386/lib/libbin.a - 664 sys sys 1073851265 2556
 386/lib/libbio.a - 664 sys sys 1073851265 28338
-386/lib/libc.a - 664 sys sys 1084329149 504790
+386/lib/libc.a - 664 sys sys 1084509809 495150
 386/lib/libcomplete.a - 664 sys sys 1076817073 6312
 386/lib/libcontrol.a - 664 sys sys 1073851267 242856
 386/lib/libdisk.a - 664 sys sys 1073851267 43536
@@ -6835,9 +6835,9 @@ sys/src/cmd/acme/fsys.c - 664 sys sys 1079102915 12799
 sys/src/cmd/acme/look.c - 664 sys sys 1077376257 14213
 sys/src/cmd/acme/mkfile - 664 sys sys 1058463682 543
 sys/src/cmd/acme/regx.c - 664 sys sys 1014926094 16057
-sys/src/cmd/acme/rows.c - 664 sys sys 1068140772 14637
+sys/src/cmd/acme/rows.c - 664 sys sys 1084542482 14664
 sys/src/cmd/acme/scrl.c - 664 sys sys 1014926095 3072
-sys/src/cmd/acme/text.c - 664 sys sys 1081200110 27335
+sys/src/cmd/acme/text.c - 664 sys sys 1084542489 27383
 sys/src/cmd/acme/time.c - 664 sys sys 1014926095 1783
 sys/src/cmd/acme/util.c - 664 sys sys 1079102916 7412
 sys/src/cmd/acme/wind.c - 664 sys sys 1082924470 11115

+ 3 - 0
dist/replica/plan9.log

@@ -15106,3 +15106,6 @@
 1084476697 23 d sys/src/9/port/realtimesub.c - 664 sys sys 1055688540 0
 1084501902 0 c 386/bin/8c - 775 sys sys 1084500899 340960
 1084501902 1 c sys/src/cmd/8c/machcap.c - 664 sys sys 1084500824 944
+1084510904 0 c 386/lib/libc.a - 664 sys sys 1084509809 495150
+1084543307 0 c sys/src/cmd/acme/rows.c - 664 sys sys 1084542482 14664
+1084543307 1 c sys/src/cmd/acme/text.c - 664 sys sys 1084542489 27383

+ 3 - 1
sys/src/cmd/acme/rows.c

@@ -652,12 +652,12 @@ rowload(Row *row, char *file, int initing)
 				break;
 		wincleartag(w);
 		textinsert(&w->tag, w->tag.file->nc, r+n+1, nr-(n+1), TRUE);
-		free(r);
 		if(ndumped >= 0){
 			/* simplest thing is to put it in a file and load that */
 			sprint(buf, "/tmp/d%d.%.4sacme", getpid(), getuser());
 			fd = create(buf, OWRITE|ORCLOSE, 0600);
 			if(fd < 0){
+				free(r);
 				warning(nil, "can't create temp file: %r\n");
 				goto Rescue2;
 			}
@@ -668,6 +668,7 @@ rowload(Row *row, char *file, int initing)
 				if(rune == '\n')
 					line++;
 				if(rune == Beof){
+					free(r);
 					Bterm(bout);
 					free(bout);
 					close(fd);
@@ -689,6 +690,7 @@ rowload(Row *row, char *file, int initing)
 			fontx(&w->body, nil, nil, 0, 0, fontr, nfontr);
 			free(fontr);
 		}
+		free(r);
 		if(q0>w->body.file->nc || q1>w->body.file->nc || q0>q1)
 			q0 = q1 = 0;
 		textshow(&w->body, q0, q1, 1);

+ 4 - 1
sys/src/cmd/acme/text.c

@@ -962,8 +962,11 @@ textshow(Text *t, uint q0, uint q1, int doselect)
 	int nl;
 	uint q;
 
-	if(t->what != Body)
+	if(t->what != Body){
+		if(doselect)
+			textsetselect(t, q0, q1);
 		return;
+	}
 	if(t->w!=nil && t->maxlines==0)
 		colgrow(t->col, t->w, 1);
 	if(doselect)