diff --git a/autoload/magit/state.vim b/autoload/magit/state.vim
index 160bd2562dc2ae2930d0113891a83655942cd306..5e5c5091a746f332c910878e820f52438ed5a251 100644
--- a/autoload/magit/state.vim
+++ b/autoload/magit/state.vim
@@ -73,6 +73,7 @@ let s:file_template = {
 \	'set_visible': function("magit#state#set_file_visible"),
 \	'toggle_visible': function("magit#state#toggle_file_visible"),
 \	'must_be_added': function("magit#state#must_be_added"),
+\	'get_header': function("magit#state#file_get_header"),
 \	'get_hunks'      : function("magit#state#file_get_hunks"),
 \	'get_flat_hunks' : function("magit#state#file_get_flat_hunks"),
 \}
@@ -95,13 +96,12 @@ function! magit#state#get_file(mode, filename, ...) dict
 	return self.dict[a:mode][a:filename]
 endfunction
 
-" magit#state#get_header: function accessor for diff header
+" magit#state#file_get_header: function accessor for diff header
 " param[in] mode: can be staged or unstaged
 " param[in] filename: header of filename to access
 " return: List of diff header lines
-function! magit#state#get_header(mode, filename) dict
-	let diff_dict_file = self.get_file(a:mode, a:filename, 0)
-	return diff_dict_file.diff.header
+function! magit#state#file_get_header() dict
+	return self.diff.header
 endfunction
 
 " magit#state#add_file: method to add a file with all its
@@ -225,7 +225,6 @@ endfunction
 let magit#state#state = {
 			\ 'get_file': function("magit#state#get_file"),
 			\ 'get_files': function("magit#state#get_files"),
-			\ 'get_header': function("magit#state#get_header"),
 			\ 'add_file': function("magit#state#add_file"),
 			\ 'update': function("magit#state#update"),
 			\ 'dict': { 'staged': {}, 'unstaged': {}},
diff --git a/plugin/magit.vim b/plugin/magit.vim
index addd4135c3ea21f8fbc0c12187bce7a17a507208..ed66ec3456a7f2549de43fa988d21dd228fd582f 100644
--- a/plugin/magit.vim
+++ b/plugin/magit.vim
@@ -717,7 +717,7 @@ endfunction
 function! magit#stage_block(selection, discard) abort
 	let section=<SID>mg_get_section()
 	let filename=<SID>mg_get_filename()
-	let header = s:state.get_header(section, filename)
+	let header = s:state.get_file(section, filename).get_header()
 	
 	let file = s:state.get_file(section, filename, 0)
 	if ( a:discard == 0 )