* miscfuncs.cc (__import_address): Avoid treating random instructions as import
jump. * malloc_wrapper.cc (malloc_init): Remove comment about 64-bit.
This commit is contained in:
parent
6c3f590cd9
commit
9c4478df47
@ -1,3 +1,9 @@
|
||||
2013-01-22 Christopher Faylor <me.cygwin2013@cgf.cx>
|
||||
|
||||
* miscfuncs.cc (__import_address): Avoid treating random instructions
|
||||
as import jump.
|
||||
* malloc_wrapper.cc (malloc_init): Remove comment about 64-bit.
|
||||
|
||||
2013-01-21 Christopher Faylor <me.cygwin2013@cgf.cx>
|
||||
|
||||
* dcrt0.cc (dll_crt0_1): Comment assumption.
|
||||
|
@ -285,8 +285,7 @@ malloc_init ()
|
||||
{
|
||||
extern void *_sigfe_malloc;
|
||||
/* Decide if we are using our own version of malloc by testing the import
|
||||
address from user_data. This will likely need to be updated
|
||||
for 64-bit. */
|
||||
address from user_data. */
|
||||
use_internal = import_address (user_data->malloc) == &_sigfe_malloc;
|
||||
malloc_printf ("using %s malloc", use_internal ? "internal" : "external");
|
||||
internal_malloc_determined = true;
|
||||
|
@ -437,6 +437,11 @@ slashify (const char *src, char *dst, bool trailing_slash_p)
|
||||
void * __reg1
|
||||
__import_address (void *imp)
|
||||
{
|
||||
if (*((uint16_t *) imp) != 0x25ff)
|
||||
return NULL;
|
||||
myfault efault;
|
||||
if (efault.faulted ())
|
||||
return NULL;
|
||||
const char *ptr = (const char *) imp;
|
||||
const uintptr_t *jmpto = (uintptr_t *) *((uintptr_t *) (ptr + 2));
|
||||
return (void *) *jmpto;
|
||||
|
Loading…
Reference in New Issue
Block a user