Allow vo_macosx to be compiled in 64-bits mode:

- Replace usage of undocumented Apple function CPSEnableForegroundOperation()
   (which is available in 32-bits mode, but not in 64-bits mode) by
   TransformProcessType() which is public, documented, and available since OSX 10.3.
 - Work around Apple bug #6267445 since OSServices Power API is diabled in
   64-bits systems
Based on patch by Gregor Riepl %onitake A gmail P com%
posted in thread:
date: Fri, Oct 3, 2008 at 4:49 PM
subject: Re: [MPlayer-dev-eng] [PATCH] Replaced deprecated QuickDraw calls in vo_quartz


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28022 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
gpoirier 2008-11-24 13:22:18 +00:00
parent 9d065b41e8
commit 6f60722148
1 changed files with 7 additions and 3 deletions

View File

@ -10,6 +10,12 @@
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <CoreServices/CoreServices.h>
//special workaround for Apple bug #6267445
//(OSServices Power API disabled in OSServices.h for 64bit systems)
#ifndef __POWER__
#include <CoreServices/../Frameworks/OSServices.framework/Headers/Power.h>
#endif
//MPLAYER
#include "config.h"
@ -328,8 +334,6 @@ static int preinit(const char *arg)
{
#if !defined (CONFIG_MACOSX_FINDER) || !defined (CONFIG_SDL)
//this chunk of code is heavily based off SDL_macosx.m from SDL
//it uses an Apple private function to request foreground operation
void CPSEnableForegroundOperation(ProcessSerialNumber* psn);
ProcessSerialNumber myProc, frProc;
Boolean sameProc;
@ -339,7 +343,7 @@ static int preinit(const char *arg)
{
if (SameProcess(&frProc, &myProc, &sameProc) == noErr && !sameProc)
{
CPSEnableForegroundOperation(&myProc);
TransformProcessType(&myProc, kProcessTransformToForegroundApplication);
}
SetFrontProcess(&myProc);
}