![](https://seccdn.libravatar.org/avatar/e2145bc5cf53dda95c308a3c75e8fef3.jpg?s=120&d=mm&r=g)
Hello community, here is the log from the commit of package xorg-x11-libX11 checked in at Thu Apr 12 18:21:37 CEST 2007. -------- --- xorg-x11-libX11/xorg-x11-libX11.changes 2007-02-22 06:05:41.000000000 +0100 +++ /mounts/work_src_done/STABLE/xorg-x11-libX11/xorg-x11-libX11.changes 2007-04-04 23:08:04.535124000 +0200 @@ -1,0 +2,17 @@ +Wed Apr 4 22:55:18 CEST 2007 - sndirsch@suse.de + +- bug-248332_lcDB.diff: + * fixes a bad pointer calculation type (Bug #248332) + +------------------------------------------------------------------- +Thu Mar 29 22:44:44 CEST 2007 - sndirsch@suse.de + +- added zlib-devel to Buildrequires + +------------------------------------------------------------------- +Mon Mar 26 12:57:33 CEST 2007 - sndirsch@suse.de + +- bug-252958_libX11.diff: + * Buffer overflow in XGetPixel() (Bug #252958) + +------------------------------------------------------------------- New: ---- bug-248332_lcDB.diff bug-252958_libX11.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xorg-x11-libX11.spec ++++++ --- /var/tmp/diff_new_pack.d15778/_old 2007-04-12 18:21:30.000000000 +0200 +++ /var/tmp/diff_new_pack.d15778/_new 2007-04-12 18:21:30.000000000 +0200 @@ -12,10 +12,10 @@ Name: xorg-x11-libX11 %define dirsuffix 1.1.1 -BuildRequires: pkgconfig xorg-x11-libXau-devel xorg-x11-libXdmcp-devel xorg-x11-libxcb-devel xorg-x11-proto-devel xorg-x11-xtrans-devel +BuildRequires: pkgconfig xorg-x11-libXau-devel xorg-x11-libXdmcp-devel xorg-x11-libxcb-devel xorg-x11-proto-devel xorg-x11-xtrans-devel zlib-devel Url: http://xorg.freedesktop.org/ Version: 7.2 -Release: 28 +Release: 35 License: X11/MIT BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: System/Libraries @@ -37,6 +37,8 @@ Patch8: p_khmer-locale.diff Patch9: p_xlib_skip_ext_env.diff Patch10: bug-239698_libx11.diff +Patch11: bug-252958_libX11.diff +Patch12: bug-248332_lcDB.diff %description This package contains the X.Org X11 library. @@ -112,6 +114,10 @@ %patch8 %patch9 %patch10 -p1 +%patch11 -p0 +pushd src/xlibi18n +%patch12 -p2 +popd %build autoreconf -fi @@ -180,6 +186,14 @@ %{_mandir}/man3/* %changelog +* Wed Apr 04 2007 - sndirsch@suse.de +- bug-248332_lcDB.diff: + * fixes a bad pointer calculation type (Bug #248332) +* Thu Mar 29 2007 - sndirsch@suse.de +- added zlib-devel to Buildrequires +* Mon Mar 26 2007 - sndirsch@suse.de +- bug-252958_libX11.diff: + * Buffer overflow in XGetPixel() (Bug #252958) * Thu Feb 22 2007 - sndirsch@suse.de - build with libxcb again * Tue Jan 30 2007 - sndirsch@suse.de ++++++ bug-248332_lcDB.diff ++++++ --- lib/X11/lcDB.c.orig 2007-04-03 15:55:58.000000000 +0200 +++ lib/X11/lcDB.c 2007-04-03 16:06:30.000000000 +0200 @@ -516,7 +516,8 @@ append_value_list (void) goto err1; } if (value != *value_list) { - int delta, i; + int i; + ssize_t delta; delta = value - *value_list; *value_list = value; for (i = 1; i < value_num; ++i) { ++++++ bug-252958_libX11.diff ++++++ diff --git a/src/ImUtil.c b/src/ImUtil.c index 83fd030..9e667bb 100644 --- src/ImUtil.c +++ src/ImUtil.c @@ -327,12 +327,13 @@ XImage *XCreateImage (dpy, visual, depth { register XImage *image; int bits_per_pixel = 1; + int min_bytes_per_line; if (depth == 0 || depth > 32 || (format != XYBitmap && format != XYPixmap && format != ZPixmap) || (format == XYBitmap && depth != 1) || (xpad != 8 && xpad != 16 && xpad != 32) || - offset < 0 || image_bytes_per_line < 0) + offset < 0) return (XImage *) NULL; if ((image = (XImage *) Xcalloc(1, (unsigned) sizeof(XImage))) == NULL) return (XImage *) NULL; @@ -363,16 +364,21 @@ XImage *XCreateImage (dpy, visual, depth /* * compute per line accelerator. */ - if (image_bytes_per_line == 0) { if (format == ZPixmap) - image->bytes_per_line = + min_bytes_per_line = ROUNDUP((bits_per_pixel * width), image->bitmap_pad); else - image->bytes_per_line = + min_bytes_per_line = ROUNDUP((width + offset), image->bitmap_pad); } - else image->bytes_per_line = image_bytes_per_line; + if (image_bytes_per_line == 0) { + image->bytes_per_line = min_bytes_per_line; + } else if (image_bytes_per_line < min_bytes_per_line) { + return 0; + } else { + image->bytes_per_line = image_bytes_per_line; + } image->bits_per_pixel = bits_per_pixel; image->obdata = NULL; @@ -384,7 +390,11 @@ XImage *XCreateImage (dpy, visual, depth Status XInitImage (image) XImage *image; { + int min_bytes_per_line; + if (image->depth == 0 || image->depth > 32 || + image->bits_per_pixel > 32 || image->bitmap_unit > 32 || + image->bits_per_pixel < 0 || image->bitmap_unit < 0 || (image->format != XYBitmap && image->format != XYPixmap && image->format != ZPixmap) || @@ -392,21 +402,24 @@ Status XInitImage (image) (image->bitmap_pad != 8 && image->bitmap_pad != 16 && image->bitmap_pad != 32) || - image->xoffset < 0 || image->bytes_per_line < 0) + image->xoffset < 0) return 0; /* * compute per line accelerator. */ - if (image->bytes_per_line == 0) - { if (image->format == ZPixmap) - image->bytes_per_line = + min_bytes_per_line = ROUNDUP((image->bits_per_pixel * image->width), image->bitmap_pad); else - image->bytes_per_line = + min_bytes_per_line = ROUNDUP((image->width + image->xoffset), image->bitmap_pad); + + if (image->bytes_per_line == 0) { + image->bytes_per_line = min_bytes_per_line; + } else if (image->bytes_per_line < min_bytes_per_line) { + return 0; } _XInitImageFuncPtrs (image); ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org