Bug 568568 - SWTError: No more handles when printing without available
default printer

Change-Id: Icf123e21ad74cc91dab108e086488e7a445106b2
Signed-off-by: Dirk Fauth <dirk.fauth@googlemail.com>
diff --git a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/print/LayerPrinter.java b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/print/LayerPrinter.java
index 637d292..6304823 100644
--- a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/print/LayerPrinter.java
+++ b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/print/LayerPrinter.java
@@ -683,7 +683,8 @@
             printDialog.getPrinterData().orientation = orientation;
         }
 
-        if (this.calculatePageCount) {
+        PrinterData defaultPrinterData = Printer.getDefaultPrinterData();
+        if (this.calculatePageCount && defaultPrinterData != null) {
             // if pre-rendering is enabled, render in-memory to
             // trigger content based auto-resizing
             if (LayerPrinter.this.preRender) {
@@ -699,7 +700,7 @@
             }
 
             try {
-                Printer defaultPrinter = new Printer();
+                Printer defaultPrinter = new Printer(defaultPrinterData);
                 int pageCount = getPageCount(defaultPrinter);
                 defaultPrinter.dispose();