merge -r 57517:57620 maintenance.

master
Steven Bennetts 2007-02-05 21:13:38 +00:00
parent d1582a5105
commit 77f04c74eb
2 changed files with 17 additions and 4 deletions

View File

@ -1801,14 +1801,27 @@ BOOL LLMessageSystem::checkMessages( S64 frame_count )
else
{
LLHost host;
LLCircuitData *cdp;
LLCircuitData* cdp;
// note if packet acks are appended.
if(buffer[0] & LL_ACK_FLAG)
{
acks += buffer[--mReceiveSize];
true_rcv_size = mReceiveSize;
mReceiveSize -= acks * sizeof(TPACKETID);
if(mReceiveSize >= ((S32)(acks * sizeof(TPACKETID) + LL_MINIMUM_VALID_PACKET_SIZE)))
{
mReceiveSize -= acks * sizeof(TPACKETID);
}
else
{
// mal-formed packet. ignore it and continue with
// the next one
llwarns << "Malformed packet received. Packet size "
<< mReceiveSize << " with invalid no. of acks " << acks
<< llendl;
valid_packet = FALSE;
continue;
}
}
// process the message as normal
@ -3329,7 +3342,7 @@ BOOL LLMessageSystem::decodeData(const U8* buffer, const LLHost& sender )
// create base working data set
mCurrentRMessageData = new LLMsgData(mCurrentRMessageTemplate->mName);
// loop through the template building the data structure as we go
for (LLMessageTemplate::message_block_map_t::iterator iter = mCurrentRMessageTemplate->mMemberBlocks.begin();
iter != mCurrentRMessageTemplate->mMemberBlocks.end(); iter++)

View File

@ -2193,7 +2193,7 @@ LLFloater *LLFloaterView::getFrontmost()
for ( child_list_const_iter_t child_it = getChildList()->begin(); child_it != getChildList()->end(); ++child_it)
{
LLView* viewp = *child_it;
if ( viewp->getVisible() )
if ( viewp->getVisible() && !viewp->isDead())
{
return (LLFloater *)viewp;
}