From 41862ebc92165bf5d107fe806893effda4255abe Mon Sep 17 00:00:00 2001 From: Craig Dowell Date: Thu, 4 Feb 2010 07:15:08 -0800 Subject: [PATCH] Don't allocate buffers --- src/common/pcap-file-object.cc | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/common/pcap-file-object.cc b/src/common/pcap-file-object.cc index f2275a935..87bbc391e 100644 --- a/src/common/pcap-file-object.cc +++ b/src/common/pcap-file-object.cc @@ -92,21 +92,23 @@ PcapFileObject::Init (uint32_t dataLinkType, uint32_t snapLen, int32_t tzCorrect bool PcapFileObject::Write (Time t, Ptr p) { + uint8_t buffer[PcapFile::SNAPLEN_DEFAULT]; + uint64_t current = t.GetMicroSeconds (); uint64_t s = current / 1000000; uint64_t us = current % 1000000; uint32_t bufferSize = p->GetSize (); - uint8_t *buffer = new uint8_t[bufferSize]; p->CopyData (buffer, bufferSize); bool rc = m_file.Write (s, us, buffer, bufferSize); - delete [] buffer; return rc; } bool PcapFileObject::Write (Time t, Header &header, Ptr p) { + uint8_t buffer[PcapFile::SNAPLEN_DEFAULT]; + uint64_t current = t.GetMicroSeconds (); uint64_t s = current / 1000000; uint64_t us = current % 1000000; @@ -119,13 +121,10 @@ PcapFileObject::Write (Time t, Header &header, Ptr p) headerBuffer.AddAtStart (headerSize); header.Serialize (headerBuffer.Begin ()); - uint8_t *buffer = new uint8_t[bufferSize]; - headerBuffer.Begin ().Read (buffer, headerSize); p->CopyData (&buffer[headerSize], packetSize); bool rc = m_file.Write (s, us, buffer, bufferSize); - delete [] buffer; return rc; }