From de3131a78debeeb4997bba4a6dffec7384d3b4e6 Mon Sep 17 00:00:00 2001 From: Neil Date: Fri, 2 May 2014 23:19:27 +1000 Subject: Use exact SciFnDirect function signature for DirectFunction as earlier version depended on undefined behaviour. --- cocoa/ScintillaCocoa.h | 2 +- cocoa/ScintillaCocoa.mm | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'cocoa') diff --git a/cocoa/ScintillaCocoa.h b/cocoa/ScintillaCocoa.h index 415094c35..7e4ed7214 100644 --- a/cocoa/ScintillaCocoa.h +++ b/cocoa/ScintillaCocoa.h @@ -177,7 +177,7 @@ public: NSPoint GetCaretPosition(); - static sptr_t DirectFunction(ScintillaCocoa *sciThis, unsigned int iMessage, uptr_t wParam, sptr_t lParam); + static sptr_t DirectFunction(sptr_t ptr, unsigned int iMessage, uptr_t wParam, sptr_t lParam); void TimerFired(NSTimer* timer); void IdleTimerFired(); diff --git a/cocoa/ScintillaCocoa.mm b/cocoa/ScintillaCocoa.mm index 563cff839..7e86d86f1 100644 --- a/cocoa/ScintillaCocoa.mm +++ b/cocoa/ScintillaCocoa.mm @@ -787,16 +787,16 @@ void ScintillaCocoa::Redraw() * However this is a Windows metaphor and not used here, hence we just call our fake * window proc. The given parameters directly reflect the message parameters used on Windows. * - * @param sciThis The target which is to be called. + * @param ptr The target which is to be called. * @param iMessage A code that indicates which message was sent. * @param wParam One of the two free parameters for the message. Traditionally a word sized parameter * (hence the w prefix). * @param lParam The other of the two free parameters. A signed long. */ -sptr_t ScintillaCocoa::DirectFunction(ScintillaCocoa *sciThis, unsigned int iMessage, uptr_t wParam, +sptr_t ScintillaCocoa::DirectFunction(sptr_t ptr, unsigned int iMessage, uptr_t wParam, sptr_t lParam) { - return sciThis->WndProc(iMessage, wParam, lParam); + return reinterpret_cast(ptr)->WndProc(iMessage, wParam, lParam); } //-------------------------------------------------------------------------------------------------- -- cgit v1.2.3