--- backend/ipp.c.orig	2012-09-27 18:23:17.000000000 +0200
+++ backend/ipp.c	2012-09-27 18:26:29.000000000 +0200
@@ -923,6 +923,9 @@
 	_cupsLangPrintFilter(stderr, "ERROR",
 	                     _("Unable to get printer status."));
         sleep(10);
+        if (ipp_status == IPP_INTERNAL_ERROR) {
+	  httpReconnect(http);
+        }
       }
 
       ippDelete(supported);
