diff options
Diffstat (limited to 'scripts/get_maintainer.pl')
| -rwxr-xr-x | scripts/get_maintainer.pl | 11 | 
1 files changed, 10 insertions, 1 deletions
| diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl index 139e0fff8e3..d29a8d75cb2 100755 --- a/scripts/get_maintainer.pl +++ b/scripts/get_maintainer.pl @@ -420,6 +420,14 @@ foreach my $file (@ARGV) {  	open(my $patch, "< $file")  	    or die "$P: Can't open $file: $!\n"; + +	# We can check arbitrary information before the patch +	# like the commit message, mail headers, etc... +	# This allows us to match arbitrary keywords against any part +	# of a git format-patch generated file (subject tags, etc...) + +	my $patch_prefix = "";			#Parsing the intro +  	while (<$patch>) {  	    my $patch_line = $_;  	    if (m/^\+\+\+\s+(\S+)/) { @@ -428,13 +436,14 @@ foreach my $file (@ARGV) {  		$filename =~ s@\n@@;  		$lastfile = $filename;  		push(@files, $filename); +		$patch_prefix = "^[+-].*";	#Now parsing the actual patch  	    } elsif (m/^\@\@ -(\d+),(\d+)/) {  		if ($email_git_blame) {  		    push(@range, "$lastfile:$1:$2");  		}  	    } elsif ($keywords) {  		foreach my $line (keys %keyword_hash) { -		    if ($patch_line =~ m/^[+-].*$keyword_hash{$line}/x) { +		    if ($patch_line =~ m/${patch_prefix}$keyword_hash{$line}/x) {  			push(@keyword_tvi, $line);  		    }  		} | 
