From 7412470d6616a9f8c6a9a8174af244b570ebdcee Mon Sep 17 00:00:00 2001 From: Robin Sommer Date: Sat, 28 Sep 2013 16:06:40 -0700 Subject: [PATCH] Prettyfing Describe() for record types. If a record type has a name and ODesc is set to short, we now print the name instead of the full field list. --- src/Type.cc | 14 ++++++++++---- src/Var.cc | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/Type.cc b/src/Type.cc index 6b4b2eb970..52645533c3 100644 --- a/src/Type.cc +++ b/src/Type.cc @@ -1048,10 +1048,16 @@ void RecordType::Describe(ODesc* d) const { if ( d->IsReadable() ) { - d->AddSP("record {"); - DescribeFields(d); - d->SP(); - d->Add("}"); + if ( d->IsShort() && GetTypeID() ) + d->Add(GetTypeID()); + + else + { + d->AddSP("record {"); + DescribeFields(d); + d->SP(); + d->Add("}"); + } } else diff --git a/src/Var.cc b/src/Var.cc index d384fedc74..08129bdc3e 100644 --- a/src/Var.cc +++ b/src/Var.cc @@ -314,9 +314,9 @@ void add_type(ID* id, BroType* t, attr_list* attr, int /* is_event */) delete [] data; } - tnew->SetTypeID(copy_string(id->Name())); } + tnew->SetTypeID(copy_string(id->Name())); id->SetType(tnew); id->MakeType();