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)