Russell Lang wrote:
> GSview was using a small stack (65536) on the main thread, which has
> been sufficient until now. A user reported that GSview would crash
> when TortoiseSVN was installed, and I found this occurred when you
> tried to access a directory which was checked out from SVN.
> Increasing the stack space in GSview to 0.25M made the problem go
> away. I'm guessing that TortoiseSVN is storing a large amount of
> data on the stack, hence causing this problem.
- I installed GSview (4.62)
- I tried to reproduce this problem, but failed. No crash.
- The stack is always per process. So another process using a large
stack can't have any effect on your program
- The shell extension part doesn't use much stack space.
- Shell extension don't have control over the stack size, because that's
the stack of the explorer process
So my guess is that GSview uses a too small stack which wouldn't give
you problems until now only because you were lucky. If you show e.g. a
file-open dialog in your program, you must always have enough stack
space for that control too since you're starting that one in your own
process space. Since there's no documentation about how much stack such
a control uses you must have a big enough stack for all circumstances. I
mean it's not just TSVN which uses a little bit of the stack, but every
other shell extension installed (e.g. winzip, text editors, custom
overlay handlers, namespace extensions for e.g. mobile phones, ...).
You're seeing this crash now because the amount of shell extensions
installed on your system has now reached the limit of your too small
stack size, TSVN was just the last one you've installed!
Oh, and in my experience namespace extensions for mobile phones use a
much larger part of the stack than TSVN does, you might get such crashes
frequently if you don't increase your stack size!
On a different note: why do you have such a small stack size anyway? I
mean the default stack size for a windows process is 1Meg!
oo // \\ "De Chelonian Mobile"
(_,\/ \_/ \ TortoiseSVN
\ \_/_\_/> The coolest Interface to (Sub)Version Control
/_/ \_\ http://tortoisesvn.tigris.org
To unsubscribe, e-mail: firstname.lastname@example.org
For additional commands, e-mail: email@example.com
Received on Sun Mar 6 09:39:45 2005