Make Apache play nice with regen rmdom'ing
[hcoop/zz_old/domtool2-proto.git] / src / plugins / apache.sml
index 4e07e4e..132f479 100644 (file)
@@ -256,10 +256,12 @@ val () = Slave.registerFileHandler (fn fs =>
                                                                            file = #file spl}
 
                                                   val user = findVhostUser (#file fs)
-                                                  val oldUser = findVhostUser realVhostFile
+                                                  val oldUser = case #action fs of
+                                                                    Slave.Delete false => user
+                                                                  | _ => findVhostUser realVhostFile
                                               in
                                                   if (oldUser = NONE andalso #action fs <> Slave.Add)
-                                                     orelse (user = NONE andalso #action fs <> Slave.Delete) then
+                                                     orelse (user = NONE andalso not (Slave.isDelete (#action fs))) then
                                                       print ("Can't find user in " ^ #file fs ^ " or " ^ realVhostFile ^ "!  Taking no action.\n")
                                                   else
                                                       let
@@ -281,7 +283,7 @@ val () = Slave.registerFileHandler (fn fs =>
                                                       in
                                                           vhostsChanged := true;
                                                           case #action fs of
-                                                              Slave.Delete =>
+                                                              Slave.Delete =>
                                                               let
                                                                   val ldir = realLogDir oldUser
                                                               in