[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Pnet-developers] Re: [DotGNU] Bug in Pnet
From: |
Russell Stuart |
Subject: |
Re: [Pnet-developers] Re: [DotGNU] Bug in Pnet |
Date: |
Tue, 31 Oct 2006 09:39:24 +1000 |
On Tue, 2006-10-31 at 07:58 +1000, Russell Stuart wrote:
> Fixes committed to CVS.
After thinking about it, the fix I doesn't really
solve the problem. It only goes 1/2 way. The
demonstration code I posted now works, and I can
now continue development without ilrun getting
segmentation violations.
However, the stack record by the "throw" will be
wrong. I presume whoever is looking at the stack
recorded by the exception will not be expecting
the jsr return address to be in there. Currently
two fixes come to mind. I don't know the code
well enough to say which is better.
1. Create a local for the finally, and store the
return address in there at the top of the finally
block.
2. Create a second version of the exceptHeight variable.
One version is the stack height at entry to the
function - just as was done before, the other is
adjusted by jsr - as is done now. The first is
used when the stack is recorded. The second is
what throw truncates the stack to.
No.2 is probably easier for me to implement. Any other
suggestions?