--- htdig-3.1.6/contrib/doc2html/pdf2html.pl	Thu Jan 31 18:47:13 2002
+++ htdig-3.1.6-sg/contrib/doc2html/pdf2html.pl	Wed Jul 17 03:36:46 2002
@@ -39,6 +39,7 @@
   die "MIME/type $MIME_type wrong";
 }
 
+my $URL = $ARGV[2] || '?';
 my $Name = $ARGV[2] || '';
 $Name =~ s#^.*/##;
 $Name =~ s/%([A-F0-9][A-F0-9])/pack("C", hex($1))/gie;
@@ -71,7 +72,8 @@
             }
 
         }
-        close INFO;
+        close INFO
+          or die "An error occured converting PDF file '$Input' (URL '$URL'): $PDFINFO failed, ".waitinfo($?)."\n";
     } else { warn "cannot execute pdfinfo" }
     if (not length $title) {
       if ($Name) {
@@ -123,7 +125,8 @@
       $bline = "<p>\n";
     }
   }
-  close CAT;
+  close CAT
+    or die "An error occured converting PDF file '$Input' (URL '$URL'): $PDFTOTEXT failed, ".waitinfo($?)."\n";
 
   print "</BODY>\n</HTML>\n";
   return;
@@ -158,3 +161,27 @@
   $text =~  s/\"/\'/g;
   return $text;
 }
+
+sub waitinfo {
+# Analyze the wait status, and return a description.
+
+  my($w)=@_;
+  my $r;
+
+  my $exit_value  = $w >> 8;
+  my $signal_num  = $w & 127;
+  my $dumped_core = $w & 128;
+
+  if ($signal_num) {
+    $r="died from signal $signal_num";
+    if ($dumped_core)
+    {
+      $r .= " (core dumped)";
+    }
+  }
+  else
+  {
+    $r="exited with status $exit_value";
+  }
+  return $r;
+}
