Branch: master

b3e3f602 2014-11-20 15:10:50 Timothy Pearson
Fix duplicated printer driver entries
This relates to Bug 2191
M tdeprint/cups/make_driver_db_cups.cpp
diff --git a/tdeprint/cups/make_driver_db_cups.cpp b/tdeprint/cups/make_driver_db_cups.cpp
index c658181..a6dec11 100644
--- a/tdeprint/cups/make_driver_db_cups.cpp
+++ b/tdeprint/cups/make_driver_db_cups.cpp
@@ -203,6 +203,13 @@
 	}
 }
 
+void initCompressedPpd(const char *dirname)
+{
+	// HACK
+	// The initPpd function actually handles the compressed PPDs as well, so do nothing here
+	// If we were to rerun initPpd here then all drivers would be duplicated!
+}
+
 int parsePpdFile(const char *filename, const char *origin, const char *metadata, FILE *output_file)
 {
 	gzFile	ppd_file;
@@ -350,7 +357,7 @@
 int main(int argc, char *argv[])
 {
 	registerHandler("ppd:", initPpd, parsePpdFile);
-	registerHandler("compressed-ppd:", initPpd, parseCompressedPpdFile);
+	registerHandler("compressed-ppd:", initCompressedPpd, parseCompressedPpdFile);
 	initFoomatic();
 	return execute(argc, argv);
 }