summaryrefslogtreecommitdiffstats
path: root/libjava/prims.cc
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2001-03-23 19:17:22 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2001-03-23 19:17:22 +0000
commit369305ac6a54d2a29402c0ec9b16ff30b44eee80 (patch)
tree52e8fc029d0fc50bc88eadfb097bbbc2ea437d19 /libjava/prims.cc
parente87dd429b4f2649989226014cd6a282f41417e26 (diff)
downloadppe42-gcc-369305ac6a54d2a29402c0ec9b16ff30b44eee80.tar.gz
ppe42-gcc-369305ac6a54d2a29402c0ec9b16ff30b44eee80.zip
2000-03-23 Jeff Sturm <jsturm@one-point.com>
* prims.cc (_Jv_FindClassFromSignature): Check return of recursive call. Do not abort on invalid signature; return NULL instead. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40787 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/prims.cc')
-rw-r--r--libjava/prims.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/libjava/prims.cc b/libjava/prims.cc
index f68b2f049ba..6cd9b0572f0 100644
--- a/libjava/prims.cc
+++ b/libjava/prims.cc
@@ -559,10 +559,14 @@ _Jv_FindClassFromSignature (char *sig, java::lang::ClassLoader *loader)
}
case '[':
- return _Jv_GetArrayClass (_Jv_FindClassFromSignature (&sig[1], loader),
- loader);
+ {
+ jclass klass = _Jv_FindClassFromSignature (&sig[1], loader);
+ if (! klass)
+ return NULL;
+ return _Jv_GetArrayClass (klass, loader);
+ }
}
- JvFail ("couldn't understand class signature");
+
return NULL; // Placate compiler.
}
OpenPOWER on IntegriCloud