[LON-CAPA-cvs] cvs: loncom /interface printout.pl

albertel lon-capa-cvs@mail.lon-capa.org
Mon, 18 Dec 2006 21:03:12 -0000


albertel		Mon Dec 18 16:03:12 2006 EDT

  Modified files:              
    /loncom/interface	printout.pl 
  Log:
  - Eliminte uneeded use of IO::File
  - add in missin /
  - run each font creation command only once
  
  
Index: loncom/interface/printout.pl
diff -u loncom/interface/printout.pl:1.117 loncom/interface/printout.pl:1.118
--- loncom/interface/printout.pl:1.117	Mon Dec 18 06:34:55 2006
+++ loncom/interface/printout.pl	Mon Dec 18 16:03:10 2006
@@ -527,7 +527,7 @@
 				     \%prog_state, $dvi_file);
 
 	      }
-	      &busy_wait_command("$comma $name_file 1>dev/null 2>/dev/null",
+	      &busy_wait_command("$comma $name_file 1>/dev/null 2>/dev/null",
 				 "for $status_statement dvips to repaginate",
 				 \%prog_state, $new_name_file);
 	      #
@@ -560,7 +560,7 @@
 		  #print("<br />Missing fonts file exists\n");
 		  &create_missing_fonts($missfonts_file);
 		  unlink($missfonts_file, \%prog_state);
-		  &busy_wait_command("$comma $name_file 1>dev/null 2>/dev/null",
+		  &busy_wait_command("$comma $name_file 1>/dev/null 2>/dev/null",
 				     "for $status_statement dvips generated missing fonts",
 				     \%prog_state, $new_name_file);
 	      }
@@ -669,7 +669,7 @@
 	      #print("<br />Missing fonts file exists\n");
 	      &create_missing_fonts($missfonts_file);
 	      unlink($missfonts_file);
-	      &busy_wait_command("$comma $name_file 1>dev/null 2>/dev/null",
+	      &busy_wait_command("$comma $name_file 1>/dev/null 2>/dev/null",
 				 "for $status_statement dvips generated missing fonts",
 				 \%prog_state, $new_name_file);
 	  }
@@ -962,16 +962,19 @@
     # Open and read in the font file..we'll read it into the array
     #  font_commands.
     #
-    my $font_handle = IO::File->new($fontfile);
+    open(my $font_handle, $fontfile);
     my @font_commands = <$font_handle>;
-    
+
+    # make the list contain each command only once
+    my %uniq;
+    @font_commands = map { $uniq{$_}++ == 0 ? $_ : () } @font_commands;
 
     #  Now process each command replacing the appropriate 8000's with
     #  600's ensuring that font names with 8000's in them are not corrupted.
     #  and if the --mfmode is not ljfour we turn it into ljfour.
     #   Then we execute the command.
     #
-
+    
     foreach my $command (@font_commands) {
 	#print("<br />Raw command: $command");
 	$command =~ s/ 8000/ 600/g;    # dpi directives.
@@ -988,7 +991,7 @@
 	$command = join(" ", (@cmdarray));
 
 	#print("<br />Creating fonts via command: $command");
-	&busy_wait_command("$command 1>dev/null 2>/dev/null",
+	&busy_wait_command("$command 1>/dev/null 2>/dev/null",
 			   "Creating missing font",
 			   $state, $command);