diff options
author | Jacek Antonelli | 2008-08-15 23:45:07 -0500 |
---|---|---|
committer | Jacek Antonelli | 2008-08-15 23:45:07 -0500 |
commit | 8465910c79b8e746e04fd581cca2d60399e569b9 (patch) | |
tree | f43fec3e83c46e0d6190dca923d6fb268b52ffdd /linden/indra/llmessage/lltemplatemessagereader.cpp | |
parent | Second Life viewer sources 1.18.2.1 (diff) | |
download | meta-impy-8465910c79b8e746e04fd581cca2d60399e569b9.zip meta-impy-8465910c79b8e746e04fd581cca2d60399e569b9.tar.gz meta-impy-8465910c79b8e746e04fd581cca2d60399e569b9.tar.bz2 meta-impy-8465910c79b8e746e04fd581cca2d60399e569b9.tar.xz |
Second Life viewer sources 1.18.3.2-RC
Diffstat (limited to 'linden/indra/llmessage/lltemplatemessagereader.cpp')
-rw-r--r-- | linden/indra/llmessage/lltemplatemessagereader.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/linden/indra/llmessage/lltemplatemessagereader.cpp b/linden/indra/llmessage/lltemplatemessagereader.cpp index 329d2a8..4cde483 100644 --- a/linden/indra/llmessage/lltemplatemessagereader.cpp +++ b/linden/indra/llmessage/lltemplatemessagereader.cpp | |||
@@ -502,12 +502,15 @@ BOOL LLTemplateMessageReader::decodeTemplate( | |||
502 | return(TRUE); | 502 | return(TRUE); |
503 | } | 503 | } |
504 | 504 | ||
505 | void LLTemplateMessageReader::logRanOffEndOfPacket( const LLHost& host ) | 505 | void LLTemplateMessageReader::logRanOffEndOfPacket( const LLHost& host, const S32 where, const S32 wanted ) |
506 | { | 506 | { |
507 | // we've run off the end of the packet! | 507 | // we've run off the end of the packet! |
508 | llwarns << "Ran off end of packet " << mCurrentRMessageTemplate->mName | 508 | llwarns << "Ran off end of packet " << mCurrentRMessageTemplate->mName |
509 | // << " with id " << mCurrentRecvPacketID | 509 | // << " with id " << mCurrentRecvPacketID |
510 | << " from " << host | 510 | << " from " << host |
511 | << " trying to read " << wanted | ||
512 | << " bytes at position " << where | ||
513 | << " going past packet end at " << mReceiveSize | ||
511 | << llendl; | 514 | << llendl; |
512 | if(gMessageSystem->mVerboseLog) | 515 | if(gMessageSystem->mVerboseLog) |
513 | { | 516 | { |
@@ -562,7 +565,7 @@ BOOL LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender | |||
562 | // repeat number is a single byte | 565 | // repeat number is a single byte |
563 | if (decode_pos >= mReceiveSize) | 566 | if (decode_pos >= mReceiveSize) |
564 | { | 567 | { |
565 | logRanOffEndOfPacket(sender); | 568 | logRanOffEndOfPacket(sender, decode_pos, 1); |
566 | 569 | ||
567 | // default to 0 repeats | 570 | // default to 0 repeats |
568 | repeat_number = 0; | 571 | repeat_number = 0; |
@@ -621,7 +624,7 @@ BOOL LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender | |||
621 | 624 | ||
622 | if ((decode_pos + data_size) > mReceiveSize) | 625 | if ((decode_pos + data_size) > mReceiveSize) |
623 | { | 626 | { |
624 | logRanOffEndOfPacket(sender); | 627 | logRanOffEndOfPacket(sender, decode_pos, data_size); |
625 | 628 | ||
626 | // default to 0 length variable blocks | 629 | // default to 0 length variable blocks |
627 | tsize = 0; | 630 | tsize = 0; |
@@ -657,7 +660,7 @@ BOOL LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender | |||
657 | // so, copy data pointer and set data size to fixed size | 660 | // so, copy data pointer and set data size to fixed size |
658 | if ((decode_pos + mvci.getSize()) > mReceiveSize) | 661 | if ((decode_pos + mvci.getSize()) > mReceiveSize) |
659 | { | 662 | { |
660 | logRanOffEndOfPacket(sender); | 663 | logRanOffEndOfPacket(sender, decode_pos, mvci.getSize()); |
661 | 664 | ||
662 | // default to 0s. | 665 | // default to 0s. |
663 | U32 size = mvci.getSize(); | 666 | U32 size = mvci.getSize(); |