diff options
Diffstat (limited to 'indra')
-rw-r--r-- | indra/llcommon/llversionserver.h | 2 | ||||
-rw-r--r-- | indra/llinventory/llparcel.cpp | 8 | ||||
-rw-r--r-- | indra/llmessage/llcurl.cpp | 1 | ||||
-rw-r--r-- | indra/lscript/lscript_byteconvert.h | 41 | ||||
-rw-r--r-- | indra/newview/lltexturefetch.cpp | 2 |
5 files changed, 26 insertions, 28 deletions
diff --git a/indra/llcommon/llversionserver.h b/indra/llcommon/llversionserver.h index b9aa71b4dc..c57830e936 100644 --- a/indra/llcommon/llversionserver.h +++ b/indra/llcommon/llversionserver.h @@ -35,7 +35,7 @@ const S32 LL_VERSION_MAJOR = 1; const S32 LL_VERSION_MINOR = 19; const S32 LL_VERSION_PATCH = 1; -const S32 LL_VERSION_BUILD = 80913; +const S32 LL_VERSION_BUILD = 81484; const char * const LL_CHANNEL = "Second Life Server"; diff --git a/indra/llinventory/llparcel.cpp b/indra/llinventory/llparcel.cpp index 7a84e1916f..81001a2c9d 100644 --- a/indra/llinventory/llparcel.cpp +++ b/indra/llinventory/llparcel.cpp @@ -216,8 +216,8 @@ void LLParcel::init(const LLUUID &owner_id, mMediaID.setNull(); mMediaAutoScale = 0; mMediaLoop = TRUE; - mObscureMedia = 0; - mObscureMusic = 0; + mObscureMedia = 1; + mObscureMusic = 1; mMediaWidth = 0; mMediaHeight = 0; @@ -1850,8 +1850,8 @@ void LLParcel::clearParcel() setMediaDesc(NULL); setMediaAutoScale(0); setMediaLoop(TRUE); - mObscureMedia = 0; - mObscureMusic = 0; + mObscureMedia = 1; + mObscureMusic = 1; mMediaWidth = 0; mMediaHeight = 0; setMusicURL(NULL); diff --git a/indra/llmessage/llcurl.cpp b/indra/llmessage/llcurl.cpp index 8b9a45ff3f..8afcb6ba4f 100644 --- a/indra/llmessage/llcurl.cpp +++ b/indra/llmessage/llcurl.cpp @@ -121,7 +121,6 @@ void LLCurl::Responder::error(U32 status, const std::string& reason) // virtual void LLCurl::Responder::result(const LLSD& content) { - llwarns << "Virtual Function not implemented" << llendl; } // virtual diff --git a/indra/lscript/lscript_byteconvert.h b/indra/lscript/lscript_byteconvert.h index d0a5d574d0..e8b727b737 100644 --- a/indra/lscript/lscript_byteconvert.h +++ b/indra/lscript/lscript_byteconvert.h @@ -166,8 +166,15 @@ inline void bytestream_int2float(U8 *stream, S32 &offset) inline bool bytestream2char(char *buffer, const U8 *stream, S32 &offset, S32 buffsize) { S32 source_len = strlen( (const char *)stream+offset ); - strncpy( buffer, (const char *)stream+offset, buffsize-1 ); - buffer[buffsize-1] = 0; + S32 copy_len = buffsize - 1; + if( copy_len > source_len ) + { + copy_len = source_len; + } + + // strncpy without \0 padding overhead + memcpy( buffer, stream+offset, copy_len ); + buffer[copy_len] = 0; offset += source_len + 1; // advance past source string, include terminating '\0' @@ -1073,28 +1080,20 @@ inline void safe_instruction_float2bytestream(U8 *stream, S32 &offset, F32 value inline void safe_instruction_bytestream2char(char *buffer, U8 *stream, S32 &offset, S32 buffsize) { - bool safe; - while ( (safe = safe_instruction_check_address(stream, offset, 1)) - && buffsize-- - &&(*buffer++ = *(stream + offset++))) - ; + // This varies from the old method. Previously, we would copy up until we got an error, + // then halt the script via safe_isntruction_check_address. Now we don't bother + // copying a thing if there's an error. - // Return if it ended in a null (success) or if script error handling is taking over - if( !safe || (0 == *(buffer-1)) ) + if( safe_instruction_check_address(stream, offset, strlen( (const char *)stream + offset ) + 1 ) ) { - return; // Yep. Success. + // Takes the same parms as this function. Won't overread, per above check. + bytestream2char( buffer, stream, offset, buffsize ); + } + else + { + // Truncate - no point in copying + *buffer = 0; } - - // Defensive mode. We copied at least one char and ran out of space before - // null termination. Add the terminator... - *(buffer-1) = 0; - - // ...and advance offset past the end of the data as if we copied the rest. If we - // violate the safety check, script error handling will protect us. No need to - // keep advancing. - while( safe_instruction_check_address(stream, offset, 1) - && *( stream + offset++ ) ) - ; } inline void safe_instruction_bytestream_count_char(U8 *stream, S32 &offset) diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp index 9464146742..008eaccdc4 100644 --- a/indra/newview/lltexturefetch.cpp +++ b/indra/newview/lltexturefetch.cpp @@ -91,7 +91,7 @@ private: LLUUID mID; }; - class HTTPGetResponder : public LLCurl::Responder + class HTTPGetResponder : public LLHTTPClient::Responder { public: HTTPGetResponder(LLTextureFetch* fetcher, const LLUUID& id) |