aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2007-07-14 15:58:32 +0000
committerChristopher Faylor <me@cgf.cx>2007-07-14 15:58:32 +0000
commit6f76c68713a2bc3945cc4c3d27a5c266ed8284ca (patch)
tree2093104f1d417ceb910f067c8259cba1e22a9b79
parentd409af3661a5c0d654a8b5760b3034db9f4c6191 (diff)
downloadnewlib-6f76c68713a2bc3945cc4c3d27a5c266ed8284ca.zip
newlib-6f76c68713a2bc3945cc4c3d27a5c266ed8284ca.tar.gz
newlib-6f76c68713a2bc3945cc4c3d27a5c266ed8284ca.tar.bz2
* init.cc (in_dllentry): Delete.
(dll_entry): Remove assignment to deleted variable. * winsup.h (in_dllentry): Delete declaration. * exceptions.cc (inside_kernel): Use another method to see if we are in dll_entry phase.
-rw-r--r--winsup/cygwin/ChangeLog8
-rw-r--r--winsup/cygwin/exceptions.cc2
-rw-r--r--winsup/cygwin/init.cc4
-rw-r--r--winsup/cygwin/sigproc.cc2
-rw-r--r--winsup/cygwin/winsup.h1
5 files changed, 10 insertions, 7 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 9870759..e95f15f 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,11 @@
+2007-07-14 Christopher Faylor <me+cygwin@cgf.cx>
+
+ * init.cc (in_dllentry): Delete.
+ (dll_entry): Remove assignment to deleted variable.
+ * winsup.h (in_dllentry): Delete declaration.
+ * exceptions.cc (inside_kernel): Use another method to see if we are in
+ dll_entry phase.
+
2007-07-13 Christopher Faylor <me+cygwin@cgf.cx>
* init.cc (in_dllentry): Make NO_COPY to avoid spurious false
diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc
index 512e1be..efb7a54 100644
--- a/winsup/cygwin/exceptions.cc
+++ b/winsup/cygwin/exceptions.cc
@@ -288,7 +288,7 @@ inside_kernel (CONTEXT *cx)
int res;
MEMORY_BASIC_INFORMATION m;
- if (in_dllentry)
+ if (!_my_tls.isinitialized ())
return true;
memset (&m, 0, sizeof m);
diff --git a/winsup/cygwin/init.cc b/winsup/cygwin/init.cc
index bbbffba..08deb56 100644
--- a/winsup/cygwin/init.cc
+++ b/winsup/cygwin/init.cc
@@ -118,15 +118,12 @@ respawn_wow64_process ()
extern void __stdcall dll_crt0_0 ();
HMODULE NO_COPY cygwin_hmodule;
-bool NO_COPY in_dllentry;
extern "C" BOOL WINAPI
dll_entry (HANDLE h, DWORD reason, void *static_load)
{
BOOL wow64_test_stack_marker;
- in_dllentry = true;
-
switch (reason)
{
case DLL_PROCESS_ATTACH:
@@ -162,6 +159,5 @@ dll_entry (HANDLE h, DWORD reason, void *static_load)
break;
}
- in_dllentry = false;
return TRUE;
}
diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc
index 5906c3a..dcaa099 100644
--- a/winsup/cygwin/sigproc.cc
+++ b/winsup/cygwin/sigproc.cc
@@ -39,7 +39,7 @@ details. */
#define WSSC 60000 // Wait for signal completion
#define WPSP 40000 // Wait for proc_subproc mutex
-#define no_signals_available(x) (!hwait_sig || hwait_sig == INVALID_HANDLE_VALUE || ((x) && myself->exitcode & EXITCODE_SET) || &_my_tls == _sig_tls || in_dllentry)
+#define no_signals_available(x) (!hwait_sig || hwait_sig == INVALID_HANDLE_VALUE || ((x) && myself->exitcode & EXITCODE_SET) || &_my_tls == _sig_tls)
#define NPROCS 256
diff --git a/winsup/cygwin/winsup.h b/winsup/cygwin/winsup.h
index 58e8ef1..f6dc71b 100644
--- a/winsup/cygwin/winsup.h
+++ b/winsup/cygwin/winsup.h
@@ -353,7 +353,6 @@ extern bool display_title;
extern bool transparent_exe;
extern bool in_forkee;
-extern bool in_dllentry;
extern HANDLE hMainThread;
extern HANDLE hMainProc;