On 08/13/2012 06:07 PM, Pawel Jasinski wrote:
> hi,
> 
> How about this one. Bash has already some cygwin specific stuff.
> 
> rejap <at> win7dev /usr/src/bash-4.1.10-4/src/bash-4.1
> $ diff -uN execute_cmd.c.orig execute_cmd.c
> --- execute_cmd.c.orig  2012-08-14 00:36:57.092722900 +0200
> +++ execute_cmd.c       2012-08-14 01:50:03.248969800 +0200
> @@ -4838,6 +4838,10 @@
>             }
>  #endif
>           errno = i;
> +#if __CYGWIN__
> +      if (errno==EACCES && GetLastError() == ERROR_SXS_CANT_GEN_ACTCTX)
> +          errno = ELIBBAD;
> +#endif

Nope, won't do it.  If cygwin1.dll returns ELIBADD natively (which, as
of today's patches, it does), then bash will already do what you want
without me having to patch bash too.  Bash should not ever have to call
GetLastError().

-- 
Eric Blake   ebl...@redhat.com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to