Remove vsnprintf() and strtoumax() validation.

Remove code that validates malloc_vsnprintf() and malloc_strtoumax()
against their namesakes.  The validation code has adequately served its
usefulness at this point, and it isn't worth dealing with the different
formatting for %p with glibc versus other implementations for NULL
pointers ("(nil)" vs. "0x0").

Reported by Mike Hommey.
This commit is contained in:
Jason Evans 2012-04-02 01:46:25 -07:00
parent f2296deb57
commit 4eeb52f080
3 changed files with 1 additions and 30 deletions

View File

@ -374,8 +374,6 @@ extern malloc_mutex_t arenas_lock; /* Protects arenas initialization. */
extern arena_t **arenas; extern arena_t **arenas;
extern unsigned narenas; extern unsigned narenas;
extern bool malloc_initialized;
arena_t *arenas_extend(unsigned ind); arena_t *arenas_extend(unsigned ind);
void arenas_cleanup(void *arg); void arenas_cleanup(void *arg);
arena_t *choose_arena_hard(void); arena_t *choose_arena_hard(void);

View File

@ -38,7 +38,7 @@ arena_t **arenas;
unsigned narenas; unsigned narenas;
/* Set to true once the allocator has been initialized. */ /* Set to true once the allocator has been initialized. */
bool malloc_initialized = false; static bool malloc_initialized = false;
#ifdef JEMALLOC_THREADED_INIT #ifdef JEMALLOC_THREADED_INIT
/* Used to let the initializing thread recursively allocate. */ /* Used to let the initializing thread recursively allocate. */

View File

@ -179,20 +179,6 @@ malloc_strtoumax(const char *nptr, char **endptr, int base)
*endptr = (char *)p; *endptr = (char *)p;
} }
if (config_debug && malloc_initialized) {
uintmax_t tret;
int perrno;
char *pend;
perrno = errno;
if (endptr != NULL)
pend = *endptr;
tret = strtoumax(nptr, endptr, base);
assert(tret == ret);
assert(errno == perrno);
assert(endptr == NULL || *endptr == pend);
}
return (ret); return (ret);
} }
@ -563,19 +549,6 @@ malloc_vsnprintf(char *str, size_t size, const char *format, va_list ap)
str[size - 1] = '\0'; str[size - 1] = '\0';
ret = i; ret = i;
if (config_debug && malloc_initialized) {
char buf[MALLOC_PRINTF_BUFSIZE];
int tret;
/*
* Verify that the resulting string matches what vsnprintf()
* would have created.
*/
tret = vsnprintf(buf, sizeof(buf), format, tap);
assert(tret == ret);
assert(strcmp(buf, str) == 0);
}
#undef APPEND_C #undef APPEND_C
#undef APPEND_S #undef APPEND_S
#undef APPEND_PADDED_S #undef APPEND_PADDED_S