anchor.diff:      try
         gameMPLocalData := TKMGameMPLocalData.Create(fLastReplayTick, gNetworking.MyNetPlayer.StartLocation, fGamePlayInterface.Minimap);
         try
  -        gameMPLocalData.SaveToFileAsync(aMPLocalDataPathName, fSaveWorkerThread);
  +        gameMPLocalData.SaveToFileAsync(aMPLocalDataPathName, aSaveWorkerThread);
         finally
           FreeAndNil(gameMPLocalData);
         end;
  
positive.code:   localIsMultiPlayerOrSpec: Boolean;
  {$ENDIF}
  begin
    Save('autosave', aTimestamp); //Save to temp file
  
    //If possible perform file deletion/renaming in a different thread so we don't delay game
    {$IFDEF WDC}
      //Avoid accessing Self from async thread, copy required states to local variables
      localIsMultiPlayerOrSpec := fParams.IsMultiPlayerOrSpec;
      fSaveWorkerThread.QueueWork(procedure
      begin
        DoAutoSaveRename(localIsMultiPlayerOrSpec);
      end, 'AutoSave');
  
negative.code:   gPerfLogs.SectionEnter(psGameSaveWait);
    {$ENDIF}
    try
      if aSaveWorkerThread <> fBaseSaveWorkerThread then
        fBaseSaveWorkerThread.WaitForAllWorkToComplete;
  
      //Wait for previous save async tasks to complete before proceeding
      aSaveWorkerThread.WaitForAllWorkToComplete;
    finally
      {$IFDEF PERFLOG}
      gPerfLogs.SectionLeave(psGameSaveWait);
  