Plan 9 from Bell Labs’s /usr/web/sources/contrib/uriel/changes/2005/1231/2

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


Better fix for patch applied/acmechord.
Thanks to Arvindht Tamilmani for pointing out the problem.
 [rsc] --rw-rw-r-- M 12721 glenda sys 27870 Dec 31 16:27 sys/src/cmd/acme/text.c
	/n/sourcesdump/2005/1231/plan9/sys/src/cmd/acme/text.c:882,888 - 
	/n/sourcesdump/2006/0101/plan9/sys/src/cmd/acme/text.c:882,888
	  {
	  	uint q0, q1;
	  	int b, x, y;
	- 	int state, op;
	+ 	int state;
	  
	  	selecttext = t;
	  	/*
	/n/sourcesdump/2005/1231/plan9/sys/src/cmd/acme/text.c:938,949 - 
	/n/sourcesdump/2006/0101/plan9/sys/src/cmd/acme/text.c:938,949
	  		clicktext = nil;
	  	textsetselect(t, q0, q1);
	  	flushimage(display, 1);
	- 	state = op = 0;	/* undo when possible; +1 for cut, -1 for paste */
	+ 	state = 0;	/* undo when possible; +1 for cut, -1 for paste */
	  	while(mouse->buttons){
	  		mouse->msec = 0;
	  		b = mouse->buttons;
	- 		if(b & 6){
	- 			if(state==0 && op==0 && t->what==Body){
	+ 		if((b&1) && (b&6)){
	+ 			if(state==0 && t->what==Body){
	  				seq++;
	  				filemark(t->w->body.file);
	  			}
	/n/sourcesdump/2005/1231/plan9/sys/src/cmd/acme/text.c:952,960 - 
	/n/sourcesdump/2006/0101/plan9/sys/src/cmd/acme/text.c:952,960
	  					winundo(t->w, TRUE);
	  					textsetselect(t, q0, t->q0);
	  					state = 0;
	- 				}else if(state != 1 && op != -1){
	+ 				}else if(state != 1){
	  					cut(t, t, nil, TRUE, TRUE, nil, 0);
	- 					op = state = 1;
	+ 					state = 1;
	  				}
	  			}else{
	  				if(state==1 && t->what==Body){
	/n/sourcesdump/2005/1231/plan9/sys/src/cmd/acme/text.c:961,969 - 
	/n/sourcesdump/2006/0101/plan9/sys/src/cmd/acme/text.c:961,969
	  					winundo(t->w, TRUE);
	  					textsetselect(t, q0, t->q1);
	  					state = 0;
	- 				}else if(state != -1 && op != 1){
	+ 				}else if(state != -1){
	  					paste(t, t, nil, TRUE, FALSE, nil, 0);
	- 					op = state = -1;
	+ 					state = -1;
	  				}
	  			}
	  			textscrdraw(t);
 [rsc] --rw-rw-r-- M 12721 glenda sys 28267 Dec 31 16:27 sys/src/cmd/acme/exec.c
	/n/sourcesdump/2005/1231/plan9/sys/src/cmd/acme/exec.c:661,667 - 
	/n/sourcesdump/2006/0101/plan9/sys/src/cmd/acme/exec.c:661,667
	  	Rune *r;
	  
	  	/* use current window if snarfing and its selection is non-null */
	- 	if(et!=nil && dosnarf && et->w!=nil){
	+ 	if(et!=nil && dosnarf && et->w!=nil && t==nil){
	  		if(et->w->body.q1>et->w->body.q0){
	  			t = &et->w->body;
	  			if(docut)
 [rsc] --rw-rw-r-- M 12721 glenda sys 27870 Dec 31 16:27 sys/src/cmd/acme/text.c


Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to webmaster@9p.io.