diff options
author | Leslie Linden <none@none> | 2011-06-08 15:48:44 -0700 |
---|---|---|
committer | Leslie Linden <none@none> | 2011-06-08 15:48:44 -0700 |
commit | 6e928645b94901518fe452ab7fab0278e87613d7 (patch) | |
tree | f94413d61460d6d54501c5f7ce2ed92eb4571587 /indra | |
parent | de78d17e912b7e2a4c563a7a428f11cce33644c0 (diff) | |
parent | 86470d3889436017264a69d57fb2060a591955f4 (diff) |
Merge to fix 64k limit on param blocks
Diffstat (limited to 'indra')
-rw-r--r-- | indra/llui/tests/llurlmatch_test.cpp | 2 | ||||
-rw-r--r-- | indra/llxuixml/llinitparam.cpp | 2 | ||||
-rw-r--r-- | indra/llxuixml/llinitparam.h | 5 | ||||
-rw-r--r-- | indra/newview/llviewerwindow.cpp | 5 |
4 files changed, 9 insertions, 5 deletions
diff --git a/indra/llui/tests/llurlmatch_test.cpp b/indra/llui/tests/llurlmatch_test.cpp index e09ef33d49..3cd61e574e 100644 --- a/indra/llui/tests/llurlmatch_test.cpp +++ b/indra/llui/tests/llurlmatch_test.cpp @@ -95,7 +95,7 @@ namespace LLInitParam { const U8* my_addr = reinterpret_cast<const U8*>(this); const U8* block_addr = reinterpret_cast<const U8*>(enclosing_block); - mEnclosingBlockOffset = (U16)(my_addr - block_addr); + mEnclosingBlockOffset = 0x7FFFffff & ((U32)(my_addr - block_addr)); } bool BaseBlock::deserializeBlock(Parser& p, Parser::name_stack_range_t name_stack, S32 generation){ return true; } diff --git a/indra/llxuixml/llinitparam.cpp b/indra/llxuixml/llinitparam.cpp index b3312798dd..c024fd405e 100644 --- a/indra/llxuixml/llinitparam.cpp +++ b/indra/llxuixml/llinitparam.cpp @@ -40,7 +40,7 @@ namespace LLInitParam { const U8* my_addr = reinterpret_cast<const U8*>(this); const U8* block_addr = reinterpret_cast<const U8*>(enclosing_block); - mEnclosingBlockOffset = (U16)(my_addr - block_addr); + mEnclosingBlockOffset = 0x7FFFffff & ((U32)(my_addr - block_addr)); } // diff --git a/indra/llxuixml/llinitparam.h b/indra/llxuixml/llinitparam.h index ce7cb5b3e0..35c889b69f 100644 --- a/indra/llxuixml/llinitparam.h +++ b/indra/llxuixml/llinitparam.h @@ -304,8 +304,9 @@ namespace LLInitParam private: friend class BaseBlock; - U16 mEnclosingBlockOffset; - bool mIsProvided; + U32 mEnclosingBlockOffset:31; + U32 mIsProvided:1; + }; // various callbacks and constraints associated with an individual param diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 4ecb645337..e97f0fcc2e 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -1979,7 +1979,10 @@ void LLViewerWindow::shutdownViews() // destroy the nav bar, not currently part of gViewerWindow // *TODO: Make LLNavigationBar part of gViewerWindow - delete LLNavigationBar::getInstance(); + if (LLNavigationBar::instanceExists()) + { + delete LLNavigationBar::getInstance(); + } // destroy menus after instantiating navbar above, as it needs // access to gMenuHolder |