diff options
| author | 2015-08-05 19:01:49 +0300 | |
|---|---|---|
| committer | 2015-08-09 23:55:45 -0700 | |
| commit | e4353cb4a73d99a3baeff93ea638047e038f2a65 (patch) | |
| tree | ff966bbc71e4e612d25b709e3696c4d0b1c4690b | |
| parent | 1f4267d0938e8a7347300d7ad258cb439ceddcfc (diff) | |
| download | subsurface-e4353cb4a73d99a3baeff93ea638047e038f2a65.tar.gz | |
Report empty file error instead of OOM
If we are trying to open an empty file, skip the attempts to parse the
input and report an appropriate error message.
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
| -rw-r--r-- | file.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -447,13 +447,15 @@ int parse_file(const char *filename) if (git && !git_load_dives(git, branch)) return 0; - if (readfile(filename, &mem) < 0) { + if ((ret = readfile(filename, &mem)) < 0) { /* 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); + } else if (ret == 0) { + return report_error(translate("gettextFromC", "Empty file '%s'"), filename); } fmt = strrchr(filename, '.'); |