summaryrefslogtreecommitdiffstats
path: root/libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc')
-rw-r--r--libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc b/libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc
index 73b21eedff1..c77aed257dd 100644
--- a/libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc
+++ b/libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc
@@ -46,6 +46,7 @@ details. */
#include <gnu/classpath/jdwp/event/filters/IEventFilter.h>
#include <gnu/classpath/jdwp/event/filters/LocationOnlyFilter.h>
#include <gnu/classpath/jdwp/event/filters/StepFilter.h>
+#include <gnu/classpath/jdwp/exception/AbsentInformationException.h>
#include <gnu/classpath/jdwp/exception/InvalidFrameException.h>
#include <gnu/classpath/jdwp/exception/InvalidLocationException.h>
#include <gnu/classpath/jdwp/exception/InvalidMethodException.h>
@@ -647,7 +648,14 @@ jstring
gnu::classpath::jdwp::VMVirtualMachine::
getSourceFile (jclass clazz)
{
- return _Jv_GetInterpClassSourceFile (clazz);
+ jstring file = _Jv_GetInterpClassSourceFile (clazz);
+
+ // Check if the source file was found.
+ if (file == NULL)
+ throw new exception::AbsentInformationException (
+ _Jv_NewStringUTF("Source file not found"));
+
+ return file;
}
void
OpenPOWER on IntegriCloud