diff options
author | Akemi <der.richter@gmx.de> | 2018-02-28 14:58:31 +0100 |
---|---|---|
committer | Kevin Mitchell <kevmitch@gmail.com> | 2018-03-04 16:26:35 -0800 |
commit | d7b6ebf64391327c60bdf50becd945f6237e5c9e (patch) | |
tree | acacc7ffd0d089ee3f38580e3e5269e8d52f841d | |
parent | 42fd7d0bbf249ae9f78d49f89f79b8a159758018 (diff) | |
download | mpv-d7b6ebf64391327c60bdf50becd945f6237e5c9e.tar.bz2 mpv-d7b6ebf64391327c60bdf50becd945f6237e5c9e.tar.xz |
cocoa-cb: move the GL dummy function to swift
it's possible to get a function pointer through a closure after all in
swift. remove the GL dummy function from the c header and do it in the
swift code instead.
-rw-r--r-- | osdep/macOS_mpv_helper.swift | 4 | ||||
-rw-r--r-- | osdep/macOS_swift_bridge.h | 5 |
2 files changed, 3 insertions, 6 deletions
diff --git a/osdep/macOS_mpv_helper.swift b/osdep/macOS_mpv_helper.swift index c8b9771ba6..75f23251a9 100644 --- a/osdep/macOS_mpv_helper.swift +++ b/osdep/macOS_mpv_helper.swift @@ -19,6 +19,8 @@ import Cocoa import OpenGL.GL import OpenGL.GL3 +let glDummy: @convention(c) () -> Void = {} + class MPVHelper: NSObject { var mpvHandle: OpaquePointer? @@ -72,7 +74,7 @@ class MPVHelper: NSObject { let addr = CFBundleGetFunctionPointerForName(indentifier, symbol) if symbol as String == "glFlush" { - return glDummyPtr() + return unsafeBitCast(glDummy, to: UnsafeMutableRawPointer.self) } return addr diff --git a/osdep/macOS_swift_bridge.h b/osdep/macOS_swift_bridge.h index d662dbcf4e..6886fce636 100644 --- a/osdep/macOS_swift_bridge.h +++ b/osdep/macOS_swift_bridge.h @@ -47,8 +47,3 @@ static int SWIFT_KEY_MOUSE_LEAVE = MP_KEY_MOUSE_LEAVE; static int SWIFT_KEY_MOUSE_ENTER = MP_KEY_MOUSE_ENTER; static int SWIFT_KEY_STATE_DOWN = MP_KEY_STATE_DOWN; static int SWIFT_KEY_STATE_UP = MP_KEY_STATE_UP; - -// dummy function to override glFlush() -static void glDummy() {} -static void *glDummyPtr(void) __attribute__((unused)); -static void *glDummyPtr() { return &glDummy; } |