tags 362586 patch
#more a workaround than a real patch ;)
thanks

Runnnig `foomatic-db-engine -O` in gdb says that the bug is at line
1840:
 
1832          if (debug) fprintf(stderr, "  Printer file loaded!\n");
1833          /* process it */
1834          parse(&printerbuffer, NULL, NULL, printerfilename, &printerlist, 
4,
1835                (const char **)defaultsettings, num_defaultsettings, &nopjl,
1836                idlist, debug2);
1837          /* put it out */
1838          printf("%s", printerbuffer);
1839          /* Delete the printer file from memory */
1840          free((void*)printerbuffer);
1841          printerbuffer = NULL;
1842        }

Just commenting out that line fixes the glibc error. I've attached here the 
patch.
I've tried it in printconf and it now works. Please note that this is a just a 
workaround, 
because I couldn't find a trivial double free. A better patch should be applied 
once identified 
the real issue.  

Theorically this could lead to memory leak (but I didn't experience in my test).

Cheers, Luca

-- 
 .''`.  ** Debian GNU/Linux **  | Luca Bruno
: :'  :   The Universal O.S.    | luca.br(AT)uno.it
`. `'`                          | GPG Key ID: 3BFB9FB3
  `-     http://www.debian.org  | Proud Debian GNU/Linux User

Attachment: patch
Description: Binary data

Attachment: pgpVX0fYdovNy.pgp
Description: PGP signature

Reply via email to