diff options
Diffstat (limited to 'indra/llcommon')
| -rw-r--r-- | indra/llcommon/linden_common.h | 4 | ||||
| -rw-r--r-- | indra/llcommon/llapr.h | 2 | ||||
| -rw-r--r-- | indra/llcommon/llsdserialize.cpp | 5 | ||||
| -rw-r--r-- | indra/llcommon/llthread.cpp | 7 | ||||
| -rw-r--r-- | indra/llcommon/llthread.h | 5 | ||||
| -rw-r--r-- | indra/llcommon/tests/bitpack_test.cpp | 1 | ||||
| -rw-r--r-- | indra/llcommon/tests/reflection_test.cpp | 2 | 
7 files changed, 23 insertions, 3 deletions
| diff --git a/indra/llcommon/linden_common.h b/indra/llcommon/linden_common.h index 5cfcdab41c..f0a5603d06 100644 --- a/indra/llcommon/linden_common.h +++ b/indra/llcommon/linden_common.h @@ -59,4 +59,8 @@  #include "llerror.h"  #include "llfile.h" +// Boost 1.45 had version 2 as the default for the filesystem library, +// 1.48 has version 3 as the default.  Keep compatibility for now. +#define BOOST_FILESYSTEM_VERSION		2 +  #endif diff --git a/indra/llcommon/llapr.h b/indra/llcommon/llapr.h index af33ce666f..034546c3f3 100644 --- a/indra/llcommon/llapr.h +++ b/indra/llcommon/llapr.h @@ -168,7 +168,7 @@ public:  	void operator -=(Type x) { apr_atomic_sub32(&mData, apr_uint32_t(x)); }  	void operator +=(Type x) { apr_atomic_add32(&mData, apr_uint32_t(x)); }  	Type operator ++(int) { return apr_atomic_inc32(&mData); } // Type++ -	Type operator --(int) { return apr_atomic_dec32(&mData); } // Type-- +	Type operator --(int) { return apr_atomic_dec32(&mData); } // approximately --Type (0 if final is 0, non-zero otherwise)  private:  	apr_uint32_t mData; diff --git a/indra/llcommon/llsdserialize.cpp b/indra/llcommon/llsdserialize.cpp index 7f4f670ed0..6b549e4b6f 100644 --- a/indra/llcommon/llsdserialize.cpp +++ b/indra/llcommon/llsdserialize.cpp @@ -1451,9 +1451,12 @@ S32 LLSDBinaryFormatter::format(const LLSD& data, std::ostream& ostr, U32 option  	}  	case LLSD::TypeUUID: +	{  		ostr.put('u'); -		ostr.write((const char*)(&(data.asUUID().mData)), UUID_BYTES); +		LLSD::UUID value = data.asUUID(); +		ostr.write((const char*)(&value.mData), UUID_BYTES);  		break; +	}  	case LLSD::TypeString:  		ostr.put('s'); diff --git a/indra/llcommon/llthread.cpp b/indra/llcommon/llthread.cpp index c2fbb544a8..1d56a52c32 100644 --- a/indra/llcommon/llthread.cpp +++ b/indra/llcommon/llthread.cpp @@ -71,6 +71,13 @@ LL_COMMON_API void assert_main_thread()  	}  } +void LLThread::registerThreadID() +{ +#if !LL_DARWIN +	sThreadID = ++sIDIter; +#endif +} +  //  // Handed to the APR thread creation function  // diff --git a/indra/llcommon/llthread.h b/indra/llcommon/llthread.h index 115bf47553..5c8bbca2ca 100644 --- a/indra/llcommon/llthread.h +++ b/indra/llcommon/llthread.h @@ -88,6 +88,11 @@ public:  	U32 getID() const { return mID; } +	// Called by threads *not* created via LLThread to register some +	// internal state used by LLMutex.  You must call this once early +	// in the running thread to prevent collisions with the main thread. +	static void registerThreadID(); +	  private:  	BOOL				mPaused; diff --git a/indra/llcommon/tests/bitpack_test.cpp b/indra/llcommon/tests/bitpack_test.cpp index 05289881d0..4c3bc674af 100644 --- a/indra/llcommon/tests/bitpack_test.cpp +++ b/indra/llcommon/tests/bitpack_test.cpp @@ -95,6 +95,7 @@ namespace tut  		ensure("bitPack: individual unpack: 5", unpackbuffer[0] == (U8) str[5]);  		unpack_bufsize = bitunpack.bitUnpack(unpackbuffer, 8*4); // Life  		ensure_memory_matches("bitPack: 4 bytes unpack:", unpackbuffer, 4, str+6, 4); +		ensure("keep compiler quiet", unpack_bufsize == unpack_bufsize);  	}  	// U32 packing diff --git a/indra/llcommon/tests/reflection_test.cpp b/indra/llcommon/tests/reflection_test.cpp index 59491cd1fe..8980ebb1f1 100644 --- a/indra/llcommon/tests/reflection_test.cpp +++ b/indra/llcommon/tests/reflection_test.cpp @@ -207,7 +207,7 @@ namespace tut  			const LLReflective* reflective = property->get(aggregated_data); // Wrong reflective type, should throw exception.  			// useless op to get rid of compiler warning. -			reflective = NULL; +			reflective = reflective;  		}  		catch(...)  		{ | 
