# HG changeset patch # User Markus Mützel # Date 1581701219 -3600 # Node ID 60e4a9909fac51c2c04ff156697a0c1bd29d1e91 # Parent 4563c23597dd33bf5904148b9f65428a5614e976 Fix App Nap for new prototype of "objc_msgSend" in OS X Mojave (bug #57754). * libgui/src/octave-qobject.cc (disable_app_nap): Cast "objc_msgSend" to the respective function prototype. diff -r 4563c23597dd -r 60e4a9909fac libgui/src/octave-qobject.cc --- a/libgui/src/octave-qobject.cc Fri Feb 14 07:31:16 2020 -0800 +++ b/libgui/src/octave-qobject.cc Fri Feb 14 18:26:59 2020 +0100 @@ -88,25 +88,29 @@ == nullptr) return; - process_info = objc_msgSend (reinterpret_cast (process_info_class), - process_info_selector); + process_info = reinterpret_cast (objc_msgSend) + (reinterpret_cast (process_info_class), + process_info_selector); if (process_info == nil) return; - reason_string = objc_msgSend (reinterpret_cast (objc_getClass ("NSString")), - sel_getUid ("alloc")); - reason_string = objc_msgSend (reason_string, - sel_getUid ("initWithUTF8String:"), - "App Nap causes pause() malfunction"); + reason_string = reinterpret_cast (objc_msgSend) + (reinterpret_cast (objc_getClass ("NSString")), + sel_getUid ("alloc")); + reason_string = reinterpret_cast (objc_msgSend) + (reason_string, sel_getUid ("initWithUTF8String:"), + "App Nap causes pause() malfunction"); // Start an Activity that suppresses App Nap. This Activity will run for // the entire duration of the Octave process. This is intentional, // not a leak. - osx_latencycritical_activity = objc_msgSend (process_info, - begin_activity_with_options_selector, - NSActivityUserInitiatedAllowingIdleSystemSleep - | NSActivityLatencyCritical, - reason_string); + osx_latencycritical_activity = + reinterpret_cast (objc_msgSend) + (process_info, + begin_activity_with_options_selector, + NSActivityUserInitiatedAllowingIdleSystemSleep + | NSActivityLatencyCritical, + reason_string); } #endif