summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/DevNotes
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/DevNotes')
-rw-r--r--winsup/cygwin/DevNotes23
1 files changed, 23 insertions, 0 deletions
diff --git a/winsup/cygwin/DevNotes b/winsup/cygwin/DevNotes
index aba32f1a2..e1d2b3f61 100644
--- a/winsup/cygwin/DevNotes
+++ b/winsup/cygwin/DevNotes
@@ -1,3 +1,26 @@
+2012-05-14 cgf-000007
+
+<1.7.16>
+- Fix invocation of strace from a cygwin process. Fixes:
+ http://cygwin.com/ml/cygwin/2012-05/msg00292.html
+</1.7.16>
+
+The change in cgf-000004 introduced a problem for processes which load
+cygwin1.dll dynamically. strace.exe is the most prominent example of
+this.
+
+Since the parent handle is now closed for "non-Cygwin" processes, when
+strace.exe tried to dynamically load cygwin1.dll, the handle was invalid
+and child_info_spawn::handle_spawn couldn't use retrieve information
+from the parent. This eventually led to a strace_printf error due to an
+attempt to dereference an unavailable cygheap. Probably have to fix
+this someday. You shouldn't use the cygheap while attempting to print
+an error about the inavailability of said cygheap.
+
+This was fixed by saving the parent pid in child_info_spawn and calling
+OpenProcess for the parent pid and using that handle iff a process is
+dynamically loaded.
+
2012-05-12 cgf-000006
<1.7.16>