diff --git a/src/lib/CoAlgMisc.ml b/src/lib/CoAlgMisc.ml
index 2e742914a3064cc570ecd2255f888076e1d57438..0804b35aa7426bf2e434ed91d8325ec175dbc4ba 100644
--- a/src/lib/CoAlgMisc.ml
+++ b/src/lib/CoAlgMisc.ml
@@ -665,7 +665,7 @@ let rec detClosure vars nomTbl hcF fset vset atset nomset s f =
      *)
     | C.HCMU (name, f1) ->
        begin
-         if C.hc_freeIn name f1
+         if C.hc_freeIn name f1 && newvars == []
          then
            C.HcFHt.replace vset.(s) f name
          else ();