We should not call vm_string_cstr() on null string objects.

Signed-off-by: Tomek Grabiec <tgrab...@gmail.com>
---
 vm/stack-trace.c |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/vm/stack-trace.c b/vm/stack-trace.c
index 24eb29f..cabbfae 100644
--- a/vm/stack-trace.c
+++ b/vm/stack-trace.c
@@ -451,22 +451,23 @@ static void vm_stack_trace_element_to_string(struct 
vm_object *elem,
        method_name = getMethodName(elem);
        is_native = isNativeMethod(elem);
 
-       method_name_str = vm_string_to_cstr(method_name);
-       file_name_str = vm_string_to_cstr(file_name);
-       class_name_str = vm_string_to_cstr(class_name);
+       if (class_name) {
+               class_name_str = vm_string_to_cstr(class_name);
 
-       if (class_name_str) {
                str_append(str, class_name_str);
-               if (method_name_str)
+               if (method_name)
                        str_append(str, ".");
        }
 
-       if (method_name_str)
+       if (method_name) {
+               method_name_str = vm_string_to_cstr(method_name);
                str_append(str, method_name_str);
+       }
 
        str_append(str, "(");
 
-       if (file_name_str) {
+       if (file_name) {
+               file_name_str = vm_string_to_cstr(file_name);
                str_append(str, file_name_str);
        } else {
                if (is_native)
-- 
1.6.0.6


------------------------------------------------------------------------------
_______________________________________________
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel

Reply via email to