Mercurial > sdl-ios-xcode
comparison src/video/bwindow/SDL_sysvideo.cc @ 4164:7a4c511c980a SDL-1.2
Date: Fri, 6 Mar 2009 12:41:17 -0800
From: scott mc
Subject: Re: [SDL] patch for building on haiku
Ok. I've combined the various Haiku patches for the SDL-1.2 branch
into one .diff file
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Tue, 17 Mar 2009 03:58:53 +0000 |
parents | a1b03ba2fcd0 |
children | 0620847bf1a8 |
comparison
equal
deleted
inserted
replaced
4163:bec67d0b6645 | 4164:7a4c511c980a |
---|---|
55 static int BE_LockHWSurface(_THIS, SDL_Surface *surface); | 55 static int BE_LockHWSurface(_THIS, SDL_Surface *surface); |
56 static void BE_UnlockHWSurface(_THIS, SDL_Surface *surface); | 56 static void BE_UnlockHWSurface(_THIS, SDL_Surface *surface); |
57 static void BE_FreeHWSurface(_THIS, SDL_Surface *surface); | 57 static void BE_FreeHWSurface(_THIS, SDL_Surface *surface); |
58 | 58 |
59 static int BE_ToggleFullScreen(_THIS, int fullscreen); | 59 static int BE_ToggleFullScreen(_THIS, int fullscreen); |
60 static SDL_Overlay *BE_CreateYUVOverlay(_THIS, int width, int height, Uint32 format, SDL_Surface *display); | 60 SDL_Overlay *BE_CreateYUVOverlay(_THIS, int width, int height, Uint32 format, SDL_Surface *display); |
61 | 61 |
62 /* OpenGL functions */ | 62 /* OpenGL functions */ |
63 #if SDL_VIDEO_OPENGL | 63 #if SDL_VIDEO_OPENGL |
64 static int BE_GL_LoadLibrary(_THIS, const char *path); | 64 static int BE_GL_LoadLibrary(_THIS, const char *path); |
65 static void* BE_GL_GetProcAddress(_THIS, const char *proc); | 65 static void* BE_GL_GetProcAddress(_THIS, const char *proc); |
635 if (_this->gl_config.dll_handle == NULL) { | 635 if (_this->gl_config.dll_handle == NULL) { |
636 image_info info; | 636 image_info info; |
637 int32 cookie = 0; | 637 int32 cookie = 0; |
638 while (get_next_image_info(0,&cookie,&info) == B_OK) { | 638 while (get_next_image_info(0,&cookie,&info) == B_OK) { |
639 void *location = NULL; | 639 void *location = NULL; |
640 if (get_image_symbol((image_id)cookie,"glBegin",B_SYMBOL_TYPE_ANY,&location) == B_OK) { | 640 #ifdef __HAIKU__ |
641 _this->gl_config.dll_handle = (void*)cookie; | 641 if (get_image_symbol(info.id,"glBegin",B_SYMBOL_TYPE_ANY,&location) == B_OK) { // This is how it actually works in Haiku |
642 #else | |
643 if (get_image_symbol((image_id)cookie,"glBegin",B_SYMBOL_TYPE_ANY,&location) == B_OK) { // I don't know if that *did* work in BeOS | |
644 #endif | |
645 _this->gl_config.dll_handle = (void*)info.id; | |
642 _this->gl_config.driver_loaded = 1; | 646 _this->gl_config.driver_loaded = 1; |
643 SDL_strlcpy(_this->gl_config.driver_path, "libGL.so", SDL_arraysize(_this->gl_config.driver_path)); | 647 SDL_strlcpy(_this->gl_config.driver_path, "libGL.so", SDL_arraysize(_this->gl_config.driver_path)); |
644 } | 648 } |
645 } | 649 } |
646 } | 650 } |