changeset 1855:2a4544932c8b default tip

fix table bug
author Franklin Schmidt <fschmidt@gmail.com>
date Wed, 26 Feb 2025 23:01:14 -0700
parents 564cd2e1f36f
children
files src/luan/LuanTable.java src/luan/modules/ThreadLuan.java
diffstat 2 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
diff -r 564cd2e1f36f -r 2a4544932c8b src/luan/LuanTable.java
--- a/src/luan/LuanTable.java	Tue Feb 25 10:26:43 2025 -0700
+++ b/src/luan/LuanTable.java	Wed Feb 26 23:01:14 2025 -0700
@@ -232,7 +232,7 @@
 				if( v != null ) {
 					if( map==null )
 						map = newMap();
-					map.put(i+1,v);
+					map.put(Double.valueOf(i+1),v);
 				}
 			}
 		}
diff -r 564cd2e1f36f -r 2a4544932c8b src/luan/modules/ThreadLuan.java
--- a/src/luan/modules/ThreadLuan.java	Tue Feb 25 10:26:43 2025 -0700
+++ b/src/luan/modules/ThreadLuan.java	Wed Feb 26 23:01:14 2025 -0700
@@ -134,6 +134,9 @@
 
 		Callable(LuanFunction initFn) throws LuanException {
 			LuanMutable.makeImmutable(initFn);
+			Object obj = initFn.call(luan);
+			if( !(obj instanceof LuanTable) )
+				throw new LuanException("global_callable init_fn must return a table");
 			this.fns = (LuanTable)initFn.call(luan);
 		}