environment space limit in cygwin32?

Michael Weiser michael@weiser.saale-net.de
Sun Sep 20 17:56:00 GMT 1998

Hello Michael, you wrote:
>>PS: I'll check MS's Knowledge Base now, to see if there's some limit
>>in WinNT and post any information I get.
>There seems to be no such limit on NT itself, because my environment
>is much larger than 2000 Bytes - especially in bash:
Yes, I already guessed that. But I'll search the Knowledge Base
anyway, if I find the time.

>in bash:
>MIKE-[/home/mh]_$set | wc -c
>   4239
>in cmd.exe:
>Z:\mh>set | wc -c
>   2010
Caution: It is getting strange now! :-)

I played aroung a bit with my environment and found that it's not the
size of it but the number of exported variables! I filled my
environment with some garbage till it had over 5K and it didn't have
any effect. But when I filled it up with something like

export D1=1

where D1 got incremented like D2, D3 and so on, I got the
STATUS_ACCESS_VIOLATION when the environment had

michael@NARGOTHROND:/mnt/f/home/michael >export | wc -l

exported variables. (?)

I'm getting the impression, it's not really the environment but
something else I'm missing.

If it helps: I debugged the program and found that it's failing at the
first call of XtVaGetValues(). It's not the first Xt library call,
it's no the first call with a variable argument list and it's not the
first call to some other X library at all.

The program references the environment only 5 times by calling
getenv(). But it's not failing on such a call although there is one of
them before the XtVaGetValues() call.

I played aroung a bit with this environment code but it didn't have
any effect.

And: Running it inside of gdb with something like

>michael@NARGOTHROND:/ >gdb -nw civclient
>GNU gdb 4.16-B19
>Copyright 1997 Free Software Foundation, Inc.
>GDB is free software, covered by the GNU General Public License, and you are
>welcome to change it and/or distribute copies of it under certain conditions.
>Type "show copying" to see the conditions.  This version of GDB is supported  This version of GDB is supported
>for customers of Cygnus Solutions.  Type "show warranty" for details.
>This GDB was configured as "i386-cygwin32"...
>(gdb) run
>Starting program: /mnt/e/dev/cygwin32.b19/usr/local/bin/civclient.exe

it runs quite perfect. But it crashes regardless of the number of
exported variables if I run it from inside the windowed gdb run by
'gdb civclient'. There gdb says

Program received signal SIGSEGV, Segmentation fault.
0x485d9d in _XtCountVaList ()

which seems to be called from inside XtVaGetValues.

Is there some environment handling in there?

Do I really have to compile X11 myself and track it down to its
source? (Uaaahhh!)

Thanks for your help so far.
bye, Michael
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".

More information about the Cygwin mailing list