From 2a3c2964f178132f1ee5a0e76f86fdb3eb65b192 Mon Sep 17 00:00:00 2001 From: Rene Gollent Date: Wed, 6 Jul 2011 23:34:02 +0000 Subject: [PATCH] BMessageValueNode wasn't taking into account the possibility that type information was unavailable, leading to a crash when used without a debug libbe being present. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42386 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/apps/debugger/value/value_nodes/BMessageValueNode.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/apps/debugger/value/value_nodes/BMessageValueNode.cpp b/src/apps/debugger/value/value_nodes/BMessageValueNode.cpp index c8053128a2..ad6af14a96 100644 --- a/src/apps/debugger/value/value_nodes/BMessageValueNode.cpp +++ b/src/apps/debugger/value/value_nodes/BMessageValueNode.cpp @@ -299,6 +299,13 @@ BMessageValueNode::CreateChildren() Type* whatType = NULL; CompoundType* messageType = dynamic_cast(fType); + if (messageType == NULL || messageType->CountDataMembers() == 0) { + if (fContainer != NULL) + fContainer->NotifyValueNodeChildrenCreated(this); + + return B_OK; + } + for (int32 i = 0; i < messageType->CountDataMembers(); i++) { member = messageType->DataMemberAt(i); if (strcmp(member->Name(), "what") == 0) {