From cc49830d6031e8e74c0426f77e2b3589e5774765 Mon Sep 17 00:00:00 2001 From: Nicholas Clark Date: Sat, 14 May 2011 21:59:38 +0100 Subject: Add an optional third argument to open_new(), to invoke read_only_top() with. Merge together many calls to open_new() and read_only_top(). --- regen/regen_lib.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'regen/regen_lib.pl') diff --git a/regen/regen_lib.pl b/regen/regen_lib.pl index e18a3ba9b8..4715236050 100644 --- a/regen/regen_lib.pl +++ b/regen/regen_lib.pl @@ -34,8 +34,9 @@ sub safer_unlink { # Open a new file. sub open_new { - my ($final_name, $mode) = @_; + my ($final_name, $mode, $header) = @_; my $name = $final_name . '-new'; + my $lang = $final_name =~ /\.(?:c|h|tab|act)$/ ? 'C' : 'Perl'; my $fh = gensym; if (!defined $mode or $mode eq '>') { if (-f $name) { @@ -49,8 +50,9 @@ sub open_new { } *{$fh}->{name} = $name; *{$fh}->{final_name} = $final_name; - *{$fh}->{lang} = ($final_name =~ /\.(?:c|h|tab|act)$/ ? 'C' : 'Perl'); + *{$fh}->{lang} = $lang; binmode $fh; + print $fh read_only_top(lang => $lang, %$header) if $header; $fh; } -- cgit v1.2.1