|
@@ -236,6 +236,7 @@ void __fastcall TSessionData::DefaultSettings()
|
|
RemoteDirectory = L"";
|
|
RemoteDirectory = L"";
|
|
SynchronizeBrowsing = false;
|
|
SynchronizeBrowsing = false;
|
|
UpdateDirectories = true;
|
|
UpdateDirectories = true;
|
|
|
|
+ RequireDirectories = false;
|
|
CacheDirectories = true;
|
|
CacheDirectories = true;
|
|
CacheDirectoryChanges = true;
|
|
CacheDirectoryChanges = true;
|
|
PreserveDirectoryChanges = true;
|
|
PreserveDirectoryChanges = true;
|
|
@@ -359,6 +360,7 @@ void __fastcall TSessionData::NonPersistant()
|
|
PROPERTY(LocalDirectory); \
|
|
PROPERTY(LocalDirectory); \
|
|
PROPERTY(OtherLocalDirectory); \
|
|
PROPERTY(OtherLocalDirectory); \
|
|
PROPERTY(RemoteDirectory); \
|
|
PROPERTY(RemoteDirectory); \
|
|
|
|
+ PROPERTY(RequireDirectories); \
|
|
PROPERTY(Color); \
|
|
PROPERTY(Color); \
|
|
PROPERTY(SynchronizeBrowsing); \
|
|
PROPERTY(SynchronizeBrowsing); \
|
|
PROPERTY(Note);
|
|
PROPERTY(Note);
|
|
@@ -2202,6 +2204,10 @@ bool __fastcall TSessionData::ParseUrl(UnicodeString Url, TOptions * Options,
|
|
}
|
|
}
|
|
else
|
|
else
|
|
{
|
|
{
|
|
|
|
+ // When ad-hoc URL is used, always display error when the directories are not valid,
|
|
|
|
+ // no matter if they are part of the URL or raw settings.
|
|
|
|
+ RequireDirectories = true;
|
|
|
|
+
|
|
// This happens when pasting URL on Login dialog
|
|
// This happens when pasting URL on Login dialog
|
|
if (StoredSessions != NULL)
|
|
if (StoredSessions != NULL)
|
|
{
|
|
{
|
|
@@ -2361,6 +2367,8 @@ bool __fastcall TSessionData::ParseUrl(UnicodeString Url, TOptions * Options,
|
|
ARemoteDirectory = UnixExtractFilePath(ARemoteDirectory);
|
|
ARemoteDirectory = UnixExtractFilePath(ARemoteDirectory);
|
|
}
|
|
}
|
|
RemoteDirectory = DecodeUrlChars(ARemoteDirectory);
|
|
RemoteDirectory = DecodeUrlChars(ARemoteDirectory);
|
|
|
|
+ // Is already true for ad-hoc URL, but we want to error even for "storedsite/path/"-style URL.
|
|
|
|
+ RequireDirectories = true;
|
|
}
|
|
}
|
|
|
|
|
|
DefaultsOnly = false;
|
|
DefaultsOnly = false;
|