Welcome to the last planned release for SDL 1.2!
http://www.libsdl.org/download-1.2.php

This release is intended to clean up the bug list for SDL 1.2 and let us focus on new development for SDL 1.3!

I would like to thank everybody who contributed bug reports and fixes for this release!

General Notes

* Fixed flicker when resizing the SDL window
* Fixed crash in SDL_SetGammaRamp()
* Fixed freeze in SDL_memset() with 0 length when assembly code is disabled.
* Added SDL_DISABLE_LOCK_KEYS environment variable to enable normal up/down events for Caps-Lock and Num-Lock keys.
* Fixed audio quality problem when converting between 22050 Hz and 44100 Hz.
* Fixed a threading crash when a few threads are rapidly created and complete.
* Increased accuracy of alpha blending routines.
* Fixed crash loading BMP files saved with the scanlines inverted.
* Fixed mouse coordinate clamping if SDL_SetVideoMode() isn't called in response to SDL_VIDEORESIZE event.
* Added doxygen documentation for the SDL API headers.

Unix Notes
* Fixed potential memory corruption due to assembly bug with SDL_revcpy()
* Fixed crashes trying to detect SSE features on x86_64 architecture.
* Fixed assembly for GCC optimized 50% alpha blending blits.
* Added configure option --enable-screensaver, to allow enabling the screensaver by default.
* Use XResetScreenSaver() instead of disabling screensaver entirely.
* Removed the maximum window size limitation on X11.
* Fixed SDL_GL_SWAP_CONTROL on X11.
* Fixed setting the X11 window input hint.
* Fixed distorted X11 window icon for some visuals.
* Fixed detecting X11 libraries for dynamic loading on 64-bit Linux.
* SDL_GL_GetAttribute(SDL_GL_SWAP_CONTROL) returns the correct value with GLX_SGI_swap_control.
* Added SDL_VIDEO_FULLSCREEN_DISPLAY as a preferred synonym for SDL_VIDEO_FULLSCREEN_HEAD on X11.
* The SDL_VIDEO_FULLSCREEN_DISPLAY environment variable can be set to 0 to place fullscreen SDL windows on the first Xinerama screen.
* Added the SDL_VIDEO_FBCON_ROTATION environment variable to control output orientation on the framebuffer console.
Valid values are:
    o not set - Not rotating, no shadow.
    o "NONE" - Not rotating, but still using shadow.
    o "CW" - Rotating screen clockwise.
    o "UD" - Rotating screen upside down.
    o "CCW" - Rotating screen counter clockwise.
* Fixed DirectFB detection on some Linux distributions.
* Added code to use the PS3 SPE processors for YUV conversion on Linux.
* Updated ALSA support to the latest stable API
* ALSA is now preferred over OSS audio. (SDL_AUDIODRIVER=dsp will restore the previous behavior.)
* Improved support for PulseAudio
* The Network Audio System support is now dynamically loaded at runtime.
* Fixed crash with the MP-8866 Dual USB Joypad on newer Linux kernels.
* Fixed crash in SDL_Quit() when a joystick has been unplugged.

Windows Notes
* Verified 100% compatibility with Windows 7.
* Prevent loss of OpenGL context when setting the video mode in response to a window resize event.
* Fixed video initialization with SDL_WINDOWID on Windows XP.
* Improved mouse input responsiveness for first-person-shooter games.
* IME messages are now generated for localized input.
* SDL_RWFromFile() takes a UTF-8 filename when opening a file.
* The SDL_STDIO_REDIRECT environment variable can be used to override whether SDL redirects stdio to stdout.txt and stderr.txt.
* Fixed dynamic object loading on Windows CE.

Mac OS X Notes
* SDL now builds on Mac OS X 10.6 (Snow Leopard).
Eric Wing posted a good rundown on the numerous changes here: http://playcontrol.net/ewing/jibberjabber/big_behind-the-scenes_chang.html
* The X11 video driver is built by default.
* Fixed SDL_VIDEO_WINDOW_POS environment variable for Quartz target.
* Fixed setting the starting working directory in release builds.