Package: impressive
Version: 0.10.2r-2
Severity: normal
Tags: patch

impressive uses RGB textures with 3 bytes per texel. Unfortunately
impressive does not call glPixelStorei(GL_UNPACK_ALIGNMENT, 1) so opengl
skips bytes at the end of each row when width*3 is not a multiple of 4,
causing a slanted display and sometimes a segfault due to a short read.
A fix is attached.
The bug and fix have been reported upstream.

-- System Information:
Debian Release: 5.0
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-1-686 (SMP w/1 CPU core)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages impressive depends on:
ii  perl                    5.10.0-18        Larry Wall's Practical Extraction 
ii  poppler-utils           0.8.7-1          PDF utilitites (based on libpopple
ii  python                  2.5.2-3          An interactive high-level object-o
ii  python-imaging          1.1.6-3          Python Imaging Library
ii  python-opengl           3.0.0~b6-3       Python bindings to OpenGL
ii  python-pygame           1.7.1release-4.2 SDL bindings for games development
ii  python-support          0.8.4            automated rebuilding support for P
ii  xpdf-reader             3.02-1.4         Portable Document Format (PDF) sui

Versions of packages impressive recommends:
ii  ghostscript-x            8.62.dfsg.1-3.1 The GPL Ghostscript PostScript/PDF
ii  pdftk                    1.41-3          useful tool for manipulating PDF d

Versions of packages impressive suggests:
ii  latex-beamer                  3.07-1     LaTeX class to produce presentatio

-- no debconf information
--- /usr/share/impressive/impressive.py 2008-12-05 21:30:51.000000000 +0100
+++ impressive.py       2009-01-03 20:00:18.000000000 +0100
@@ -3402,6 +3402,7 @@
         TexMaxS = ScreenWidth  * 1.0 / TexWidth
         TexMaxT = ScreenHeight * 1.0 / TexHeight
     TexSize = TexWidth * TexHeight * 3
+    glPixelStorei(GL_UNPACK_ALIGNMENT, 1)
 
     # set up some variables
     if DAR is not None:

Reply via email to