浏览代码

Bug 1707: Optionally fail synchronization in scripting when there are no changes

https://winscp.net/tracker/1707

Source commit: 1942fab95bf18d13fd50dcc18661da5ac2ff19ff
Martin Prikryl 7 年之前
父节点
当前提交
cbebdb4ac2
共有 2 个文件被更改,包括 14 次插入8 次删除
  1. 13 8
      source/core/Script.cpp
  2. 1 0
      source/core/Script.h

+ 13 - 8
source/core/Script.cpp

@@ -830,14 +830,8 @@ UnicodeString __fastcall TScript::ListingSysErrorMessage()
   return Result;
   return Result;
 }
 }
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
-void __fastcall TScript::NoMatch(const UnicodeString & Mask, const UnicodeString & Error)
+void __fastcall TScript::NoMatch(const UnicodeString & Message)
 {
 {
-  UnicodeString Message = FMTLOAD(SCRIPT_MATCH_NO_MATCH, (Mask));
-  if (!Error.IsEmpty())
-  {
-    Message += FORMAT(L" (%s)", (Error));
-  }
-
   if (FFailOnNoMatch)
   if (FFailOnNoMatch)
   {
   {
     throw Exception(Message);
     throw Exception(Message);
@@ -848,6 +842,17 @@ void __fastcall TScript::NoMatch(const UnicodeString & Mask, const UnicodeString
   }
   }
 }
 }
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
+void __fastcall TScript::NoMatch(const UnicodeString & Mask, const UnicodeString & Error)
+{
+  UnicodeString Message = FMTLOAD(SCRIPT_MATCH_NO_MATCH, (Mask));
+  if (!Error.IsEmpty())
+  {
+    Message += FORMAT(L" (%s)", (Error));
+  }
+
+  NoMatch(Message);
+}
+//---------------------------------------------------------------------------
 void __fastcall TScript::FreeFiles(TStrings * FileList)
 void __fastcall TScript::FreeFiles(TStrings * FileList)
 {
 {
   for (int i = 0; i < FileList->Count; i++)
   for (int i = 0; i < FileList->Count; i++)
@@ -1998,7 +2003,7 @@ void __fastcall TScript::SynchronizeProc(TScriptProcParams * Parameters)
       }
       }
       else
       else
       {
       {
-        PrintLine(LoadStr(SCRIPT_SYNCHRONIZE_NODIFFERENCE));
+        NoMatch(LoadStr(SCRIPT_SYNCHRONIZE_NODIFFERENCE));
       }
       }
     }
     }
     __finally
     __finally

+ 1 - 0
source/core/Script.h

@@ -169,6 +169,7 @@ protected:
     bool Local);
     bool Local);
   UnicodeString __fastcall ListingSysErrorMessage();
   UnicodeString __fastcall ListingSysErrorMessage();
   void __fastcall NoMatch(const UnicodeString & Mask, const UnicodeString & Error);
   void __fastcall NoMatch(const UnicodeString & Mask, const UnicodeString & Error);
+  void __fastcall NoMatch(const UnicodeString & Message);
 
 
 private:
 private:
   void __fastcall Init();
   void __fastcall Init();