- fixed speckles (white dots) on dithered images (bug still present on the
[wmaker-crm.git] / wrlib / ChangeLog
blobf6441228367a25674428dddf38efafe6807a9a85
1 - Added retain/release mechanism to RImage by adding RRetainImage() and
2   RReleaseImage(). RDestroyImage() is an alias to RReleaseImage() now, but
3   will be removed in a future release because it no longer fits with the
4   semantics. Will be kept for a while to allow a smoother transition.
5   More about in NEWS
6 - Fixed crashing for Pseudocolor visuals with BestMatchRendering
7 - Small speed improvement for 24 and 32 bpp, if internal converter is used
8 - Small speed improvement for generating gradients.
9 - Fixed RSaveXPM() to output correct xpm images.
10 - fixed speckles (white dots) on dithered images (bug still present on the
11   PowerPC architecture, because on LinuxPPC char is unsigned by default, not
12   signed like on the other platforms).
13   Bug fixed by Philip Derrin <philipd@student.unsw.edu.au>
16 - fixed code dependant on the order of evaluation. code like
17   *ptr++ = *ptr++ = *ptr++ = color;
18   is wrong, because there is no guarantee that ptr will be incremented
19   _between_ the assignment operations. it can be incremented after all 
20   assignment operations as well. Because of this both of these are valid
21   implementations for a compiler:
22    a. assign, increment, assign, increment, assign, increment
23    b. assign, assign, assign, increment by 3
24   In case b. only the first memory location of the 3 will be modified, being
25   assigned 3 times the same value, while the other 2 remain unchanged.
26   For example egcs-2.91.66 (and possibly gcc-2.95.x too) implement this in
27   the second way (like in case b.)
28   Also the order in which the assignement is made is undefined (left to right 
29   or right to left).
31 - added RMakeCenteredImage()
33 - Added code to draw pixels and lines. Both writing absolute values, or
34   offseting existing pixels with delta values are supported.
35 - Remade the beveling code to be simpler, using the RAlterLine() functions.
36 - Fixed some pixels in the bevels.
37 - Changed RAlter* functions to more generic ROperate*