CVSROOT: /cvs/gnome
Module name: ooo-build
Changes by: tml 06/10/09 16:06:35
Modified files:
. : ChangeLog
patches/cairo : cairo-canvas-win32.diff
cairocanvas-check-bitmap-system-data-pixmap-size.diff
Log message:
2006-10-09 Tor Lillqvist <[EMAIL PROTECTED]>
* patches/cairo/cairo-canvas-win32.diff: Fix handling of Bitmaps
that are implemented as in-memory DIBs by WinSalBmp. This is
indicated by BitmapSystemData::pDIB being non-NULL. It is a
HGLOBAL for the DIB. We can't pass the bitmap data for that to
cairo_image_surface_create_for_data() as the format is wrong in
many ways; for starters, it's upside-down, and if it has a DIB
format other than 24-bit BI-RGB, cairo wouldn't understand it
anyway.
Possibly it would make sense to have sal create DIB sections
instead of mucking around with "global" memory segments and
in-memory DIBs. Probably that code in sal is a leftover from Win9x
days, or even older. DIB sections have the actual bits in-memory
anyway, and additionally they have HBITMAP handles that can be
used like HBITMAP handles for DDBs.
* patches/cairocanvas-check-bitmap-system-data-pixmap-size.diff
(DeviceHelper::getSurface): On Win32, notice DIB bitmaps early
here before even calling the Surface constructor. Return NULL
instead, and the code higher in the call chain will use fallback
code instead.
URL :
http://cvs.gnome.org/bonsai/cvsquery.cgi?branch=&dir=ooo-build&who=tml&date=explicit&mindate=2006-10-09%2016:05&maxdate=2006-10-09%2016:07
_______________________________________________
cvs-commits-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/cvs-commits-list