#! /bin/sh /usr/share/dpatch/dpatch-run
## 55_pcl-input-slot-fix.dpatch by  <till.kamppeter@gmail.com>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.

@DPATCH@
diff -urNad ghostscript-8.63.dfsg.1~/src/gdevdjet.c ghostscript-8.63.dfsg.1/src/gdevdjet.c
--- ghostscript-8.63.dfsg.1~/src/gdevdjet.c	2008-05-02 03:42:14.000000000 +0200
+++ ghostscript-8.63.dfsg.1/src/gdevdjet.c	2008-11-26 11:12:03.000000000 +0100
@@ -316,12 +316,10 @@
 {
     gx_device_hpjet *dev = (gx_device_hpjet *)pdev;
     int paper_source = -1;
-    int paper_source_tab[] = { 5, 1 };
 
     if (dev->ManualFeed_set && dev->ManualFeed) paper_source = 2;
-    else if (dev->MediaPosition_set && dev->MediaPosition >= 0 &&
-	     dev->MediaPosition < countof(paper_source_tab))
-	paper_source = paper_source_tab[dev->MediaPosition];
+    else if (dev->MediaPosition_set && dev->MediaPosition >= 0)
+	paper_source = dev->MediaPosition;
     if (paper_source >= 0)
 	sprintf(buf, "%s\033&l%dH", str, paper_source);
     else
@@ -549,6 +547,10 @@
     {
 	code = param_write_bool(plist, "ManualFeed", &dev->ManualFeed);
     }
+    if (code >= 0)
+    {
+	code = param_write_int(plist, "MediaPosition", &dev->MediaPosition);
+    }
     if (code >=0)
     	code = param_write_bool(plist, "Tumble", &dev->Tumble);
     return code;
@@ -568,10 +570,10 @@
     code = param_read_bool(plist, "ManualFeed", &ManualFeed);
     if (code == 0) ManualFeed_set = true;
     if (code >= 0) {
-	code = param_read_int(plist, "%MediaSource", &MediaPosition);
+	code = param_read_int(plist, "MediaPosition", &MediaPosition);
 	if (code == 0) MediaPosition_set = true;
 	else if (code < 0) {
-	    if (param_read_null(plist, "%MediaSource") == 0) {
+	    if (param_read_null(plist, "MediaPosition") == 0) {
 		code = 0;
 	    }
 	}
