This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
other/3845: Standard streams closed when g++-produced DLL loaded.
- To: gcc-gnats at gcc dot gnu dot org
- Subject: other/3845: Standard streams closed when g++-produced DLL loaded.
- From: lerios at cs dot stanford dot edu
- Date: 27 Jul 2001 18:00:51 -0000
- Reply-To: lerios at cs dot stanford dot edu
>Number: 3845
>Category: other
>Synopsis: Standard streams closed when g++-produced DLL loaded.
>Confidential: no
>Severity: critical
>Priority: low
>Responsible: unassigned
>State: open
>Class: wrong-code
>Submitter-Id: net
>Arrival-Date: Fri Jul 27 11:06:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator: Apostolos Lerios
>Release: gcc version 2.95.3-5 (cygwin special)
>Organization:
>Environment:
Win2k SP1
CYGWIN_NT-5.0 IONIAN 1.3.2(0.39/3/2) 2001-05-20 23:28 i686 unknown
java version "1.3.0_02"
>Description:
When a non-cygwin exe (e.g. the Java run-time) loads a Cygwin-produced DLL that was created using C++, the Cygwin DLL bootstrap code closes the standard error and output streams of the non-cygwin exe.
>How-To-Repeat:
Unzip attachment, run "makeit.bat". Complete example is 10 lines. You should see "abab", but you'll get "ab". BUT if you redirect the output/error into a file, the file will get "abab". So make sure you run with the console/terminal being the stdout/stderr.
>Fix:
None know. Looked in the Cygwin source, discovered there is some special treatment of consoles for stdout, stderr, but didn't figure out a fix.
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/x-zip-compressed; name="jni.zip"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="jni.zip"
UEsDBBQAAAAIAHxV+yotFUZ7egAAAPsAAAAQAAAAam5pL0ludm9rZXIuamF2YSsoTcrJTFZIzkks
LlbwzCvLz04t4uWq5uVSAILiksQSoGRZfmaKQm5iZp5GcElRZl56dKxCYlF6sSZEEVQtCARXFpek
5uqlFhXpFQAVluTkaSglKmlaY6jILy1BqEjCpiInPzHFJzOpKLGoEqgiMQWbGrLtqeXlAiIAUEsD
BBQAAAAIAG5W+yppaHeLXgAAAHYAAAAOAAAAam5pL21ha2VpdC5iYXQ1yEEOgyAQBdC9iXeYvf3c
wxO4/gyTFkVoEIm9fdM0Lt/TaRIcL1YLgiU9ALvepTaET+Ye9c5Mnww8W0Hc+TR4HiYo4hlcSEky
W+zmVMdhZafKnHvZrLqf/nfXOHwBUEsDBAoAAAAAAHJV+yqdo1UjKAAAACgAAAANAAAAam5pL25h
dGl2ZS5jY19fZGVjbHNwZWMgKGRsbGV4cG9ydCkgaW50IGFueSgpDQp7DQp9DQpQSwMECgAAAAAA
c1b7KgAAAAAAAAAAAAAAAAQAAABqbmkvUEsBAhQAFAAAAAgAfFX7Ki0VRnt6AAAA+wAAABAAAAAA
AAAAAQAgALaBAAAAAGpuaS9JbnZva2VyLmphdmFQSwECFAAUAAAACABuVvsqaWh3i14AAAB2AAAA
DgAAAAAAAAABACAA/4GoAAAAam5pL21ha2VpdC5iYXRQSwECFAAKAAAAAAByVfsqnaNVIygAAAAo
AAAADQAAAAAAAAABACAAtoEyAQAAam5pL25hdGl2ZS5jY1BLAQIUAAoAAAAAAHNW+yoAAAAAAAAA
AAAAAAAEAAAAAAAAAAAAEAD/QYUBAABqbmkvUEsFBgAAAAAEAAQA5wAAAKcBAAAAAA==