AttachConsole broken autoload

Dave Korn dave.korn.cygwin@googlemail.com
Sat Jul 4 12:34:00 GMT 2009


  Got this error when I tried to run with a DLL built from today's CVS HEAD:

> ---------------------------
> bash.exe - Entry Point Not Found
> ---------------------------
> The procedure entry point AttachConsole could not be located in the dynamic link library KERNEL32.dll. 
> ---------------------------
> OK   
> ---------------------------

  Checked that it doesn't exist on W2K:

http://msdn.microsoft.com/en-us/library/ms681952(VS.85).aspx
> Minimum supported client	Windows XP
> Minimum supported server	Windows Server 2003

  Something's gone wrong with the autoload definition, because here's the
reference:

> $ nm fhandler_console.o | grep AttachConsole
>          U _AttachConsole@4

... but here's the definition:

> $ nm autoload.o | grep AttachConsole
> 00000000 T _AttachConsole@0
> 00000000 T _win32_AttachConsole@0

... leading to the DLL still having an explicit import for it:

> $ dumpbin /imports new-cygwin1.dll | grep AttachConsole
>                    D  AttachConsole

  Attached patch looks like the obvious fix to me and builds a DLL without an
import for AttachConsole; resulting DLL loads and runs on W2k.  Ok?

	* autoload.cc (AttachConsole):  Correct size of args.

    cheers,
      DaveK

-------------- next part --------------
A non-text attachment was scrubbed...
Name: autoload-attachconsole-fix.diff
Type: text/x-c
Size: 674 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin-patches/attachments/20090704/9e430c18/attachment.bin>


More information about the Cygwin-patches mailing list