Description of problem: System-config-printer freezes with segfault when adding a printer Version-Release number of selected component (if applicable): system-config-display-1.0.37-2 How reproducible: While trying to add a printer (no other printers exist) Steps to Reproduce: 1. 2. 3. Actual results: [root@server ~]# system-config-printer *** glibc detected *** /usr/bin/foomatic-combo-xml: double free or corruption (!prev): 0x00000000005bda30 *** ======= Backtrace: ========= /lib64/libc.so.6[0x35be46dc43] /lib64/libc.so.6(__libc_free+0x84)[0x35be46ddc4] /usr/bin/foomatic-combo-xml[0x40620f] /lib64/libc.so.6(__libc_start_main+0xf4)[0x35be41ce54] /usr/bin/foomatic-combo-xml[0x400e19] ======= Memory map: ======== 00400000-00408000 r-xp 00000000 08:02 376251 /usr/bin/foomatic-combo-xml 00508000-00509000 rw-p 00008000 08:02 376251 /usr/bin/foomatic-combo-xml 00509000-0060d000 rw-p 00509000 00:00 0 [heap] 35be200000-35be21a000 r-xp 00000000 08:02 5111967 /lib64/ld-2.4.so 35be319000-35be31a000 r--p 00019000 08:02 5111967 /lib64/ld-2.4.so 35be31a000-35be31b000 rw-p 0001a000 08:02 5111967 /lib64/ld-2.4.so 35be400000-35be53f000 r-xp 00000000 08:02 5112090 /lib64/libc-2.4.so 35be53f000-35be63f000 ---p 0013f000 08:02 5112090 /lib64/libc-2.4.so 35be63f000-35be643000 r--p 0013f000 08:02 5112090 /lib64/libc-2.4.so 35be643000-35be644000 rw-p 00143000 08:02 5112090 /lib64/libc-2.4.so 35be644000-35be649000 rw-p 35be644000 00:00 0 36fb400000-36fb40d000 r-xp 00000000 08:02 5111811 /lib64/libgcc_s-4.1.1-20060525.so.1 36fb40d000-36fb50d000 ---p 0000d000 08:02 5111811 /lib64/libgcc_s-4.1.1-20060525.so.1 36fb50d000-36fb50e000 rw-p 0000d000 08:02 5111811 /lib64/libgcc_s-4.1.1-20060525.so.1 2aaaaaaab000-2aaaaaaad000 rw-p 2aaaaaaab000 00:00 0 2aaaaaad3000-2aaaaaad5000 rw-p 2aaaaaad3000 00:00 0 2aaaaab00000-2aaaaab21000 rw-p 2aaaaab00000 00:00 0 2aaaaab21000-2aaaaac00000 ---p 2aaaaab21000 00:00 0 7fffef25c000-7fffef372000 rw-p 7fffef25c000 00:00 0 [stack] ffffffffff600000-ffffffffffe00000 ---p 00000000 00:00 0 [vdso] Traceback (most recent call last): File "/usr/share/printconf/util/queueTree.py", line 579, in new_button_clicked self.use_foomatic () File "/usr/share/printconf/util/queueTree.py", line 502, in use_foomatic self.conf.foomatic_init_overview () File "/usr/share/printconf/util/printconf_conf.py", line 1745, in foomatic_init_overview root = parser.parse (foo) File "/usr/lib64/python2.4/site-packages/_xmlplus/utils/qp_xml.py", line 137, in parse p.Parse(s, 0) xml.parsers.expat.ExpatError: not well-formed (invalid token): line 449, column 10 Traceback (most recent call last): File "/usr/sbin/system-config-printer", line 9, in ? import queueTree File "/usr/share/printconf/util/queueTree.py", line 1267, in ? queueTree() File "/usr/share/printconf/util/queueTree.py", line 279, in __init__ gtk.main () KeyboardInterrupt [root@server ~]# Expected results: Additional info:
the trouble make seems to be a currupt file, /usr/share/foomatic/db/source/printer/HP-Color_LaserJet_2800.xml after deleteing it and replacing with a fresh copy all is good now.but here is something from foomatic for you guys [root@server ~]# system-config-printer No match for USB device: mfr "HP" model "Deskjet 5900 series" desc "5940" cmdset "MLC,PCL,PML,DW-PCL,DESKJET,DYN" Please report this message in Bugzilla: https://bugzilla.redhat.com/bugzilla Choose 'foomatic' as the component. No match for USB device: mfr "HP" model "Deskjet 5900 series" desc "5940" cmdset "MLC,PCL,PML,DW-PCL,DESKJET,DYN" Please report this message in Bugzilla: https://bugzilla.redhat.com/bugzilla Choose 'foomatic' as the component.
Do you still have the original /usr/share/foomatic/db/source/printer/HP-Color_LaserJet_2800.xml, the one that caused the crash? If so, please attach it here.
im sorrry, but it needed to be fixed urgently, so i removed and reinstalled foomatic completely. I feel this problem was specific to my system, as the machine in question suffered from a major file curruption caused by some proprietry backup software, I think if system-config-printer, in the future were to come across a currupt printer db xml file, it should try and skip it and display a warning, instead of segfaulting. Sorry about the file,
Unfortunately, without the original file it is no longer possible to discover that the problem was that caused foomatic-combo-xml to crash.