From: Miguel F. <mi...@ce...> - 2004-02-18 15:07:20
|
Hi Gwenole, On Wed, 2004-02-18 at 09:35, Gwenole Beauchesne wrote: > On Wed, 18 Feb 2004, Goetz Waschk wrote: > > > Am Di 17 Feb 2004 23:30:27 GMT schrieb Miguel Freitas: > > > > http://cvs.mandrakesoft.com/cgi-bin/cvsweb.cgi/SPECS/xine-lib > > > i'm no configuration/compiler expert but they look very good to me. > > > i would take a little care with the 64bit fixes patch though. > > > > > i'm not sure the goom part is correct, using uintptr_t (is it the same > > > as unsigned int *?) might give a different pointer math that old (wrong) > > > code that cast to (unsigned int). shouldn't (char *) be used instead? > > uintptr_t is an unsigned integer large enough to hold all bits of a > pointer. On 64-bit systems, casting the pointer to (unsigned int) will > result in trashing the higher word. Besides, ~2047 will be a 32-bit value, > thus the cast to uintptr_t so that we get the desired bits in the upper > part. fair enough. so my assumption that uintptr_t == (unsigned int *) was wrong, and your fix is correct ;-) > > > and while i agree with the change to alphablend.c, why is the old code > > > wrong? > > Well, iirc, that one could cause aliasing problems. But I have not come up > with real world problems as I don't actually know when it is used. Now > that AMD64 hardware is common, people could try it too. ;-) well, you can force using this code by playing a dvd with subtitles/menus and enabling tvtime. make sure tvtime's cheap_mode=0. anyway it looks cleaner with this patch applied. regards, Miguel ps: Rocky, no objections for committing Mandrake's patches. we should submit the goom part back to maintainers though... |