summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/sigproc.h
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/sigproc.h')
-rw-r--r--winsup/cygwin/sigproc.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/winsup/cygwin/sigproc.h b/winsup/cygwin/sigproc.h
index d850ec923..581a5b5bd 100644
--- a/winsup/cygwin/sigproc.h
+++ b/winsup/cygwin/sigproc.h
@@ -49,12 +49,15 @@ private:
sigthread *st;
public:
- void set (sigthread &t, int up = 1)
+ void set (sigthread &t, int up = 1, DWORD ebp = 0)
{
t.lock->acquire ();
st = &t;
- t.frame = (DWORD) (up ? __builtin_frame_address (1) :
- __builtin_frame_address (0));
+ if (ebp)
+ t.frame = ebp;
+ else
+ t.frame = (DWORD) (up ? __builtin_frame_address (1) :
+ __builtin_frame_address (0));
t.lock->release ();
}