Regression problem with libcairo2 (1.12.2) found in Quantal
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cairo |
Fix Released
|
Medium
|
|||
cairo (Ubuntu) |
Fix Released
|
Low
|
Unassigned |
Bug Description
The version of libcairo2 found in Ubuntu Quantal (1.12.2) and Raring (1.12.10) introduces a rendering bug that was not present in Oneiric (1.10.2)
The rendering problem shows up when using the rsvg utility to convert particular SVG files to PNG format. (See package librsvg2-bin) When converting particular files, major artifacts are found in the output. At first I thought the bug was in librsvg2 but after some investigation I traced the problem to libcairo2. I was able to prove this by setting LD_LIBRARY_PATH to override the Quantal version with the Oneiric version. The artifacts then disappeared.
TO REPRODUCE THE BUG
This assumes you are running Ubuntu 12.10 Quantal. Download the following test SVG file into a directory and use gunzip to unpack it.
http://
Download the following Python test script into the same directory:
http://
import subprocess
for width in range (400, 900, 100):
print 'Converting to width:', width
subprocess.call (['rsvg', '--width', str (width), 'waterfall.svg', 'waterfall.%s.png' % width])
Make sure package librsvg2-bin is installed.
Run the script from the command line. The script outputs 5 PNG files ranging in width from 400 to 800. The first and last PNG do not have any problem, but the 500, 600 and 700 width files all have major artifacts.
TESTING LIBCAIRO2 VERSIONS
Create a subdirectory 'libs'. Into this directory extract the shared object 'libcairo.
ln libs/libcairo.
set the library path as follows
export LD_LIBRARY_
Run the test script again and examine the output. You will find that the 1.10.2 version produces images without any artifacts.
Related branches
Changed in cairo: | |
importance: | Unknown → Medium |
status: | Unknown → Fix Released |
Attached is the SVG test file for the test script