From 71223e617574a201104b4d2fd31b3ca16ee9cbbf Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Sat, 1 Jan 2011 08:22:02 -0700 Subject: [PATCH] win32: survive theme-access failure --- collects/mred/private/wx/win32/theme.rkt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/collects/mred/private/wx/win32/theme.rkt b/collects/mred/private/wx/win32/theme.rkt index 6b1e21f1fd..8f0256059c 100644 --- a/collects/mred/private/wx/win32/theme.rkt +++ b/collects/mred/private/wx/win32/theme.rkt @@ -55,8 +55,10 @@ -> (when (negative? r) (error 'CloseThemeData "failed: ~s" (bitwise-and #xFFFF r)))) #:wrap (deallocator)) -(define-uxtheme OpenThemeData (_wfun _HWND _string/utf-16 -> _HTHEME) - #:wrap (allocator CloseThemeData)) +(define (maybe-CloseThemeData v) (when v (CloseThemeData v))) +(define-uxtheme OpenThemeData (_wfun _HWND _string/utf-16 -> (_or-null _HTHEME)) + #:wrap (allocator maybe-CloseThemeData)) + (define-uxtheme GetThemeFont (_wfun _HTHEME _HDC _int _int _int (f : (_ptr o _LOGFONT)) -> (r : _HRESULT) -> (if (negative? r)