diff options
Diffstat (limited to 'indra/llmessage/lltemplatemessagereader.cpp')
-rw-r--r-- | indra/llmessage/lltemplatemessagereader.cpp | 33 |
1 files changed, 8 insertions, 25 deletions
diff --git a/indra/llmessage/lltemplatemessagereader.cpp b/indra/llmessage/lltemplatemessagereader.cpp index 1432fd1efd..b62288590e 100644 --- a/indra/llmessage/lltemplatemessagereader.cpp +++ b/indra/llmessage/lltemplatemessagereader.cpp @@ -118,9 +118,6 @@ void LLTemplateMessageReader::getData(const char *blockname, const char *varname { switch( vardata_size ) { - case 0: - // This is here to prevent a memcpy from a null value which is undefined behavior. - break; case 1: *((U8*)datap) = *((U8*)vardata.getData()); break; @@ -289,7 +286,7 @@ void LLTemplateMessageReader::getU8(const char *block, const char *var, void LLTemplateMessageReader::getBOOL(const char *block, const char *var, bool &b, S32 blocknum ) { - U8 value(0); + U8 value; getData(block, var, &value, sizeof(U8), blocknum); b = (bool)value; } @@ -448,7 +445,7 @@ S32 LLTemplateMessageReader::getMessageSize() const // Returns template for the message contained in buffer bool LLTemplateMessageReader::decodeTemplate( const U8* buffer, S32 buffer_size, // inputs - LLMessageTemplate** msg_template, bool custom ) // outputs + LLMessageTemplate** msg_template ) // outputs { const U8* header = buffer + LL_PACKET_ID_SIZE; @@ -490,7 +487,6 @@ bool LLTemplateMessageReader::decodeTemplate( } else // bogus packet received (too short) { - if (!custom) LL_WARNS() << "Packet with unusable length received (too short): " << buffer_size << LL_ENDL; return(false); @@ -503,11 +499,9 @@ bool LLTemplateMessageReader::decodeTemplate( } else { - if (!custom) - { + // MAINT-7482 - make viewer more tolerant of unknown messages. LL_WARNS_ONCE() << "Message #" << std::hex << num << std::dec << " received but not registered!" << LL_ENDL; - } //gMessageSystem->callExceptionFunc(MX_UNREGISTERED_MESSAGE); return(false); } @@ -537,7 +531,7 @@ void LLTemplateMessageReader::logRanOffEndOfPacket( const LLHost& host, const S3 static LLTrace::BlockTimerStatHandle FTM_PROCESS_MESSAGES("Process Messages"); // decode a given message -bool LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender, bool custom ) +bool LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender ) { LL_RECORD_BLOCK_TIME(FTM_PROCESS_MESSAGES); @@ -597,7 +591,6 @@ bool LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender, } else { - if (!custom) LL_ERRS() << "Unknown block type" << LL_ENDL; return false; } @@ -644,7 +637,6 @@ bool LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender, if ((decode_pos + data_size) > mReceiveSize) { - if (!custom) logRanOffEndOfPacket(sender, decode_pos, data_size); // default to 0 length variable blocks @@ -681,7 +673,6 @@ bool LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender, // so, copy data pointer and set data size to fixed size if ((decode_pos + mvci.getSize()) > mReceiveSize) { - if (!custom) logRanOffEndOfPacket(sender, decode_pos, mvci.getSize()); // default to 0s. @@ -706,11 +697,10 @@ bool LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender, if (mCurrentRMessageData->mMemberBlocks.empty() && !mCurrentRMessageTemplate->mMemberBlocks.empty()) { - LL_WARNS() << "Empty message '" << mCurrentRMessageTemplate->mName << "' (no blocks)" << LL_ENDL; + LL_DEBUGS() << "Empty message '" << mCurrentRMessageTemplate->mName << "' (no blocks)" << LL_ENDL; return false; } - if (!custom) { static LLTimer decode_timer; @@ -763,12 +753,11 @@ bool LLTemplateMessageReader::decodeData(const U8* buffer, const LLHost& sender, bool LLTemplateMessageReader::validateMessage(const U8* buffer, S32 buffer_size, const LLHost& sender, - bool trusted, - bool custom) + bool trusted) { mReceiveSize = buffer_size; - BOOL valid = decodeTemplate(buffer, buffer_size, &mCurrentRMessageTemplate, custom ); - if(valid && !custom) + bool valid = decodeTemplate(buffer, buffer_size, &mCurrentRMessageTemplate ); + if(valid) { mCurrentRMessageTemplate->mReceiveCount++; //LL_DEBUGS() << "MessageRecvd:" @@ -839,9 +828,3 @@ void LLTemplateMessageReader::copyToBuilder(LLMessageBuilder& builder) const } builder.copyFromMessageData(*mCurrentRMessageData); } - -LLMessageTemplate* LLTemplateMessageReader::getTemplate() -{ - return mCurrentRMessageTemplate; -} - |