* include/sys/cygwin.h (enum cygwin_getinfo_types): Add CW_DEBUG_SELF.
* external.cc (cygwin_internal): Implement CW_DEBUG_SELF. * init.cc (dll_entry): Minor rearrangement of code.
This commit is contained in:
parent
b55ba2f3da
commit
5c8e6fbd8c
@ -1,3 +1,10 @@
|
|||||||
|
2005-05-16 Christopher Faylor <cgf@timesys.com>
|
||||||
|
|
||||||
|
* include/sys/cygwin.h (enum cygwin_getinfo_types): Add CW_DEBUG_SELF.
|
||||||
|
* external.cc (cygwin_internal): Implement CW_DEBUG_SELF.
|
||||||
|
|
||||||
|
* init.cc (dll_entry): Minor rearrangement of code.
|
||||||
|
|
||||||
2005-05-16 Christopher Faylor <cgf@timesys.com>
|
2005-05-16 Christopher Faylor <cgf@timesys.com>
|
||||||
|
|
||||||
* path.cc (path_conv::check): Remove embedded dots before slashes.
|
* path.cc (path_conv::check): Remove embedded dots before slashes.
|
||||||
|
@ -311,13 +311,17 @@ cygwin_internal (cygwin_getinfo_types t, ...)
|
|||||||
case CW_ARGV:
|
case CW_ARGV:
|
||||||
{
|
{
|
||||||
child_info_spawn *ci = (child_info_spawn *) get_cygwin_startup_info ();
|
child_info_spawn *ci = (child_info_spawn *) get_cygwin_startup_info ();
|
||||||
return (DWORD) (ci ? ci->moreinfo->argv : NULL);
|
return (unsigned long) (ci ? ci->moreinfo->argv : NULL);
|
||||||
}
|
}
|
||||||
case CW_ENVP:
|
case CW_ENVP:
|
||||||
{
|
{
|
||||||
child_info_spawn *ci = (child_info_spawn *) get_cygwin_startup_info ();
|
child_info_spawn *ci = (child_info_spawn *) get_cygwin_startup_info ();
|
||||||
return (DWORD) (ci ? ci->moreinfo->envp : NULL);
|
return (unsigned long) (ci ? ci->moreinfo->envp : NULL);
|
||||||
}
|
}
|
||||||
|
case CW_DEBUG_SELF:
|
||||||
|
error_start_init (va_arg (arg, const char *));
|
||||||
|
try_to_debug ();
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
return (DWORD) -1;
|
return (DWORD) -1;
|
||||||
}
|
}
|
||||||
|
@ -82,7 +82,8 @@ typedef enum
|
|||||||
CW_GET_BINMODE,
|
CW_GET_BINMODE,
|
||||||
CW_HOOK,
|
CW_HOOK,
|
||||||
CW_ARGV,
|
CW_ARGV,
|
||||||
CW_ENVP
|
CW_ENVP,
|
||||||
|
CW_DEBUG_SELF
|
||||||
} cygwin_getinfo_types;
|
} cygwin_getinfo_types;
|
||||||
|
|
||||||
#define CW_NEXTPID 0x80000000 /* or with pid to get next one */
|
#define CW_NEXTPID 0x80000000 /* or with pid to get next one */
|
||||||
|
@ -119,6 +119,7 @@ dll_entry (HANDLE h, DWORD reason, void *static_load)
|
|||||||
{
|
{
|
||||||
case DLL_PROCESS_ATTACH:
|
case DLL_PROCESS_ATTACH:
|
||||||
cygwin_hmodule = (HMODULE) h;
|
cygwin_hmodule = (HMODULE) h;
|
||||||
|
dynamically_loaded = (static_load == NULL);
|
||||||
/* Is the stack at an unusual high address? Check if we're running on
|
/* Is the stack at an unusual high address? Check if we're running on
|
||||||
a 64 bit machine. If so, respawn. */
|
a 64 bit machine. If so, respawn. */
|
||||||
if (&is_64bit_machine >= (PBOOL) 0x400000
|
if (&is_64bit_machine >= (PBOOL) 0x400000
|
||||||
@ -127,7 +128,6 @@ dll_entry (HANDLE h, DWORD reason, void *static_load)
|
|||||||
respawn_wow64_process ();
|
respawn_wow64_process ();
|
||||||
|
|
||||||
prime_threads ();
|
prime_threads ();
|
||||||
dynamically_loaded = (static_load == NULL);
|
|
||||||
dll_crt0_0 ();
|
dll_crt0_0 ();
|
||||||
break;
|
break;
|
||||||
case DLL_PROCESS_DETACH:
|
case DLL_PROCESS_DETACH:
|
||||||
|
Loading…
Reference in New Issue
Block a user