minor paches from upstream
This commit is contained in:
		
							parent
							
								
									d6ea928029
								
							
						
					
					
						commit
						8ae7f06f34
					
				
							
								
								
									
										16
									
								
								gawk-3.1.5-binmode.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								gawk-3.1.5-binmode.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | |||||||
|  | 
 | ||||||
|  |         * eval.c (set_BINMODE): Fix logic of test for no numeric value. | ||||||
|  |         Makes `gawk -v BINMODE=1 ...' work again. Thanks to Eli Zaretskii | ||||||
|  |         <eliz@gnu.org> for pointing out the problem. | ||||||
|  | 
 | ||||||
|  | --- gawk-3.1.5/eval.c.binmode	2005-12-22 19:05:32.000000000 +0100
 | ||||||
|  | +++ gawk-3.1.5/eval.c	2005-12-22 19:06:40.000000000 +0100
 | ||||||
|  | @@ -2167,7 +2167,7 @@
 | ||||||
|  |  			} | ||||||
|  |  		} | ||||||
|  |   | ||||||
|  | -		if (! digits || (BINMODE_node->var_value->flags & MAYBE_NUM) == 0) {
 | ||||||
|  | +		if (! digits && (BINMODE_node->var_value->flags & MAYBE_NUM) == 0) {
 | ||||||
|  |  			BINMODE = 0; | ||||||
|  |  			if (strcmp(p, "r") == 0) | ||||||
|  |  				BINMODE = 1; | ||||||
							
								
								
									
										37
									
								
								gawk-3.1.5-num2str.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								gawk-3.1.5-num2str.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,37 @@ | |||||||
|  | --- gawk-3.1.5/node.c.num2str	2005-07-26 20:07:43.000000000 +0200
 | ||||||
|  | +++ gawk-3.1.5/node.c	2005-12-22 19:41:55.000000000 +0100
 | ||||||
|  | @@ -151,6 +151,7 @@
 | ||||||
|  |  	register char *sp = buf; | ||||||
|  |  	double val; | ||||||
|  |  	char *orig, *trans, save; | ||||||
|  | +	register long num;
 | ||||||
|  |   | ||||||
|  |  	if (! do_traditional && (s->flags & INTLSTR) != 0) { | ||||||
|  |  		save = s->stptr[s->stlen]; | ||||||
|  | @@ -163,9 +164,12 @@
 | ||||||
|  |  		return tmp_string(trans, strlen(trans)); | ||||||
|  |  	} | ||||||
|  |   | ||||||
|  | -	/* not an integral value, or out of range */
 | ||||||
|  | -	if ((val = double_to_int(s->numbr)) != s->numbr
 | ||||||
|  | -	    || val < LONG_MIN || val > LONG_MAX) {
 | ||||||
|  | +	/* conversion to long overflows, or out of range, or not integral */
 | ||||||
|  | +	val = double_to_int(s->numbr);
 | ||||||
|  | +	num = (long) val;
 | ||||||
|  | +	if (   (s->numbr > 0 && num < 0)
 | ||||||
|  | +	    || (s->numbr < 0 && num > 0)
 | ||||||
|  | +	    || val < LONG_MIN || val > LONG_MAX || val != s->numbr) {
 | ||||||
|  |  		/* | ||||||
|  |  		 * Once upon a time, if GFMT_WORKAROUND wasn't defined, | ||||||
|  |  		 * we just blindly did this: | ||||||
|  | @@ -199,9 +203,7 @@
 | ||||||
|  |   | ||||||
|  |  		goto no_malloc; | ||||||
|  |  	} else { | ||||||
|  | -		/* integral value */
 | ||||||
|  | -	        /* force conversion to long only once */
 | ||||||
|  | -		register long num = (long) val;
 | ||||||
|  | +		/* integral value, in range, too! */
 | ||||||
|  |  		if (num < NVAL && num >= 0) { | ||||||
|  |  			sp = (char *) values[num]; | ||||||
|  |  			s->stlen = 1; | ||||||
							
								
								
									
										12
									
								
								gawk.spec
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								gawk.spec
									
									
									
									
									
								
							| @ -1,7 +1,7 @@ | |||||||
| Summary: The GNU version of the awk text processing utility. | Summary: The GNU version of the awk text processing utility. | ||||||
| Name: gawk | Name: gawk | ||||||
| Version: 3.1.5 | Version: 3.1.5 | ||||||
| Release: 4.1 | Release: 5 | ||||||
| License: GPL | License: GPL | ||||||
| Group: Applications/Text | Group: Applications/Text | ||||||
| Source0: ftp://ftp.gnu.org/gnu/gawk/gawk-%{version}.tar.bz2 | Source0: ftp://ftp.gnu.org/gnu/gawk/gawk-%{version}.tar.bz2 | ||||||
| @ -13,6 +13,8 @@ Buildroot: %{_tmppath}/%{name}-root | |||||||
| Patch1: gawk-3.1.3-getpgrp_void.patch | Patch1: gawk-3.1.3-getpgrp_void.patch | ||||||
| Patch2: gawk-3.1.5-free.patch | Patch2: gawk-3.1.5-free.patch | ||||||
| Patch3: gawk-3.1.5-fieldwidths.patch | Patch3: gawk-3.1.5-fieldwidths.patch | ||||||
|  | Patch4:	gawk-3.1.5-binmode.patch | ||||||
|  | Patch5: gawk-3.1.5-num2str.patch | ||||||
| 
 | 
 | ||||||
| %description | %description | ||||||
| The gawk packages contains the GNU version of awk, a text processing | The gawk packages contains the GNU version of awk, a text processing | ||||||
| @ -27,6 +29,8 @@ considered to be a standard Linux tool for processing text. | |||||||
| %patch1 -p1 -b .getpgrp_void | %patch1 -p1 -b .getpgrp_void | ||||||
| %patch2 -p1 -b .free | %patch2 -p1 -b .free | ||||||
| %patch3 -p1 -b .fieldwidths | %patch3 -p1 -b .fieldwidths | ||||||
|  | %patch4 -p1 -b .binmode | ||||||
|  | %patch5 -p1 -b .num2str | ||||||
| 
 | 
 | ||||||
| %build | %build | ||||||
| %configure | %configure | ||||||
| @ -75,12 +79,16 @@ fi | |||||||
| %{_datadir}/awk | %{_datadir}/awk | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Thu Dec 22 2005 Karel Zak <kzak@redhat.com> 3.1.5-5 | ||||||
|  | - fix "gawk -v BINMODE=1" (patch by Aharon Robbins) | ||||||
|  | - fix conversion from large number to string (patch by Aharon Robbins) | ||||||
|  | 
 | ||||||
| * Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com> | * Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com> | ||||||
| - rebuilt | - rebuilt | ||||||
| 
 | 
 | ||||||
| * Sun Oct  9 2005 Karel Zak <kzak@redhat.com> 3.1.5-4 | * Sun Oct  9 2005 Karel Zak <kzak@redhat.com> 3.1.5-4 | ||||||
| - fix off-by-one error in assignment of sentinel value at  | - fix off-by-one error in assignment of sentinel value at  | ||||||
|   end of FIELDWIDTHS array. (patch by - upstream - Aharon Robbins) |   end of FIELDWIDTHS array. (patch by Aharon Robbins) | ||||||
| 
 | 
 | ||||||
| * Tue Sep 27 2005 Karel Zak <kzak@redhat.com> 3.1.5-3 | * Tue Sep 27 2005 Karel Zak <kzak@redhat.com> 3.1.5-3 | ||||||
| - fix #169374 - Invalid Free (patch by Aharon Robbins) | - fix #169374 - Invalid Free (patch by Aharon Robbins) | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user