case Property::MAP:
{
Property::Map* map = child.GetMap();
- for( Property::Map::SizeType i=0; i < map->Count(); ++i )
+ if( map )
{
- Property::Value& child = map->GetValue(i);
- ConvertChildValue(mappingRoot, keyStack, child);
+ for( Property::Map::SizeType i=0; i < map->Count(); ++i )
+ {
+ Property::Value& child = map->GetValue(i);
+ ConvertChildValue(mappingRoot, keyStack, child);
+ }
}
break;
}
case Property::ARRAY:
{
Property::Array* array = child.GetArray();
- for( Property::Array::SizeType i=0; i < array->Count(); ++i )
+ if( array )
{
- Property::Value& child = array->GetElementAt(i);
- ConvertChildValue(mappingRoot, keyStack, child);
+ for( Property::Array::SizeType i=0; i < array->Count(); ++i )
+ {
+ Property::Value& child = array->GetElementAt(i);
+ ConvertChildValue(mappingRoot, keyStack, child);
+ }
}
break;
}
if( parser.Parse( property ) )
{
const TreeNode* const node = parser.GetRoot();
-
- CreatePropertyMap( node, map );
+ if( node )
+ {
+ CreatePropertyMap( node, map );
+ }
}
}