Anonymous avatar Anonymous committed 39de2fc

#i10000# remove obsolete dtoa.patch

Comments (0)

Files changed (2)

nss/dtoa.patch

---- misc/mozilla/nsprpub/pr/src/misc/prdtoa.c	20 Mar 2009 03:41:21 -0000	4.7
-+++ misc/build/mozilla/nsprpub/pr/src/misc/prdtoa.c	15 Sep 2009 00:10:20 -0000
-@@ -169,17 +169,22 @@ void _PR_CleanupDtoa(void)
-  *	Llong, #define #ULLong to be the corresponding unsigned type.
-  * #define KR_headers for old-style C function headers.
-  * #define Bad_float_h if your system lacks a float.h or if it does not
-  *	define some or all of DBL_DIG, DBL_MAX_10_EXP, DBL_MAX_EXP,
-  *	FLT_RADIX, FLT_ROUNDS, and DBL_MAX.
-  * #define MALLOC your_malloc, where your_malloc(n) acts like malloc(n)
-  *	if memory is available and otherwise does something you deem
-  *	appropriate.  If MALLOC is undefined, malloc will be invoked
-- *	directly -- and assumed always to succeed.
-+ *	directly -- and assumed always to succeed.  Similarly, if you
-+ *	want something other than the system's free() to be called to
-+ *	recycle memory acquired from MALLOC, #define FREE to be the
-+ *	name of the alternate routine.  (FREE or free is only called in
-+ *	pathological cases, e.g., in a dtoa call after a dtoa return in
-+ *	mode 3 with thousands of digits requested.)
-  * #define Omit_Private_Memory to omit logic (added Jan. 1998) for making
-  *	memory allocations from a private pool of memory when possible.
-  *	When used, the private pool is PRIVATE_MEM bytes long:  2304 bytes,
-  *	unless #defined to be a different length.  This default length
-  *	suffices to get rid of MALLOC calls except for unusual cases,
-  *	such as decimal-to-binary conversion of a very long string of
-  *	digits.  The longest string dtoa can return is about 751 bytes
-  *	long.  For conversions by strtod of strings of 800 digits and
-@@ -553,17 +558,17 @@ extern double rnd_prod(double, double), 
- #endif
- #endif /* NO_LONG_LONG */
- 
- #ifndef MULTIPLE_THREADS
- #define ACQUIRE_DTOA_LOCK(n)	/*nothing*/
- #define FREE_DTOA_LOCK(n)	/*nothing*/
- #endif
- 
--#define Kmax 15
-+#define Kmax 7
- 
-  struct
- Bigint {
- 	struct Bigint *next;
- 	int k, maxwds, sign, wds;
- 	ULong x[1];
- 	};
- 
-@@ -581,27 +586,28 @@ Balloc
- {
- 	int x;
- 	Bigint *rv;
- #ifndef Omit_Private_Memory
- 	unsigned int len;
- #endif
- 
- 	ACQUIRE_DTOA_LOCK(0);
--	if (rv = freelist[k]) {
-+	/* The k > Kmax case does not need ACQUIRE_DTOA_LOCK(0), */
-+	/* but this case seems very unlikely. */
-+	if (k <= Kmax && (rv = freelist[k]))
- 		freelist[k] = rv->next;
--		}
- 	else {
- 		x = 1 << k;
- #ifdef Omit_Private_Memory
- 		rv = (Bigint *)MALLOC(sizeof(Bigint) + (x-1)*sizeof(ULong));
- #else
- 		len = (sizeof(Bigint) + (x-1)*sizeof(ULong) + sizeof(double) - 1)
- 			/sizeof(double);
--		if (pmem_next - private_mem + len <= PRIVATE_mem) {
-+		if (k <= Kmax && pmem_next - private_mem + len <= PRIVATE_mem) {
- 			rv = (Bigint*)pmem_next;
- 			pmem_next += len;
- 			}
- 		else
- 			rv = (Bigint*)MALLOC(len*sizeof(double));
- #endif
- 		rv->k = k;
- 		rv->maxwds = x;
-@@ -615,20 +621,28 @@ Balloc
- Bfree
- #ifdef KR_headers
- 	(v) Bigint *v;
- #else
- 	(Bigint *v)
- #endif
- {
- 	if (v) {
--		ACQUIRE_DTOA_LOCK(0);
--		v->next = freelist[v->k];
--		freelist[v->k] = v;
--		FREE_DTOA_LOCK(0);
-+		if (v->k > Kmax)
-+#ifdef FREE
-+			FREE((void*)v);
-+#else
-+			free((void*)v);
-+#endif
-+		else {
-+			ACQUIRE_DTOA_LOCK(0);
-+			v->next = freelist[v->k];
-+			freelist[v->k] = v;
-+			FREE_DTOA_LOCK(0);
-+			}
- 		}
- 	}
- 
- #define Bcopy(x,y) memcpy((char *)&x->sign, (char *)&y->sign, \
- y->wds*sizeof(Long) + 2*sizeof(int))
- 
-  static Bigint *
- multadd
 
 TARFILE_NAME=nss_3_12_5
 TARFILE_ROOTDIR=mozilla
-PATCH_FILES=nss.patch dtoa.patch
-	# Note: dtoa.patch fixes https://bugzilla.mozilla.org/show_bug.cgi?id=516396. It can be removed as soon as
-	# we upgrade to a new NSS version which already contains this fix.
+PATCH_FILES=nss.patch
 
 .IF "$(debug)" != ""
 .ELSE
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.