From 1c05220bba6e31d1bd25d5eb34a10b3e4e5e86bd Mon Sep 17 00:00:00 2001 From: Mathieu Lacage Date: Tue, 6 May 2008 15:04:36 -0700 Subject: [PATCH] test self-assignment of packets --- src/common/packet.cc | 13 +++++++++++++ src/common/packet.h | 4 ++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/common/packet.cc b/src/common/packet.cc index a1b379781..8fd274a17 100644 --- a/src/common/packet.cc +++ b/src/common/packet.cc @@ -669,6 +669,19 @@ PacketTest::RunTests (void) CHECK (p, 2, E (1, 0, 1000), E(2, 0, 1000)); CHECK (copy, 1, E (1, 0, 1000)); + { + Packet c0 = *copy; + Packet c1 = *copy; + c0 = c1; + CHECK (&c0, 1, E (1, 0, 1000)); + CHECK (&c1, 1, E (1, 0, 1000)); + CHECK (copy, 1, E (1, 0, 1000)); + c0.AddTag (ATestTag<10> ()); + CHECK (&c0, 2, E (1, 0, 1000), E (10, 0, 1000)); + CHECK (&c1, 1, E (1, 0, 1000)); + CHECK (copy, 1, E (1, 0, 1000)); + } + Ptr frag0 = p->CreateFragment (0, 10); Ptr frag1 = p->CreateFragment (10, 90); Ptr frag2 = p->CreateFragment (100, 900); diff --git a/src/common/packet.h b/src/common/packet.h index ec77dfc5a..e79d82125 100644 --- a/src/common/packet.h +++ b/src/common/packet.h @@ -142,6 +142,8 @@ public: * by getUid). */ Packet (); + Packet (const Packet &o); + Packet &operator = (const Packet &o); /** * Create a packet with a zero-filled payload. * The memory necessary for the payload is not allocated: @@ -371,8 +373,6 @@ public: private: Packet (const Buffer &buffer, const TagList &tagList, const PacketMetadata &metadata); - Packet (const Packet &o); - Packet &operator = (const Packet &o); Buffer m_buffer; TagList m_tagList; PacketMetadata m_metadata;