From a5ca0547ddbd7d7e54ffdada6d1294874ae49ab6 Mon Sep 17 00:00:00 2001 From: juha Date: Thu, 22 Mar 2018 13:03:34 +0000 Subject: [PATCH] Cocoa: Prevent crash on non-existing cursor. Issue #33478, patch from Anton Kavalenka. git-svn-id: trunk@57551 - --- lcl/interfaces/cocoa/cocoawscommon.pas | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lcl/interfaces/cocoa/cocoawscommon.pas b/lcl/interfaces/cocoa/cocoawscommon.pas index e2ed1549c0..1d0524cd40 100644 --- a/lcl/interfaces/cocoa/cocoawscommon.pas +++ b/lcl/interfaces/cocoa/cocoawscommon.pas @@ -1247,6 +1247,7 @@ function TLCLCommonCallback.ResetCursorRects: Boolean; var ACursor: TCursor; View: NSView; + cr:TCocoaCursor; begin Result := False; View := CocoaUtils.GetNSObjectView(Owner); @@ -1261,7 +1262,11 @@ begin end; Result := ACursor <> crDefault; if Result then - View.addCursorRect_cursor(View.visibleRect, TCocoaCursor(Screen.Cursors[ACursor]).Cursor); + begin + cr:=TCocoaCursor(Screen.Cursors[ACursor]); + if assigned(cr) then + View.addCursorRect_cursor(View.visibleRect, cr.Cursor); + end; end; end;