Sat, 12 Dec 2009 01:04:57 +0000 Removed the obsolete testcdrom target
Sam Lantinga <slouken@libsdl.org> [Sat, 12 Dec 2009 01:04:57 +0000] rev 3548
Removed the obsolete testcdrom target
Sat, 12 Dec 2009 00:55:13 +0000 Fixed building on iPhone
Sam Lantinga <slouken@libsdl.org> [Sat, 12 Dec 2009 00:55:13 +0000] rev 3547
Fixed building on iPhone
Sat, 12 Dec 2009 00:08:45 +0000 Allow points to be outside the window bounds, stress testing the clipping code.
Sam Lantinga <slouken@libsdl.org> [Sat, 12 Dec 2009 00:08:45 +0000] rev 3546
Allow points to be outside the window bounds, stress testing the clipping code.
Sat, 12 Dec 2009 00:08:02 +0000 Added mouse position for button handling
Sam Lantinga <slouken@libsdl.org> [Sat, 12 Dec 2009 00:08:02 +0000] rev 3545
Added mouse position for button handling
Sat, 12 Dec 2009 00:07:26 +0000 minor notes to self
Sam Lantinga <slouken@libsdl.org> [Sat, 12 Dec 2009 00:07:26 +0000] rev 3544
minor notes to self
Fri, 11 Dec 2009 09:59:36 +0000 Fixed X11 line implementation - clip lines that are going to go outside the window.
Sam Lantinga <slouken@libsdl.org> [Fri, 11 Dec 2009 09:59:36 +0000] rev 3543
Fixed X11 line implementation - clip lines that are going to go outside the window.
Fri, 11 Dec 2009 09:57:54 +0000 Make sure we fully clip the first point before starting to adjust the second point.
Sam Lantinga <slouken@libsdl.org> [Fri, 11 Dec 2009 09:57:54 +0000] rev 3542
Make sure we fully clip the first point before starting to adjust the second point.
Fri, 11 Dec 2009 09:22:34 +0000 Added an automated test for rectangle routines, currently only testing line clipping.
Sam Lantinga <slouken@libsdl.org> [Fri, 11 Dec 2009 09:22:34 +0000] rev 3541
Added an automated test for rectangle routines, currently only testing line clipping. Use the Cohen-Sutherland algorithm for line clipping which uses integer math and preserves ordering of clipped points. Removed getopt() support in testsdl.c, replaced with simple argv scanning.
Fri, 11 Dec 2009 09:13:51 +0000 Fixed constness in RenderRects() parameter
Sam Lantinga <slouken@libsdl.org> [Fri, 11 Dec 2009 09:13:51 +0000] rev 3540
Fixed constness in RenderRects() parameter
Fri, 11 Dec 2009 08:03:43 +0000 Fixed bug #896
Sam Lantinga <slouken@libsdl.org> [Fri, 11 Dec 2009 08:03:43 +0000] rev 3539
Fixed bug #896 John Popplewell 2009-12-08 23:05:50 PST Originally reported by AKFoerster on the mailing list. Error decoding UTF8 Russian text to UTF-16LE on Windows, but specifically on platforms without iconv support (the default on Windows). Valid UTF8 characters are flagged as being overlong and then substituted by the UNKNOWN_UNICODE character. After studying the testiconv.c example program, reading the RFCs and putting some printf statements in SDL_iconv.c the problem is in a test for 'Maximum overlong sequences', specifically 4.2.1, which is carried out by the following code: } else if ( p[0] >= 0xC0 ) { if ( (p[0] & 0xE0) != 0xC0 ) { /* Skip illegal sequences return SDL_ICONV_EILSEQ; */ ch = UNKNOWN_UNICODE; } else { if ( (p[0] & 0xCE) == 0xC0 ) { <<<<<<<< here overlong = SDL_TRUE; } ch = (Uint32)(p[0] & 0x1F); left = 1; } } else { Here is the 2-byte encoding of a character in range 00000080 - 000007FF 110xxxxx 10xxxxxx The line in question is supposed to be checking for an overlong sequence which would be less than 11000001 10111111 which should be represented as a single byte. BUT, the mask value (0xCE) is wrong, it isn't checking the top-most bit: 11000001 value 11001110 mask (incorrect) ^ and should be (0xDE): 11000001 value 11011110 mask (correct) making the above code: } else if ( p[0] >= 0xC0 ) { if ( (p[0] & 0xE0) != 0xC0 ) { /* Skip illegal sequences return SDL_ICONV_EILSEQ; */ ch = UNKNOWN_UNICODE; } else { if ( (p[0] & 0xDE) == 0xC0 ) { <<<<<<<< here overlong = SDL_TRUE; } ch = (Uint32)(p[0] & 0x1F); left = 1; } } else { I can supply a test program and/or a patch if required, best regards, John Popplewell
(0) -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 tip