mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Fix Seabear new line detection
We need to take both \r\n and \n new line formats into account before failing Seabear validity check on import. (Seabear file has empty lines, if import file does not have one -> return.) Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
384b9dd09b
commit
cb49c37b31
1 changed files with 8 additions and 8 deletions
16
file.c
16
file.c
|
@ -930,7 +930,7 @@ int parse_seabear_csv_file(const char *filename, int timef, int depthf, int temp
|
|||
char curdate[DATESTR];
|
||||
char curtime[TIMESTR];
|
||||
char *ptr, *ptr_old = NULL;
|
||||
char *NL;
|
||||
char *NL = NULL;
|
||||
|
||||
if (timef >= MAXCOLS || depthf >= MAXCOLS || tempf >= MAXCOLS || po2f >= MAXCOLS || cnsf >= MAXCOLS || ndlf >= MAXCOLS || cnsf >= MAXCOLS || stopdepthf >= MAXCOLS || pressuref >= MAXCOLS)
|
||||
return report_error(translate("gettextFromC", "Maximum number of supported columns on CSV import is %d"), MAXCOLS);
|
||||
|
@ -951,13 +951,6 @@ int parse_seabear_csv_file(const char *filename, int timef, int depthf, int temp
|
|||
NL = "\r\n";
|
||||
}
|
||||
|
||||
/*
|
||||
* If file does not contain empty lines, it is not a valid
|
||||
* Seabear CSV file.
|
||||
*/
|
||||
if (!ptr)
|
||||
return -1;
|
||||
|
||||
if (!ptr_old) {
|
||||
while ((ptr = strstr(ptr, "\n\n")) != NULL) {
|
||||
ptr_old = ptr;
|
||||
|
@ -968,6 +961,13 @@ int parse_seabear_csv_file(const char *filename, int timef, int depthf, int temp
|
|||
} else
|
||||
ptr_old += 4;
|
||||
|
||||
/*
|
||||
* If file does not contain empty lines, it is not a valid
|
||||
* Seabear CSV file.
|
||||
*/
|
||||
if (NL == NULL)
|
||||
return -1;
|
||||
|
||||
/*
|
||||
* On my current sample of Seabear DC log file, the date is
|
||||
* without any identifier. Thus we must search for the previous
|
||||
|
|
Loading…
Add table
Reference in a new issue