Fixes PR112.
authorChristian Thalinger <twisti@complang.tuwien.ac.at>
Tue, 21 Oct 2008 08:03:54 +0000 (10:03 +0200)
committerChristian Thalinger <twisti@complang.tuwien.ac.at>
Tue, 21 Oct 2008 08:03:54 +0000 (10:03 +0200)
* src/vm/linker.cpp (link_array): Throw IllegalArgumentException when
dimension exceeds limit.

src/vm/linker.cpp

index e1c5e611eaf6257295299771b63ac2ee85f23d57..809165047be741e6474a30311f05a4ba7de36a55 100644 (file)
@@ -1029,8 +1029,8 @@ static arraydescriptor *link_array(classinfo *c)
                        desc->elementvftbl = compvftbl->arraydesc->elementvftbl;
 
                        if (compvftbl->arraydesc->dimension >= 255) {
-                               log_text("Creating array of dimension >255");
-                               assert(0);
+                               exceptions_throw_illegalargumentexception();
+                               return NULL;
                        }
 
                        desc->dimension = compvftbl->arraydesc->dimension + 1;