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
Thu, 10 Dec 2009 09:27:23 +0000 X11 driver compiles again, lines are not yet implemented
Sam Lantinga <slouken@libsdl.org> [Thu, 10 Dec 2009 09:27:23 +0000] rev 3538
X11 driver compiles again, lines are not yet implemented
Thu, 10 Dec 2009 08:28:26 +0000 Switch to mixed case for consistency with other enumerations
Sam Lantinga <slouken@libsdl.org> [Thu, 10 Dec 2009 08:28:26 +0000] rev 3537
Switch to mixed case for consistency with other enumerations
Wed, 09 Dec 2009 15:56:56 +0000 Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org> [Wed, 09 Dec 2009 15:56:56 +0000] rev 3536
Added interfaces for batch drawing of points, lines and rects: SDL_DrawPoints() SDL_BlendPoints() SDL_BlendLines() SDL_DrawLines() SDL_FillRects() SDL_BlendRects() SDL_RenderPoints() SDL_RenderLines() SDL_RenderRects() Renamed SDL_RenderFill() to SDL_RenderRect()
Mon, 07 Dec 2009 10:08:24 +0000 Hey, those automated tests are coming in handy! Fixed GDI rendering semantics
Sam Lantinga <slouken@libsdl.org> [Mon, 07 Dec 2009 10:08:24 +0000] rev 3535
Hey, those automated tests are coming in handy! Fixed GDI rendering semantics
Mon, 07 Dec 2009 09:44:55 +0000 Implemented RenderReadPixels() and RenderWritePixels() for GDI renderer.
Sam Lantinga <slouken@libsdl.org> [Mon, 07 Dec 2009 09:44:55 +0000] rev 3534
Implemented RenderReadPixels() and RenderWritePixels() for GDI renderer.
Mon, 07 Dec 2009 08:02:20 +0000 This fixes the OpenGL rendering test, at least with my ATI card...
Sam Lantinga <slouken@libsdl.org> [Mon, 07 Dec 2009 08:02:20 +0000] rev 3533
This fixes the OpenGL rendering test, at least with my ATI card...
(0) -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 tip