diff --git a/autoload/magit/state.vim b/autoload/magit/state.vim
index d33229e0e03f90ba0348628b9b5144206479ca27..51488533c058cfe6ad23115036d5c8646fd7f31e 100644
--- a/autoload/magit/state.vim
+++ b/autoload/magit/state.vim
@@ -277,8 +277,8 @@ function! magit#state#update() dict
 	try
 		call magit#utils#chdir(magit#git#top_dir())
 		call magit#utils#refresh_submodule_list()
+		let status_list = magit#git#get_status()
 		for [mode, diff_dict_mode] in items(self.dict)
-			let status_list = magit#git#get_status()
 			for file_status in status_list
 				let status=file_status[mode]