Don't show an error if you fail to open the cloud storage

The lower level functions will already report that things didn't connect
successfully, no reason to repeat it here (which then exposes the git
URL).

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2015-06-13 09:08:39 -07:00
parent abde615c1c
commit df255e2573
3 changed files with 15 additions and 2 deletions

6
file.c
View file

@ -11,6 +11,7 @@
#include "dive.h"
#include "file.h"
#include "git-access.h"
#include "qthelperfromc.h"
/* For SAMPLE_* */
#include <libdivecomputer/parser.h>
@ -431,8 +432,9 @@ int parse_file(const char *filename)
return 0;
if (readfile(filename, &mem) < 0) {
/* we don't want to display an error if this was the default file */
if (prefs.default_filename && !strcmp(filename, prefs.default_filename))
/* we don't want to display an error if this was the default file or the cloud storage */
if ((prefs.default_filename && !strcmp(filename, prefs.default_filename)) ||
isCloudUrl(filename))
return 0;
return report_error(translate("gettextFromC", "Failed to read '%s'"), filename);

View file

@ -1038,6 +1038,16 @@ int getCloudURL(QString &filename)
return 0;
}
extern "C" bool isCloudUrl(const char *filename)
{
QString email = QString(prefs.cloud_storage_email);
email.replace(QRegularExpression("[^a-zA-Z0-9@._+-]"), "");
if (!email.isEmpty() &&
QString("https://cloud.subsurface-divelog.org/git/%1[%1]").arg(email) == filename)
return true;
return false;
}
extern "C" bool getProxyString(char **buffer)
{
if (prefs.proxy_type == QNetworkProxy::HttpProxy) {

View file

@ -4,5 +4,6 @@
bool getProxyString(char **buffer);
bool canReachCloudServer();
void updateWindowTitle();
bool isCloudUrl(const char *filename);
#endif // QTHELPERFROMC_H