Increase the limits for recursion and variables on XSLT parsing

This increases the limits when parsing CSV files with dive profiles,
allowing us to import bigger files in one go.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Miika Turkia 2015-02-08 22:37:38 +02:00 committed by Dirk Hohndel
parent 02e52c85b0
commit 3a3cebaabb

5
file.c
View file

@ -866,6 +866,11 @@ int parse_csv_file(const char *filename, int timef, int depthf, int tempf, int p
char curtime[TIMESTR]; char curtime[TIMESTR];
int previous; int previous;
/* Increase the limits for recursion and variables on XSLT
* parsing */
xsltMaxDepth = 30000;
xsltMaxVars = 150000;
if (timef >= MAXCOLS || depthf >= MAXCOLS || tempf >= MAXCOLS || po2f >= MAXCOLS || cnsf >= MAXCOLS || ndlf >= MAXCOLS || cnsf >= MAXCOLS || stopdepthf >= MAXCOLS || pressuref >= MAXCOLS) 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); return report_error(translate("gettextFromC", "Maximum number of supported columns on CSV import is %d"), MAXCOLS);