foomatic-db-gutenprint causes printer setup malfunctioning

Bug #39744 reported by Conrad Knauer
16
Affects Status Importance Assigned to Milestone
Baltix
Fix Released
Undecided
Unassigned
foomatic-db (Ubuntu)
Fix Released
Medium
Unassigned
foomatic-gui (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

In Ubuntu Dapper (from repositories; as of April 16) When foomatic-db-gutenprint is installed, foomatic-gui doesn't work, giving the error:

*** glibc detected *** double free or corruption (!prev): 0x0815f178 ***
Unable to read printer database.

Also, my printer (HP PSC 1210) driver in the Ubuntu printer setup is listed wrong.

Uninstalling foomatic-db-gutenprint corrects both issues. Unfortunately, it is a dependency of ubuntu-desktop.

This is likely related to (the same as?) Debian Bug 319284: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=319284

Revision history for this message
Conrad Knauer (atheoi) wrote :

I can confirm that this causes the same problem on another person's computer; I loaded an Ubuntu Dapper Live Flight 5 CD and upgraded the foomatic packages and got the same error. Uninstalling foomatic-db-gutenprint made it work again.

Revision history for this message
Conrad Knauer (atheoi) wrote :

This bug still exists in foomatic-db-gutenprint version 5.0.0~rc2-0ubuntu5

$ foomatic-gui
*** glibc detected *** double free or corruption (!prev): 0x0815f178 ***
Unable to read printer database.

after removal of the package, normal functionality is restored.

Revision history for this message
Conrad Knauer (atheoi) wrote :

5.0.0~rc2-0ubuntu6 causes the same problems; removing it fixes them, as it did before.

Revision history for this message
Martin Pitt (pitti) wrote :

We recently upgraded to this version of foomatic-db:

foomatic-db (20060408-1) unstable; urgency=low

  * New upstream release.
  * Suggest hpijs-ppds instead of hplip-ppds. (Closes: #361126)
  * New database seems to be missing whatever problem was causing the
    double-free bug in foomatic-configure and friends.
    (Closes: #360785, #360787)

 -- Chris Lawrence <email address hidden> Sat, 8 Apr 2006 05:01:31 -0400

foomatic-gui and friends work fine now.

Changed in gutenprint:
assignee: nobody → pitti
status: Unconfirmed → Fix Released
Revision history for this message
Conrad Knauer (atheoi) wrote :

I am still experiencing this problem, so no, it is not fixed in Ubuntu. I am using the most up to date version from the repositories (e.g. foomatic-db 20060408-1ubuntu1). I tried reinstalling foomatic*, but it did not work. I tried uninstalling and then reinstalling foomatic* but that did not work either.

The only way for me to get foomatic-gui to work is to uninstall foomatic-db-gutenprint.

Revision history for this message
Conrad Knauer (atheoi) wrote :

It is still not working though :)

Changed in foomatic-db:
status: Fix Released → Unconfirmed
Revision history for this message
Conrad Knauer (atheoi) wrote :

Last comment was me changing the status.

Revision history for this message
Martin Pitt (pitti) wrote :

Does it work after doing

  sudo foomatic-cleanupdrivers

?

Changed in foomatic-db:
status: Unconfirmed → Needs Info
Revision history for this message
Conrad Knauer (atheoi) wrote :
Download full text (4.3 KiB)

Yes, it did, thank you! =D

First I ran sudo foomatic-cleanupdrivers
here was the output from that, BTW:

---
PM760pl.upp.xml has an empty command line, deleted!
PM820pl.upp.xml has an empty command line, deleted!
Stc680pl.upp.xml has an empty command line, deleted!
Stc760pl.upp.xml has an empty command line, deleted!
Stc777pl.upp.xml has an empty command line, deleted!
Stp720pl.upp.xml has an empty command line, deleted!
Stp870pl.upp.xml has an empty command line, deleted!
bj8gc12f.upp.xml has an empty command line, deleted!
bj8hg12f.upp.xml has an empty command line, deleted!
bj8oh06n.upp.xml has an empty command line, deleted!
bj8pp12f.upp.xml has an empty command line, deleted!
bj8ts06n.upp.xml has an empty command line, deleted!
bjc6000b1.upp.xml has an empty command line, deleted!
bjc610a1.upp.xml has an empty command line, deleted!
bjc610a2.upp.xml has an empty command line, deleted!
bjc610a3.upp.xml has an empty command line, deleted!
bjc610a4.upp.xml has an empty command line, deleted!
bjc610a5.upp.xml has an empty command line, deleted!
bjc610a6.upp.xml has an empty command line, deleted!
bjc610a7.upp.xml has an empty command line, deleted!
bjc610a8.upp.xml has an empty command line, deleted!
bjc610b1.upp.xml has an empty command line, deleted!
bjc610b2.upp.xml has an empty command line, deleted!
bjc610b3.upp.xml has an empty command line, deleted!
bjc610b4.upp.xml has an empty command line, deleted!
bjc610b6.upp.xml has an empty command line, deleted!
bjc610b7.upp.xml has an empty command line, deleted!
bjc610b8.upp.xml has an empty command line, deleted!
capt.xml has an empty command line, deleted!
cljet5c.xml has an empty command line, deleted!
gimp-print.xml has an empty command line, deleted!
gutenprint.xml has an empty command line, deleted!
iwlo.xml has an empty command line, deleted!
iwlq.xml has an empty command line, deleted!
la70t.xml has an empty command line, deleted!
lbp660.xml has an empty command line, deleted!
lj5mono.xml has an empty command line, deleted!
lxm3200m.xml has an empty command line, deleted!
lxm3200p.xml has an empty command line, deleted!
lxx74.xml has an empty command line, deleted!
m2300w.xml has an empty command line, deleted!
m2400w.xml has an empty command line, deleted!
necp2x6.upp.xml has an empty command line, deleted!
nwp533.xml has an empty command line, deleted!
omni.xml has an empty command line, deleted!
pbm2ppa.xml has an empty command line, deleted!
pegg.xml has an empty command line, deleted!
pxlcolor.xml has an empty command line, deleted!
ras1.upp.xml has an empty command line, deleted!
ras24.upp.xml has an empty command line, deleted!
ras3.upp.xml has an empty command line, deleted!
ras32.upp.xml has an empty command line, deleted!
ras4.upp.xml has an empty command line, deleted!
ras8m.upp.xml has an empty command line, deleted!
s400b1.upp.xml has an empty command line, deleted!
slap.xml has an empty command line, deleted!
sparc.xml has an empty command line, deleted!
st640ihg.upp.xml has an empty command line, deleted!
st640p.upp.xml has an empty command line, deleted!
st640pg.upp.xml has an empty command line, delete...

Read more...

Revision history for this message
Conrad Knauer (atheoi) wrote :

(Maybe into foomatic-db-gimp-print since its a transitional package?)

Revision history for this message
Martin Pitt (pitti) wrote :

> foomatic-gui runs normally now :)

As I expected, thanks for checking again!

> So what was the cause of this? Residual stuff leftover from my upgrade from Breezy? If so, should (can?) this command be added into one of the packages as part of the upgrade?

It'll only affect users which had the earlier broken dapper version installed and should not affect upgrades from breezy. Therefore I think this bug report can be closed.

Changed in foomatic-db:
status: Needs Info → Fix Released
Revision history for this message
Conrad Knauer (atheoi) wrote :

Sadly, this bug needs to be reopened; I was testing a Dapper Live CD with a printer at a friend's house and noticed that it was present. I was able to duplicate the problem at home. To reproduce:

Run the latest Ubuntu Dapper Live CD (6.06.1), add universe to sources.list, press reload in Synaptic, install foomatic-gui and run it from Terminal. You will get the "double free or corruption" error.

Fortunately sudo foomatic-cleanupdrivers still works to fix matters, allowing foomatic-gui to then run normally, but having to cleanup the drivers means there's a problem with the package (still? a regression perhaps?).

Perhaps add foomatic-cleanupdrivers to a postinstall script?

Revision history for this message
Conrad Knauer (atheoi) wrote :

FYI, I just tested the same procedure with the original Dapper release Live CD (6.06) and it also has the "double free or corruption" problem.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Note that a virgin (not treated by any patches or programs, like for example foomatic-cleanupdrivers) Foomatic database can have driver entries with empty command line. These are simply entries which do not provide PPD files to be generated via foomatic-db-engine. Most important type of such drivers are

- Native CUPS drivers: They bring their own PPDs, usually generated by CUPS DDK
- Drivers which bring their own Foomatic XML files: The driver XML file in foomatic-db is only to make these drivers appear on the linuxprinting.org web site.
- Drivers for which there is more than one driver XML file: In this case only one of the XML files produces PPDs, the others only contain a text hint telling which is the one producing PPDs.

As empty or missing driver command lines are legal in the Foomatic XML data format, every program using Foomatic should be able to handle this. All programs which come with Foomatic do so.

Printer setup tools should be able to cope with this, either by only showing printer/driver combos for which a PPD can be generated (or is ready-made in /usr/share/ppd) or by producing an error message if a bad combo is selected.

I move this bug to foomatic-gui, as it seems that only this program breaks on empty driver command lines. But please check also whether other printer tools like, gnome-cups-manager, KDE Printing Manager, CUPS web interface, ... have the same problem.

Changed in foomatic-db:
status: Fix Released → Needs Info
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

How does foomatic-gui determine the available printer/driver combos? If it calls "foomatic-combo-xml -O" for that, update to the newest snapshot of foomatic-db-engine from linuxprinting.org (Edgy package in progress) and change to the new "foomatic-combo-xml -C". Then only printer/driver combos which give a valid PPD file are shown.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

I have done changes in foomatic-db upstream so that it can be built without the driver XML file with empty command lines, without driver XMLs for obsolete drivers, and/or even only with driver XMLs for drivers which are recommended for at least one printer. In the newest Ubuntu package I have built this foomatic-db with driver entries for obsolete drivers and with empty command lines excluded. So the problem of printer setup tools breaking on driver XMLs with empty command lines should be solved by that. But note that this is more a workaround than a fix, the setup toools need to be fixed as suggested in my two previous comments.

Changed in foomatic-db:
status: Unconfirmed → Fix Released
importance: Undecided → Medium
Revision history for this message
Martin Pitt (pitti) wrote :

foomatic-gui now doesn't crash any more in current Jaunty.

Changed in foomatic-gui:
assignee: pitti → nobody
status: Incomplete → Fix Released
Przemek K. (azrael)
Changed in baltix:
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.