CloneDialog: Fixed incorrect parsing for local repositories
CloneDialog: Fixed incorrect missing suffix detection We now pass local repository urls as local paths to fossil, in order to overcome buggy behavior of QUrl for Windows paths FossilOrigin-Name: afa9b2538a0bfa258104a979eadce28c099e9848
This commit is contained in:
parent
3d73fa7137
commit
dc072a8219
14
manifest
14
manifest
@ -1,5 +1,5 @@
|
||||
C Translation\sconversion\sis\snow\sautomatically\scalled\sfrom\sthe\sproject\sfile\nImproved\sthe\stranslation\sconverion\sscript\son\sWindows\n
|
||||
D 2015-08-26T19:45:48.220
|
||||
C CloneDialog:\sFixed\sincorrect\sparsing\sfor\slocal\srepositories\nCloneDialog:\sFixed\sincorrect\smissing\ssuffix\sdetection\nWe\snow\spass\slocal\srepository\surls\sas\slocal\spaths\sto\sfossil,\sin\sorder\sto\sovercome\sbuggy\sbehavior\sof\sQUrl\sfor\sWindows\spaths
|
||||
D 2015-08-26T19:56:14.906
|
||||
F .fossil-settings/manifest a09a968bf05a50058f3ad50132730b719bc39e76
|
||||
F .travis.yml 77966888a81c4ceee1fcc79bce842c9667ad8a35
|
||||
F debian/changelog eb4304dfcb6bb66850ec740838090eb50ce1249b
|
||||
@ -216,7 +216,7 @@ F src/AboutDialog.cpp aaa3e614c9aace66531bccc35a3dbf398cb79b7b
|
||||
F src/AboutDialog.h 269f3a0589067c08f19b542e4576b0ef58bc6ec5
|
||||
F src/BrowserWidget.cpp 8b8f545cdff4a4188edc698a1b4777f5df46f056
|
||||
F src/BrowserWidget.h 764d66aa9a93b890298bd0301097739cb4e16597
|
||||
F src/CloneDialog.cpp c341622b01d493387d6e4928018b3392d92471e8
|
||||
F src/CloneDialog.cpp ca978366d9d5fcdbb21551cd7d7e782fcebd066c
|
||||
F src/CloneDialog.h 8813d91f893eb3eb86a4ea5e50f9a53a0ea07047
|
||||
F src/CommitDialog.cpp 3d25ae2aa8af0ab417736a3f2d7f95a8dcb7480a
|
||||
F src/CommitDialog.h 921bf27c0c538ab9e9d6bdc750064337d346270b
|
||||
@ -226,7 +226,7 @@ F src/FileActionDialog.cpp fcaebf9986f789b3440d5390b3458ad5f86fe0c8
|
||||
F src/FileActionDialog.h 15db1650b3a13d70bc338371e4c033c66e3b79ce
|
||||
F src/FileTableView.cpp 5ddf8c391c9a3ac449ec61fb1db837b577afeec2
|
||||
F src/FileTableView.h 03e56d87c2d46411b9762b87f4d301619aaf18df
|
||||
F src/Fossil.cpp e3451ddd8f19f1b6f2d446d9390b336e493da197
|
||||
F src/Fossil.cpp db2d3643d92888a3ab8c25e76b7dfb4f988b18ff
|
||||
F src/Fossil.h 7acbd4a9d43f6a11c183dbffd73b71d54a4c5108
|
||||
F src/FslSettingsDialog.cpp e00907d493fba469e48a008aecda88426350b5ac
|
||||
F src/FslSettingsDialog.h dfe2a61884a55a74cbb9206b6f6b482b979725e7
|
||||
@ -261,7 +261,7 @@ F ui/MainWindow.ui e2a18caa7482b3ee0dff477592cdc9574b35fe4f
|
||||
F ui/RemoteDialog.ui 95a4750d972ed8c49bb10b95db91ff16cfe2dd0b
|
||||
F ui/RevisionDialog.ui 27c3b98c665fec014a50cbf3352c0627f75e68cd
|
||||
F ui/SettingsDialog.ui 2e1b6ce7a49100088c5649292c1319e62e0302e1
|
||||
P 6c585dffad9f240a390a241dd71f5f2f95f46d49
|
||||
R 74bc60d098b0e582b722a041e2be3ea0
|
||||
P e574454625a7701da9d1959fa72e54036d5ab7c3
|
||||
R edb709028da6b5b7318a59278b5a9c29
|
||||
U Kostas
|
||||
Z 9d833293ef52078267928ccc7382a4eb
|
||||
Z 791f9cfa7aba39378f947f3aabef881e
|
||||
|
@ -1 +1 @@
|
||||
e574454625a7701da9d1959fa72e54036d5ab7c3
|
||||
afa9b2538a0bfa258104a979eadce28c099e9848
|
@ -49,11 +49,17 @@ bool CloneDialog::run(QWidget *parent, QUrl &url, QString &repository, QUrl &url
|
||||
|
||||
QString urltext = dlg.ui->lineURL->text();
|
||||
|
||||
url = QUrl::fromUserInput(urltext);
|
||||
if(url.isEmpty() || !url.isValid())
|
||||
// Check if the url is a local file
|
||||
if(QFileInfo(urltext).exists())
|
||||
url = QUrl::fromLocalFile(urltext);
|
||||
else
|
||||
{
|
||||
QMessageBox::critical(parent, tr("Error"), tr("Invalid URL."), QMessageBox::Ok );
|
||||
return false;
|
||||
url = QUrl::fromUserInput(urltext);
|
||||
if(url.isEmpty() || !url.isValid())
|
||||
{
|
||||
QMessageBox::critical(parent, tr("Error"), tr("Invalid URL."), QMessageBox::Ok );
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if(!dlg.ui->lineUserName->text().trimmed().isEmpty())
|
||||
@ -94,7 +100,8 @@ void CloneDialog::GetRepositoryPath(QString &pathResult)
|
||||
|
||||
// Ensure that it ends in the required extension (On GTK, Qt doesn't seem to add it automatically)
|
||||
QFileInfo fi(pathResult);
|
||||
if(fi.suffix().toLower() != ("." FOSSIL_EXT))
|
||||
QString ext = fi.suffix().toLower();
|
||||
if(ext != FOSSIL_EXT)
|
||||
pathResult += "." FOSSIL_EXT;
|
||||
}
|
||||
|
||||
|
@ -137,11 +137,17 @@ bool Fossil::pushRepository(const QUrl &url)
|
||||
|
||||
if(!url.isEmpty())
|
||||
{
|
||||
params << url.toEncoded();
|
||||
// QUrl generates bad local file url for Windows local paths with drive letters
|
||||
if(url.isLocalFile())
|
||||
params << url.toLocalFile();
|
||||
else
|
||||
params << url.toEncoded();
|
||||
params << "--once";
|
||||
|
||||
QStringList log_params = params;
|
||||
log_params[1] = UrlToStringDisplay(url);
|
||||
if(!url.isLocalFile())
|
||||
log_params[1] = UrlToStringDisplay(url);
|
||||
|
||||
log_params.push_front("fossil");
|
||||
|
||||
runFlags = RUNFLAGS_SILENT_INPUT;
|
||||
@ -161,11 +167,17 @@ bool Fossil::pullRepository(const QUrl &url)
|
||||
|
||||
if(!url.isEmpty())
|
||||
{
|
||||
params << url.toEncoded();
|
||||
// QUrl generates bad local file url for Windows local paths with drive letters
|
||||
if(url.isLocalFile())
|
||||
params << url.toLocalFile();
|
||||
else
|
||||
params << url.toEncoded();
|
||||
|
||||
params << "--once";
|
||||
|
||||
QStringList log_params = params;
|
||||
log_params[1] = UrlToStringDisplay(url);
|
||||
if(!url.isLocalFile())
|
||||
log_params[1] = UrlToStringDisplay(url);
|
||||
|
||||
log_params.push_front("fossil");
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user