Merge branch 'master' of github-hazim:HazimGazov/Inertia
This commit is contained in:
@@ -9,10 +9,18 @@ LLMessageLogEntry::LLMessageLogEntry(EType type, LLHost from_host, LLHost to_hos
|
|||||||
{
|
{
|
||||||
if(data)
|
if(data)
|
||||||
{
|
{
|
||||||
mData = new U8[data_size];
|
mData.resize(data_size);
|
||||||
memcpy(mData, data, data_size);
|
memcpy(&(mData[0]), data, data_size);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
LLMessageLogEntry::LLMessageLogEntry(EType type, LLHost from_host, LLHost to_host, std::vector<U8> data, S32 data_size)
|
||||||
|
: mType(type),
|
||||||
|
mFromHost(from_host),
|
||||||
|
mToHost(to_host),
|
||||||
|
mDataSize(data_size),
|
||||||
|
mData(data)
|
||||||
|
{
|
||||||
|
}
|
||||||
LLMessageLogEntry::~LLMessageLogEntry()
|
LLMessageLogEntry::~LLMessageLogEntry()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@@ -32,7 +40,7 @@ void LLMessageLog::setCallback(void (*callback)(LLMessageLogEntry))
|
|||||||
void LLMessageLog::log(LLHost from_host, LLHost to_host, U8* data, S32 data_size)
|
void LLMessageLog::log(LLHost from_host, LLHost to_host, U8* data, S32 data_size)
|
||||||
{
|
{
|
||||||
LLMessageLogEntry entry = LLMessageLogEntry(LLMessageLogEntry::TEMPLATE, from_host, to_host, data, data_size);
|
LLMessageLogEntry entry = LLMessageLogEntry(LLMessageLogEntry::TEMPLATE, from_host, to_host, data, data_size);
|
||||||
if(!entry.mDataSize || !entry.mData) return;
|
if(!entry.mDataSize || !entry.mData.size()) return;
|
||||||
if(sCallback) sCallback(entry);
|
if(sCallback) sCallback(entry);
|
||||||
if(!sMaxSize) return;
|
if(!sMaxSize) return;
|
||||||
sDeque.push_back(entry);
|
sDeque.push_back(entry);
|
||||||
|
|||||||
@@ -17,12 +17,13 @@ public:
|
|||||||
HTTP_RESPONSE
|
HTTP_RESPONSE
|
||||||
};
|
};
|
||||||
LLMessageLogEntry(EType type, LLHost from_host, LLHost to_host, U8* data, S32 data_size);
|
LLMessageLogEntry(EType type, LLHost from_host, LLHost to_host, U8* data, S32 data_size);
|
||||||
|
LLMessageLogEntry(EType type, LLHost from_host, LLHost to_host, std::vector<U8> data, S32 data_size);
|
||||||
~LLMessageLogEntry();
|
~LLMessageLogEntry();
|
||||||
EType mType;
|
EType mType;
|
||||||
LLHost mFromHost;
|
LLHost mFromHost;
|
||||||
LLHost mToHost;
|
LLHost mToHost;
|
||||||
S32 mDataSize;
|
S32 mDataSize;
|
||||||
U8* mData;
|
std::vector<U8> mData;
|
||||||
};
|
};
|
||||||
class LLMessageLog
|
class LLMessageLog
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -41,8 +41,8 @@ LLFloaterMessageLogItem::LLFloaterMessageLogItem(LLMessageLogEntry entry)
|
|||||||
{
|
{
|
||||||
BOOL decode_invalid = FALSE;
|
BOOL decode_invalid = FALSE;
|
||||||
S32 decode_len = mDataSize;
|
S32 decode_len = mDataSize;
|
||||||
U8 DecodeBuffer[MAX_PACKET_LEN];
|
std::vector<U8> DecodeBuffer(MAX_PACKET_LEN,0);
|
||||||
memcpy(&(DecodeBuffer[0]),mData,decode_len);
|
memcpy(&(DecodeBuffer[0]),&(mData[0]),decode_len);
|
||||||
U8* decodep = &(DecodeBuffer[0]);
|
U8* decodep = &(DecodeBuffer[0]);
|
||||||
mFlags = DecodeBuffer[0];
|
mFlags = DecodeBuffer[0];
|
||||||
gMessageSystem->zeroCodeExpand(&decodep, &decode_len);
|
gMessageSystem->zeroCodeExpand(&decodep, &decode_len);
|
||||||
@@ -142,8 +142,8 @@ std::string LLFloaterMessageLogItem::getFull(BOOL show_header)
|
|||||||
{
|
{
|
||||||
BOOL decode_invalid = FALSE;
|
BOOL decode_invalid = FALSE;
|
||||||
S32 decode_len = mDataSize;
|
S32 decode_len = mDataSize;
|
||||||
U8 DecodeBuffer[MAX_PACKET_LEN];
|
std::vector<U8> DecodeBuffer(MAX_PACKET_LEN,0);
|
||||||
memcpy(&(DecodeBuffer[0]),mData,decode_len);
|
memcpy(&(DecodeBuffer[0]),&(mData[0]),decode_len);
|
||||||
U8* decodep = &(DecodeBuffer[0]);
|
U8* decodep = &(DecodeBuffer[0]);
|
||||||
gMessageSystem->zeroCodeExpand(&decodep, &decode_len);
|
gMessageSystem->zeroCodeExpand(&decodep, &decode_len);
|
||||||
if(decode_len < 7)
|
if(decode_len < 7)
|
||||||
@@ -416,8 +416,8 @@ LLMessageLogFilterApply::LLMessageLogFilterApply()
|
|||||||
mProgress(0)
|
mProgress(0)
|
||||||
{
|
{
|
||||||
//make extra sure we don't invalidate any iterators and reserve a deque exclusively for our use
|
//make extra sure we don't invalidate any iterators and reserve a deque exclusively for our use
|
||||||
mFilterTempMessages = new std::deque <LLMessageLogEntry>(LLFloaterMessageLog::sMessageLogEntries);
|
mFilterTempMessages = LLFloaterMessageLog::sMessageLogEntries;
|
||||||
mIter = mFilterTempMessages->begin();
|
mIter = mFilterTempMessages.begin();
|
||||||
}
|
}
|
||||||
void LLMessageLogFilterApply::cancel()
|
void LLMessageLogFilterApply::cancel()
|
||||||
{
|
{
|
||||||
@@ -425,7 +425,7 @@ void LLMessageLogFilterApply::cancel()
|
|||||||
}
|
}
|
||||||
BOOL LLMessageLogFilterApply::tick()
|
BOOL LLMessageLogFilterApply::tick()
|
||||||
{
|
{
|
||||||
std::deque<LLMessageLogEntry>::iterator end = mFilterTempMessages->end();
|
std::deque<LLMessageLogEntry>::iterator end = mFilterTempMessages.end();
|
||||||
if(mIter == end || !LLFloaterMessageLog::sInstance)
|
if(mIter == end || !LLFloaterMessageLog::sInstance)
|
||||||
{
|
{
|
||||||
mFinished = TRUE;
|
mFinished = TRUE;
|
||||||
@@ -451,8 +451,6 @@ BOOL LLMessageLogFilterApply::tick()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
delete mFilterTempMessages;
|
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ public:
|
|||||||
S32 mProgress;
|
S32 mProgress;
|
||||||
BOOL mFinished;
|
BOOL mFinished;
|
||||||
private:
|
private:
|
||||||
std::deque<LLMessageLogEntry> *mFilterTempMessages;
|
std::deque<LLMessageLogEntry> mFilterTempMessages;
|
||||||
std::deque<LLMessageLogEntry>::iterator mIter;
|
std::deque<LLMessageLogEntry>::iterator mIter;
|
||||||
};
|
};
|
||||||
class LLFloaterMessageLog : public LLFloater, public LLEventTimer
|
class LLFloaterMessageLog : public LLFloater, public LLEventTimer
|
||||||
|
|||||||
Reference in New Issue
Block a user