Nicolas Cannasse %!s(int64=6) %!d(string=hai) anos
pai
achega
dce8839674
Modificáronse 1 ficheiros con 1 adicións e 2 borrados
  1. 1 2
      src/filters/filtersCommon.ml

+ 1 - 2
src/filters/filtersCommon.ml

@@ -51,8 +51,7 @@ let run_expression_filters ctx filters t =
 			(match f.cf_expr with
 			| Some e when not (is_removable_field ctx f) ->
 				AbstractCast.cast_stack := f :: !AbstractCast.cast_stack;
-				f.cf_expr <- Some (run e);
-				AbstractCast.cast_stack := List.tl !AbstractCast.cast_stack;
+				f.cf_expr <- Some (Std.finally (fun() -> AbstractCast.cast_stack := List.tl !AbstractCast.cast_stack) run e);
 			| _ -> ());
 			List.iter process_field f.cf_overloads
 		in