This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: environment space limit in cygwin32?


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
     87

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".


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]