Ejemplo n.º 1
0
        public void revertDetours()
        {
            if (DetourInited)
            {
                Log.Info("Reverting manual detours");
                Detours.Reverse();
                foreach (Detour d in Detours)
                {
                    RedirectionHelper.RevertRedirect(d.OriginalMethod, d.Redirect);
                }
                Detours.Clear();

                Log.Info("Reverting attribute-driven detours");
                AssemblyRedirector.Revert();

                Log.Info("Reverting Harmony detours");
                foreach (MethodBase m in HarmonyMethodStates.Keys)
                {
                    HarmonyInst.Unpatch(m, HarmonyPatchType.All, HARMONY_ID);
                }

                DetourInited = false;
                Log.Info("Reverting detours finished.");
            }
        }
Ejemplo n.º 2
0
 public void revertDetours()
 {
     if (LoadingExtension.Instance.DetourInited)
     {
         Log.Info("Revert detours");
         foreach (Detour d in Detours)
         {
             RedirectionHelper.RevertRedirect(d.OriginalMethod, d.Redirect);
         }
         LoadingExtension.Instance.DetourInited = false;
     }
 }
Ejemplo n.º 3
0
 public void revertDetours()
 {
     if (LoadingExtension.Instance.DetourInited)
     {
         Log.Warning("Revert detours");
         for (int i = 0; i < 7; ++i)
         {
             if (LoadingExtension.Instance.OriginalMethods[i] != null)
             {
                 RedirectionHelper.RevertRedirect(LoadingExtension.Instance.OriginalMethods[i], LoadingExtension.Instance.CustomRedirects[i]);
             }
         }
         LoadingExtension.Instance.DetourInited = false;
     }
 }