Index: backend/ipp.c
===================================================================
--- backend/ipp.c	(revision 10250)
+++ backend/ipp.c	(working copy)
@@ -1207,9 +1207,18 @@
 
     _cupsLangPrintFilter(stderr, "INFO", _("Copying print data."));
 
-    compatsize = backendRunLoop(-1, fd, snmp_fd, &(addrlist->addr), 0, 0,
-		                backendNetworkSideCB);
+    if ((compatsize = write(fd, buffer, bytes)) < 0)
+    {
+      perror("DEBUG: Unable to write temporary file");
+      return (CUPS_BACKEND_FAILED);
+    }
 
+    if ((bytes = backendRunLoop(-1, fd, snmp_fd, &(addrlist->addr), 0, 0,
+		                backendNetworkSideCB)) < 0)
+      return (CUPS_BACKEND_FAILED);
+
+    compatsize += bytes;
+
     close(fd);
 
     compatfile = tmpfilename;
