[fd5b1fe] | 1 | Submitted By: Ryan Oliver <ryan.oliver@pha.com.au>
|
---|
| 2 | Date: 2005-07-31
|
---|
| 3 | Initial Package Version: 1.2.8
|
---|
| 4 | Upstream Status: Unknown
|
---|
| 5 | Origin: Gentoo
|
---|
| 6 | Description: Combined gentoo patches for SDL-1.2.8
|
---|
| 7 |
|
---|
| 8 | diff -uNr SDL-1.2.8/include/SDL_endian.h SDL-1.2.8-gentoo-fixes/include/SDL_endian.h
|
---|
| 9 | --- SDL-1.2.8/include/SDL_endian.h 2004-12-13 18:54:30.000000000 +1100
|
---|
| 10 | +++ SDL-1.2.8-gentoo-fixes/include/SDL_endian.h 2005-07-31 14:10:53.000000000 +1000
|
---|
| 11 | @@ -68,7 +68,7 @@
|
---|
| 12 | #elif defined(__GNUC__) && defined(__x86_64__)
|
---|
| 13 | static __inline__ Uint16 SDL_Swap16(Uint16 x)
|
---|
| 14 | {
|
---|
| 15 | - __asm__("xchgb %b0,%h0" : "=q" (x) : "0" (x));
|
---|
| 16 | + __asm__("xchgb %b0,%h0" : "=Q" (x) : "0" (x));
|
---|
| 17 | return x;
|
---|
| 18 | }
|
---|
| 19 | #elif defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
|
---|
| 20 | diff -uNr SDL-1.2.8/src/events/SDL_keyboard.c SDL-1.2.8-gentoo-fixes/src/events/SDL_keyboard.c
|
---|
| 21 | --- SDL-1.2.8/src/events/SDL_keyboard.c 2004-02-19 04:22:00.000000000 +1100
|
---|
| 22 | +++ SDL-1.2.8-gentoo-fixes/src/events/SDL_keyboard.c 2005-07-31 14:10:21.000000000 +1000
|
---|
| 23 | @@ -491,7 +491,8 @@
|
---|
| 24 | /*
|
---|
| 25 | * jk 991215 - Added
|
---|
| 26 | */
|
---|
| 27 | - if ( SDL_KeyRepeat.timestamp ) {
|
---|
| 28 | + if ( SDL_KeyRepeat.timestamp &&
|
---|
| 29 | + SDL_KeyRepeat.evt.key.keysym.sym == keysym->sym ) {
|
---|
| 30 | SDL_KeyRepeat.timestamp = 0;
|
---|
| 31 | }
|
---|
| 32 | break;
|
---|
| 33 | diff -uNr SDL-1.2.8/src/video/directfb/SDL_DirectFB_video.c SDL-1.2.8-gentoo-fixes/src/video/directfb/SDL_DirectFB_video.c
|
---|
| 34 | --- SDL-1.2.8/src/video/directfb/SDL_DirectFB_video.c 2004-12-13 18:54:35.000000000 +1100
|
---|
| 35 | +++ SDL-1.2.8-gentoo-fixes/src/video/directfb/SDL_DirectFB_video.c 2005-07-31 14:09:41.000000000 +1000
|
---|
| 36 | @@ -468,6 +468,9 @@
|
---|
| 37 |
|
---|
| 38 | if (HIDDEN->enable_mga_crtc2)
|
---|
| 39 | {
|
---|
| 40 | + DFBDisplayLayerConfig dlc;
|
---|
| 41 | + DFBDisplayLayerConfigFlags failed;
|
---|
| 42 | +
|
---|
| 43 | ret = dfb->GetDisplayLayer (dfb, 2, &HIDDEN->c2layer);
|
---|
| 44 | if (ret)
|
---|
| 45 | {
|
---|
| 46 | @@ -492,8 +495,6 @@
|
---|
| 47 | HIDDEN->c2layer->SetOpacity(HIDDEN->c2layer, 0x0);
|
---|
| 48 |
|
---|
| 49 | /* Init the surface here as it got a fixed size */
|
---|
| 50 | - DFBDisplayLayerConfig dlc;
|
---|
| 51 | - DFBDisplayLayerConfigFlags failed;
|
---|
| 52 |
|
---|
| 53 | dlc.flags = DLCONF_PIXELFORMAT | DLCONF_BUFFERMODE | DLCONF_OPTIONS;
|
---|
| 54 | dlc.buffermode = DLBM_BACKVIDEO;
|
---|
| 55 | diff -uNr SDL-1.2.8/src/video/fbcon/SDL_fbevents.c SDL-1.2.8-gentoo-fixes/src/video/fbcon/SDL_fbevents.c
|
---|
| 56 | --- SDL-1.2.8/src/video/fbcon/SDL_fbevents.c 2004-02-19 04:22:06.000000000 +1100
|
---|
| 57 | +++ SDL-1.2.8-gentoo-fixes/src/video/fbcon/SDL_fbevents.c 2005-07-31 14:10:37.000000000 +1000
|
---|
| 58 | @@ -835,7 +835,7 @@
|
---|
| 59 | static void switch_vt(_THIS, unsigned short which)
|
---|
| 60 | {
|
---|
| 61 | struct vt_stat vtstate;
|
---|
| 62 | - unsigned short current;
|
---|
| 63 | + unsigned short v_active;
|
---|
| 64 | SDL_Surface *screen;
|
---|
| 65 | __u16 saved_pal[3*256];
|
---|
| 66 | Uint32 screen_arealen;
|
---|
| 67 | @@ -846,7 +846,7 @@
|
---|
| 68 | (which == vtstate.v_active) ) {
|
---|
| 69 | return;
|
---|
| 70 | }
|
---|
| 71 | - current = vtstate.v_active;
|
---|
| 72 | + v_active = vtstate.v_active;
|
---|
| 73 |
|
---|
| 74 | /* Save the contents of the screen, and go to text mode */
|
---|
| 75 | SDL_mutexP(hw_lock);
|
---|
| 76 | @@ -864,7 +864,7 @@
|
---|
| 77 | if ( ioctl(keyboard_fd, VT_ACTIVATE, which) == 0 ) {
|
---|
| 78 | /* Wait for our console to be activated again */
|
---|
| 79 | ioctl(keyboard_fd, VT_WAITACTIVE, which);
|
---|
| 80 | - while ( ioctl(keyboard_fd, VT_WAITACTIVE, current) < 0 ) {
|
---|
| 81 | + while ( ioctl(keyboard_fd, VT_WAITACTIVE, v_active) < 0 ) {
|
---|
| 82 | if ( (errno != EINTR) && (errno != EAGAIN) ) {
|
---|
| 83 | /* Unknown VT error - cancel this */
|
---|
| 84 | break;
|
---|
| 85 | diff -uNr SDL-1.2.8/src/video/x11/SDL_x11modes.c SDL-1.2.8-gentoo-fixes/src/video/x11/SDL_x11modes.c
|
---|
| 86 | --- SDL-1.2.8/src/video/x11/SDL_x11modes.c 2004-12-13 18:54:37.000000000 +1100
|
---|
| 87 | +++ SDL-1.2.8-gentoo-fixes/src/video/x11/SDL_x11modes.c 2005-07-31 14:08:57.000000000 +1000
|
---|
| 88 | @@ -324,10 +324,6 @@
|
---|
| 89 | fclose(metro_fp);
|
---|
| 90 | }
|
---|
| 91 | }
|
---|
| 92 | -#if defined(__alpha__) || defined(__sparc64__) || defined(__powerpc__)
|
---|
| 93 | - /* The alpha, sparc64 and PPC XFree86 servers are also buggy */
|
---|
| 94 | - buggy_X11 = 1;
|
---|
| 95 | -#endif
|
---|
| 96 | /* Enumerate the available fullscreen modes */
|
---|
| 97 | if ( ! buggy_X11 ) {
|
---|
| 98 | if ( SDL_NAME(XF86VidModeQueryExtension)(SDL_Display, &vm_event, &vm_error) &&
|
---|