Index: gtk/gtkprintoperation.c
===================================================================
--- gtk/gtkprintoperation.c	(revision 17566)
+++ gtk/gtkprintoperation.c	(working copy)
@@ -2048,7 +2048,8 @@ print_pages_idle (gpointer user_data)
 	  goto out;
 	}
       
-      if (g_signal_has_handler_pending (data->op, signals[PAGINATE], 0, FALSE))
+      if (GTK_PRINT_OPERATION_GET_CLASS (data->op)->paginate != NULL ||
+	  g_signal_has_handler_pending (data->op, signals[PAGINATE], 0, FALSE))
 	{
 	  gboolean paginated = FALSE;
 
