diff src/luan/modules/parsers/Csv.java @ 1330:f41919741100

fix security
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 11 Feb 2019 01:38:55 -0700
parents 9fa8b8389578
children 25746915a241
line wrap: on
line diff
--- a/src/luan/modules/parsers/Csv.java	Sun Feb 10 02:01:49 2019 -0700
+++ b/src/luan/modules/parsers/Csv.java	Mon Feb 11 01:38:55 2019 -0700
@@ -2,6 +2,7 @@
 
 import luan.LuanState;
 import luan.LuanTable;
+import luan.LuanException;
 import luan.lib.parser.Parser;
 import luan.lib.parser.ParseException;
 
@@ -9,7 +10,11 @@
 public final class Csv {
 
 	public static LuanTable toList(LuanState luan,String line) throws ParseException {
-		return new Csv(line).parse(luan);
+		try {
+			return new Csv(line).parse(luan);
+		} catch(LuanException e) {
+			throw new RuntimeException(e);
+		}
 	}
 
 	private final Parser parser;
@@ -22,12 +27,12 @@
 		return new ParseException(parser,msg);
 	}
 
-	private LuanTable parse(LuanState luan) throws ParseException {
+	private LuanTable parse(LuanState luan) throws ParseException, LuanException {
 		LuanTable list = new LuanTable(luan);
 		while(true) {
 			Spaces();
 			String field = parseField();
-			list.rawPut(list.rawLength()+1,field);
+			list.put(list.rawLength()+1,field);
 			Spaces();
 			if( parser.endOfInput() )
 				return list;