소스 검색

[server] don't consider a file removed if it wasn't there

Simon Krajewski 6 년 전
부모
커밋
54a0466f59
1개의 변경된 파일4개의 추가작업 그리고 2개의 파일을 삭제
  1. 4 2
      src/context/compilationServer.ml

+ 4 - 2
src/context/compilationServer.ml

@@ -147,8 +147,10 @@ let cache_file cs key time data =
 	Hashtbl.replace cs.cache.c_files key { c_time = time; c_package = fst data; c_decls = snd data; c_module_name = None }
 
 let remove_file cs key =
-	Hashtbl.remove cs.cache.c_files key;
-	Hashtbl.replace cs.cache.c_removed_files key ()
+	if Hashtbl.mem cs.cache.c_files key then begin
+		Hashtbl.remove cs.cache.c_files key;
+		Hashtbl.replace cs.cache.c_removed_files key ()
+	end
 
 let remove_files cs file =
 	List.iter (fun (sign,_) -> remove_file cs (file,sign)) cs.signs