If saving to a git repository fails, don't create oddly named XML file

Before this change when the user gave a git style filename, say
/tmp/mydives[myname], if Subsurface couldn't create a repository with that
branch, it instead saved an XML file to this exact name, with '[' and ']'.
That clearly is not the desired behavior, so report an error instead.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2014-03-14 16:01:52 -07:00
parent 8650a6ef6c
commit e70bbb637e

View file

@ -606,7 +606,12 @@ int save_dives_logic(const char *filename, const bool select_only)
git = is_git_repository(filename, &branch);
if (git)
return git_save_dives(git, branch, select_only);
/* if the syntax is for a git save but saving we didn't find a
* repository, throw error */
if (strchr(filename, '[')) {
report_error("Save failed, invalid git repository %s", filename);
return -1;
}
try_to_backup(filename);
save_dives_buffer(&buf, select_only);