diff options
Diffstat (limited to '')
-rw-r--r-- | linden/indra/newview/llselectmgr.cpp | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/linden/indra/newview/llselectmgr.cpp b/linden/indra/newview/llselectmgr.cpp index ec7ba78..5086432 100644 --- a/linden/indra/newview/llselectmgr.cpp +++ b/linden/indra/newview/llselectmgr.cpp | |||
@@ -121,7 +121,7 @@ LLColor4 LLSelectMgr::sHighlightParentColor; | |||
121 | LLColor4 LLSelectMgr::sHighlightChildColor; | 121 | LLColor4 LLSelectMgr::sHighlightChildColor; |
122 | LLColor4 LLSelectMgr::sContextSilhouetteColor; | 122 | LLColor4 LLSelectMgr::sContextSilhouetteColor; |
123 | 123 | ||
124 | static LLObjectSelection* get_null_object_selection(); | 124 | static LLObjectSelection *get_null_object_selection(); |
125 | template<> | 125 | template<> |
126 | const LLHandle<LLObjectSelection>::NullFunc | 126 | const LLHandle<LLObjectSelection>::NullFunc |
127 | LLHandle<LLObjectSelection>::sNullFunc = get_null_object_selection; | 127 | LLHandle<LLObjectSelection>::sNullFunc = get_null_object_selection; |
@@ -145,14 +145,26 @@ struct LLDeRezInfo | |||
145 | // | 145 | // |
146 | 146 | ||
147 | 147 | ||
148 | static LLPointer<LLObjectSelection> sNullSelection; | ||
149 | |||
148 | // | 150 | // |
149 | // Functions | 151 | // Functions |
150 | // | 152 | // |
151 | 153 | ||
152 | LLObjectSelection* get_null_object_selection() | 154 | void LLSelectMgr::cleanupGlobals() |
155 | { | ||
156 | delete gSelectMgr; | ||
157 | gSelectMgr = NULL; | ||
158 | sNullSelection = NULL; | ||
159 | } | ||
160 | |||
161 | LLObjectSelection *get_null_object_selection() | ||
153 | { | 162 | { |
154 | static LLObjectSelection null_selection; | 163 | if (sNullSelection.isNull()) |
155 | return &null_selection;; | 164 | { |
165 | sNullSelection = new LLObjectSelection; | ||
166 | } | ||
167 | return sNullSelection; | ||
156 | } | 168 | } |
157 | 169 | ||
158 | 170 | ||