make chunkUid zero and invalid uid to improve debugging

Mathieu Lacage 2007-06-01 09:55:47 +02:00
parent 581b34b586
commit 9980528f1e
2 changed files with 6 additions and 4 deletions

View File

@ -82,16 +82,17 @@ PacketPrinter::PrintChunk (uint32_t chunkUid,
uint32_t size) const
{
RegisteredChunks *registeredChunks = PacketPrinter::GetRegisteredChunks ();
NS_ASSERT (chunkUid > 1);
for (PrinterList::const_iterator i = m_printerList.begin (); i != m_printerList.end (); i++)
{
if (i->m_chunkUid == chunkUid)
{
DoPrintCallback cb = (*registeredChunks)[chunkUid].first;
DoPrintCallback cb = (*registeredChunks)[chunkUid-1].first;
cb (i->m_printer, start, os, packetUid, size);
return;
}
}
DoGetNameCallback cb = (*registeredChunks)[chunkUid].second;
DoGetNameCallback cb = (*registeredChunks)[chunkUid-1].second;
std::string name = cb ();
struct PacketPrinter::FragmentInformation info;
info.start = 0;
@ -107,7 +108,8 @@ PacketPrinter::PrintChunkFragment (uint32_t chunkUid,
uint32_t fragmentEnd) const
{
RegisteredChunks *registeredChunks = PacketPrinter::GetRegisteredChunks ();
DoGetNameCallback cb = (*registeredChunks)[chunkUid].second;
NS_ASSERT (chunkUid > 1);
DoGetNameCallback cb = (*registeredChunks)[chunkUid-1].second;
std::string name = cb ();
struct PacketPrinter::FragmentInformation info;
info.start = fragmentStart;

View File

@ -229,7 +229,7 @@ PacketPrinter::AllocateUid (void)
RegisteredChunks *chunks = PacketPrinter::GetRegisteredChunks ();
chunks->push_back (std::make_pair(&PacketPrinter::DoPrint<T>,
&PacketPrinter::DoGetName<T>));
uint32_t uid = chunks->size () - 1;
uint32_t uid = chunks->size ();
PacketPrinter::PeekDefault ()->DoAddPrinter (uid,
MakeCallback (&PacketPrinter::DoDefaultPrint<T>).GetImpl (),
MakeCallback (&PacketPrinter::DoDefaultPrintFragment));