comparison src/video/x11/SDL_x11dyn.c @ 1668:4da1ee79c9af SDL-1.3

more tweaking indent options
author Sam Lantinga <slouken@libsdl.org>
date Mon, 29 May 2006 04:04:35 +0000
parents 782fd950bd46
children
comparison
equal deleted inserted replaced
1667:1fddae038bc8 1668:4da1ee79c9af
59 {NULL, SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER}, 59 {NULL, SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER},
60 {NULL, SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR}, 60 {NULL, SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR},
61 }; 61 };
62 62
63 static void 63 static void
64 X11_GetSym (const char *fnname, int *rc, void **fn) 64 X11_GetSym(const char *fnname, int *rc, void **fn)
65 { 65 {
66 int i; 66 int i;
67 for (i = 0; i < SDL_TABLESIZE (x11libs); i++) { 67 for (i = 0; i < SDL_TABLESIZE(x11libs); i++) {
68 if (x11libs[i].lib != NULL) { 68 if (x11libs[i].lib != NULL) {
69 *fn = SDL_LoadFunction (x11libs[i].lib, fnname); 69 *fn = SDL_LoadFunction(x11libs[i].lib, fnname);
70 if (*fn != NULL) 70 if (*fn != NULL)
71 break; 71 break;
72 } 72 }
73 } 73 }
74 74
75 #if DEBUG_DYNAMIC_X11 75 #if DEBUG_DYNAMIC_X11
76 if (*fn != NULL) 76 if (*fn != NULL)
77 printf ("X11: Found '%s' in %s (%p)\n", fnname, x11libs[i].libname, 77 printf("X11: Found '%s' in %s (%p)\n", fnname, x11libs[i].libname,
78 *fn); 78 *fn);
79 else 79 else
80 printf ("X11: Symbol '%s' NOT FOUND!\n", fnname); 80 printf("X11: Symbol '%s' NOT FOUND!\n", fnname);
81 #endif 81 #endif
82 82
83 if (*fn == NULL) 83 if (*fn == NULL)
84 *rc = 0; /* kill this module. */ 84 *rc = 0; /* kill this module. */
85 } 85 }
95 #undef SDL_X11_SYM 95 #undef SDL_X11_SYM
96 #endif /* SDL_VIDEO_DRIVER_X11_DYNAMIC */ 96 #endif /* SDL_VIDEO_DRIVER_X11_DYNAMIC */
97 97
98 /* Annoying varargs entry point... */ 98 /* Annoying varargs entry point... */
99 #ifdef X_HAVE_UTF8_STRING 99 #ifdef X_HAVE_UTF8_STRING
100 XIC (*pXCreateIC) (XIM,...) = NULL; 100 XIC(*pXCreateIC) (XIM,...) = NULL;
101 #endif 101 #endif
102 102
103 /* These SDL_X11_HAVE_* flags are here whether you have dynamic X11 or not. */ 103 /* These SDL_X11_HAVE_* flags are here whether you have dynamic X11 or not. */
104 #define SDL_X11_MODULE(modname) int SDL_X11_HAVE_##modname = 1; 104 #define SDL_X11_MODULE(modname) int SDL_X11_HAVE_##modname = 1;
105 #define SDL_X11_SYM(rc,fn,params,args,ret) 105 #define SDL_X11_SYM(rc,fn,params,args,ret)
109 109
110 110
111 static int x11_load_refcount = 0; 111 static int x11_load_refcount = 0;
112 112
113 void 113 void
114 SDL_X11_UnloadSymbols (void) 114 SDL_X11_UnloadSymbols(void)
115 { 115 {
116 #ifdef SDL_VIDEO_DRIVER_X11_DYNAMIC 116 #ifdef SDL_VIDEO_DRIVER_X11_DYNAMIC
117 /* Don't actually unload if more than one module is using the libs... */ 117 /* Don't actually unload if more than one module is using the libs... */
118 if (x11_load_refcount > 0) { 118 if (x11_load_refcount > 0) {
119 if (--x11_load_refcount == 0) { 119 if (--x11_load_refcount == 0) {
128 128
129 #ifdef X_HAVE_UTF8_STRING 129 #ifdef X_HAVE_UTF8_STRING
130 pXCreateIC = NULL; 130 pXCreateIC = NULL;
131 #endif 131 #endif
132 132
133 for (i = 0; i < SDL_TABLESIZE (x11libs); i++) { 133 for (i = 0; i < SDL_TABLESIZE(x11libs); i++) {
134 if (x11libs[i].lib != NULL) { 134 if (x11libs[i].lib != NULL) {
135 SDL_UnloadObject (x11libs[i].lib); 135 SDL_UnloadObject(x11libs[i].lib);
136 x11libs[i].lib = NULL; 136 x11libs[i].lib = NULL;
137 } 137 }
138 } 138 }
139 } 139 }
140 } 140 }
141 #endif 141 #endif
142 } 142 }
143 143
144 /* returns non-zero if all needed symbols were loaded. */ 144 /* returns non-zero if all needed symbols were loaded. */
145 int 145 int
146 SDL_X11_LoadSymbols (void) 146 SDL_X11_LoadSymbols(void)
147 { 147 {
148 int rc = 1; /* always succeed if not using Dynamic X11 stuff. */ 148 int rc = 1; /* always succeed if not using Dynamic X11 stuff. */
149 149
150 #ifdef SDL_VIDEO_DRIVER_X11_DYNAMIC 150 #ifdef SDL_VIDEO_DRIVER_X11_DYNAMIC
151 /* deal with multiple modules (dga, x11, etc) needing these symbols... */ 151 /* deal with multiple modules (dga, x11, etc) needing these symbols... */
152 if (x11_load_refcount++ == 0) { 152 if (x11_load_refcount++ == 0) {
153 int i; 153 int i;
154 int *thismod = NULL; 154 int *thismod = NULL;
155 for (i = 0; i < SDL_TABLESIZE (x11libs); i++) { 155 for (i = 0; i < SDL_TABLESIZE(x11libs); i++) {
156 if (x11libs[i].libname != NULL) { 156 if (x11libs[i].libname != NULL) {
157 x11libs[i].lib = SDL_LoadObject (x11libs[i].libname); 157 x11libs[i].lib = SDL_LoadObject(x11libs[i].libname);
158 } 158 }
159 } 159 }
160 #define SDL_X11_MODULE(modname) thismod = &SDL_X11_HAVE_##modname; 160 #define SDL_X11_MODULE(modname) thismod = &SDL_X11_HAVE_##modname;
161 #define SDL_X11_SYM(a,fn,x,y,z) X11_GetSym(#fn,thismod,(void**)&p##fn); 161 #define SDL_X11_SYM(a,fn,x,y,z) X11_GetSym(#fn,thismod,(void**)&p##fn);
162 #include "SDL_x11sym.h" 162 #include "SDL_x11sym.h"
163 #undef SDL_X11_MODULE 163 #undef SDL_X11_MODULE
164 #undef SDL_X11_SYM 164 #undef SDL_X11_SYM
165 165
166 #ifdef X_HAVE_UTF8_STRING 166 #ifdef X_HAVE_UTF8_STRING
167 X11_GetSym ("XCreateIC", &SDL_X11_HAVE_UTF8, (void **) &pXCreateIC); 167 X11_GetSym("XCreateIC", &SDL_X11_HAVE_UTF8, (void **) &pXCreateIC);
168 #endif 168 #endif
169 169
170 if (!SDL_X11_HAVE_BASEXLIB) { /* some required symbol didn't load. */ 170 if (!SDL_X11_HAVE_BASEXLIB) { /* some required symbol didn't load. */
171 SDL_X11_UnloadSymbols (); /* in case something got loaded... */ 171 SDL_X11_UnloadSymbols(); /* in case something got loaded... */
172 rc = 0; 172 rc = 0;
173 } 173 }
174 } 174 }
175 #else 175 #else
176 #ifdef X_HAVE_UTF8_STRING 176 #ifdef X_HAVE_UTF8_STRING