[PATCH] Increase the limits for recursion and variables on XSLT parsing

Miika Turkia miika.turkia at gmail.com
Sun Feb 8 12:37:38 PST 2015


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 at gmail.com>
---
 file.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/file.c b/file.c
index e03edaf..b9cd5ba 100644
--- a/file.c
+++ b/file.c
@@ -866,6 +866,11 @@ int parse_csv_file(const char *filename, int timef, int depthf, int tempf, int p
 	char curtime[TIMESTR];
 	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)
 		return report_error(translate("gettextFromC", "Maximum number of supported columns on CSV import is %d"), MAXCOLS);
 
-- 
1.9.1



More information about the subsurface mailing list