Browse Source

Simplifying OpenSessionInPutty interface

Source commit: f557bf0896df48509e8dd443fe85fc7df186e261
Martin Prikryl 3 years ago
parent
commit
accd1bd7b0

+ 1 - 3
source/forms/Login.cpp

@@ -3100,9 +3100,7 @@ void __fastcall TLoginDialog::PuttyActionExecute(TObject * /*Sender*/)
   for (int Index = 0; Index < DataList->Count; Index++)
   {
     TSessionData * Data = reinterpret_cast<TSessionData *>(DataList->Items[Index]);
-    // putty does not support resolving environment variables in session settings
-    Data->ExpandEnvironmentVariables();
-    OpenSessionInPutty(GUIConfiguration->PuttyPath, Data);
+    OpenSessionInPutty(Data);
   }
 
   if (Close)

+ 4 - 3
source/windows/GUITools.cpp

@@ -148,12 +148,13 @@ bool __fastcall ExportSessionToPutty(TSessionData * SessionData, bool ReuseExist
   return Result;
 }
 //---------------------------------------------------------------------------
-void __fastcall OpenSessionInPutty(const UnicodeString PuttyPath,
-  TSessionData * SessionData)
+void OpenSessionInPutty(TSessionData * SessionData)
 {
+  // putty does not support resolving environment variables in session settings
+  SessionData->ExpandEnvironmentVariables();
   // See also TSiteAdvancedDialog::PuttySettingsButtonClick
   UnicodeString Program, AParams, Dir;
-  SplitCommand(PuttyPath, Program, AParams, Dir);
+  SplitCommand(GUIConfiguration->PuttyPath, Program, AParams, Dir);
   Program = ExpandEnvironmentVariables(Program);
   if (FindFile(Program))
   {

+ 1 - 2
source/windows/GUITools.h

@@ -24,8 +24,7 @@ extern bool DontCopyCommandToClipboard;
 bool __fastcall CopyCommandToClipboard(const UnicodeString & Command);
 bool DoesSessionExistInPutty(TSessionData * SessionData);
 bool __fastcall ExportSessionToPutty(TSessionData * SessionData, bool ReuseExisting, const UnicodeString & SessionName);
-void __fastcall OpenSessionInPutty(const UnicodeString PuttyPath,
-  TSessionData * SessionData);
+void OpenSessionInPutty(TSessionData * SessionData);
 bool __fastcall SpecialFolderLocation(int PathID, UnicodeString & Path);
 UnicodeString __fastcall UniqTempDir(const UnicodeString BaseDir,
   const UnicodeString Identity, bool Mask = false);

+ 1 - 4
source/windows/TerminalManager.cpp

@@ -1594,15 +1594,12 @@ void __fastcall TTerminalManager::OpenInPutty()
       ActiveTerminal->UpdateSessionCredentials(Data);
     }
 
-    // putty does not support resolving environment variables in session settings
-    Data->ExpandEnvironmentVariables();
-
     if (ActiveTerminal->TunnelLocalPortNumber != 0)
     {
       Data->ConfigureTunnel(ActiveTerminal->TunnelLocalPortNumber);
     }
 
-    OpenSessionInPutty(GUIConfiguration->PuttyPath, Data);
+    OpenSessionInPutty(Data);
   }
   __finally
   {

+ 1 - 4
source/windows/WinMain.cpp

@@ -56,10 +56,7 @@ void __fastcall GetLoginData(UnicodeString SessionName, TOptions * Options,
       }
       else if (!SessionData->PuttyProtocol.IsEmpty())
       {
-        // putty does not support resolving environment variables in session settings
-        // though it's hardly of any use here.
-        SessionData->ExpandEnvironmentVariables();
-        OpenSessionInPutty(GUIConfiguration->PuttyPath, SessionData);
+        OpenSessionInPutty(SessionData);
         DataList->Clear();
         Abort();
       }