aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra
diff options
context:
space:
mode:
authorArmin Weatherwax2009-07-08 17:42:53 +0200
committerArmin Weatherwax2009-07-11 13:45:17 +0200
commit8f99d24a677cde192fb604ccf5dc8afbe26f557b (patch)
tree03c537a45e5611d150b9d8162e5f40365e97b0bb /linden/indra
parentBROKEN now consistantly crashes at startup STATE_PRECACHE (diff)
downloadmeta-impy-8f99d24a677cde192fb604ccf5dc8afbe26f557b.zip
meta-impy-8f99d24a677cde192fb604ccf5dc8afbe26f557b.tar.gz
meta-impy-8f99d24a677cde192fb604ccf5dc8afbe26f557b.tar.bz2
meta-impy-8f99d24a677cde192fb604ccf5dc8afbe26f557b.tar.xz
Broken: relog sometimes works once; fixed inventory and avatar not ruthed anymore.
deleted: Imprudence.log modified: linden/indra/newview/llagent.cpp modified: linden/indra/newview/llappviewer.cpp modified: linden/indra/newview/llinventorymodel.cpp modified: linden/indra/newview/llinventorymodel.h modified: linden/indra/newview/llinventoryview.cpp modified: linden/indra/newview/llviewerjointattachment.h modified: linden/indra/newview/llviewermenu.cpp deleted: mAttachedObject.diff.txt deleted: meerkat-llmenugl.diff.txt deleted: meerkat-message.diff.txt deleted: meerkat-pipeline.cpp.diff.txt deleted: meerkat-voice.diff.txt deleted: stack_trace.log
Diffstat (limited to 'linden/indra')
-rw-r--r--linden/indra/newview/llagent.cpp12
-rw-r--r--linden/indra/newview/llappviewer.cpp2
-rw-r--r--linden/indra/newview/llinventorymodel.cpp2
-rw-r--r--linden/indra/newview/llinventorymodel.h6
-rw-r--r--linden/indra/newview/llinventoryview.cpp1
-rw-r--r--linden/indra/newview/llviewerjointattachment.h4
-rw-r--r--linden/indra/newview/llviewermenu.cpp5
7 files changed, 27 insertions, 5 deletions
diff --git a/linden/indra/newview/llagent.cpp b/linden/indra/newview/llagent.cpp
index 5f0a875..e6ae7b5 100644
--- a/linden/indra/newview/llagent.cpp
+++ b/linden/indra/newview/llagent.cpp
@@ -466,6 +466,10 @@ void LLAgent::init()
466//----------------------------------------------------------------------------- 466//-----------------------------------------------------------------------------
467void LLAgent::cleanup() 467void LLAgent::cleanup()
468{ 468{
469 mInitialized = FALSE;
470 mWearablesLoaded = FALSE;
471 mShowAvatar = TRUE;
472
469 setSitCamera(LLUUID::null); 473 setSitCamera(LLUUID::null);
470 mAvatarObject = NULL; 474 mAvatarObject = NULL;
471 mLookAt = NULL; 475 mLookAt = NULL;
@@ -6592,11 +6596,19 @@ BOOL LLAgent::isWearingItem( const LLUUID& item_id )
6592// static 6596// static
6593void LLAgent::processAgentInitialWearablesUpdate( LLMessageSystem* mesgsys, void** user_data ) 6597void LLAgent::processAgentInitialWearablesUpdate( LLMessageSystem* mesgsys, void** user_data )
6594{ 6598{
6599 if (gNoRender)
6600 {
6601 return;
6602 }
6603
6595 // We should only receive this message a single time. Ignore subsequent AgentWearablesUpdates 6604 // We should only receive this message a single time. Ignore subsequent AgentWearablesUpdates
6596 // that may result from AgentWearablesRequest having been sent more than once. 6605 // that may result from AgentWearablesRequest having been sent more than once.
6606 // If we do this, then relogging won't work. - Gigs
6607 /*
6597 static bool first = true; 6608 static bool first = true;
6598 if (!first) return; 6609 if (!first) return;
6599 first = false; 6610 first = false;
6611 */
6600 6612
6601 LLUUID agent_id; 6613 LLUUID agent_id;
6602 gMessageSystem->getUUIDFast(_PREHASH_AgentData, _PREHASH_AgentID, agent_id ); 6614 gMessageSystem->getUUIDFast(_PREHASH_AgentData, _PREHASH_AgentID, agent_id );
diff --git a/linden/indra/newview/llappviewer.cpp b/linden/indra/newview/llappviewer.cpp
index 60faaf2..128f33a 100644
--- a/linden/indra/newview/llappviewer.cpp
+++ b/linden/indra/newview/llappviewer.cpp
@@ -3797,7 +3797,7 @@ void LLAppViewer::disconnectViewer()
3797 LLWorld::getInstance()->destroyClass(); 3797 LLWorld::getInstance()->destroyClass();
3798 3798
3799 if (mQuitRequested) 3799 if (mQuitRequested)
3800 cleanup_xfer_manager(); 3800 cleanup_xfer_manager();
3801} 3801}
3802 3802
3803void LLAppViewer::forceErrorLLError() 3803void LLAppViewer::forceErrorLLError()
diff --git a/linden/indra/newview/llinventorymodel.cpp b/linden/indra/newview/llinventorymodel.cpp
index 1029a3c..93eb7ac 100644
--- a/linden/indra/newview/llinventorymodel.cpp
+++ b/linden/indra/newview/llinventorymodel.cpp
@@ -1499,7 +1499,7 @@ void LLInventoryModel::stopBackgroundFetch()
1499//static 1499//static
1500void LLInventoryModel::backgroundFetch(void*) 1500void LLInventoryModel::backgroundFetch(void*)
1501{ 1501{
1502 if (sBackgroundFetchActive && gAgent.getRegion()) 1502 if (sBackgroundFetchActive)
1503 { 1503 {
1504 //If we'll be using the capability, we'll be sending batches and the background thing isn't as important. 1504 //If we'll be using the capability, we'll be sending batches and the background thing isn't as important.
1505 std::string url = gAgent.getRegion()->getCapability("WebFetchInventoryDescendents"); 1505 std::string url = gAgent.getRegion()->getCapability("WebFetchInventoryDescendents");
diff --git a/linden/indra/newview/llinventorymodel.h b/linden/indra/newview/llinventorymodel.h
index 7c7d231..e95d246 100644
--- a/linden/indra/newview/llinventorymodel.h
+++ b/linden/indra/newview/llinventorymodel.h
@@ -323,6 +323,8 @@ public:
323 // relations. 323 // relations.
324 void buildParentChildMap(); 324 void buildParentChildMap();
325 325
326 // Empty the entire contents
327 void empty();
326 // 328 //
327 // Category accounting. 329 // Category accounting.
328 // 330 //
@@ -374,6 +376,7 @@ public:
374 static bool isEverythingFetched(); 376 static bool isEverythingFetched();
375 static void backgroundFetch(void*); // background fetch idle function 377 static void backgroundFetch(void*); // background fetch idle function
376 static void incrBulkFetch(S16 fetching) { sBulkFetchCount+=fetching; if (sBulkFetchCount<0) sBulkFetchCount=0; } 378 static void incrBulkFetch(S16 fetching) { sBulkFetchCount+=fetching; if (sBulkFetchCount<0) sBulkFetchCount=0; }
379
377protected: 380protected:
378 381
379 // Internal methods which add inventory and make sure that all of 382 // Internal methods which add inventory and make sure that all of
@@ -387,8 +390,7 @@ protected:
387 // preferred type. Returns LLUUID::null if not found 390 // preferred type. Returns LLUUID::null if not found
388 LLUUID findCatUUID(LLAssetType::EType preferred_type); 391 LLUUID findCatUUID(LLAssetType::EType preferred_type);
389 392
390 // Empty the entire contents 393
391 void empty();
392 394
393 // Given the current state of the inventory items, figure out the 395 // Given the current state of the inventory items, figure out the
394 // clone information. *FIX: This is sub-optimal, since we can 396 // clone information. *FIX: This is sub-optimal, since we can
diff --git a/linden/indra/newview/llinventoryview.cpp b/linden/indra/newview/llinventoryview.cpp
index 0f1eb2b..d79c6e9 100644
--- a/linden/indra/newview/llinventoryview.cpp
+++ b/linden/indra/newview/llinventoryview.cpp
@@ -941,6 +941,7 @@ void LLInventoryView::cleanup()
941 { 941 {
942 sActiveViews.get(i)->destroy(); 942 sActiveViews.get(i)->destroy();
943 } 943 }
944 gInventory.empty();
944} 945}
945 946
946void LLInventoryView::toggleFindOptions() 947void LLInventoryView::toggleFindOptions()
diff --git a/linden/indra/newview/llviewerjointattachment.h b/linden/indra/newview/llviewerjointattachment.h
index dd63bfd..cbfee0b 100644
--- a/linden/indra/newview/llviewerjointattachment.h
+++ b/linden/indra/newview/llviewerjointattachment.h
@@ -98,7 +98,9 @@ protected:
98 void calcLOD(); 98 void calcLOD();
99 99
100protected: 100protected:
101 LLPointer<LLViewerObject> mAttachedObject; 101
102 // Backlink only; don't make this an LLPointer.
103 LLViewerObject* mAttachedObject;
102 BOOL mVisibleInFirst; 104 BOOL mVisibleInFirst;
103 LLVector3 mOriginalPos; 105 LLVector3 mOriginalPos;
104 S32 mGroup; 106 S32 mGroup;
diff --git a/linden/indra/newview/llviewermenu.cpp b/linden/indra/newview/llviewermenu.cpp
index 2940bdd..f75ca7d 100644
--- a/linden/indra/newview/llviewermenu.cpp
+++ b/linden/indra/newview/llviewermenu.cpp
@@ -564,6 +564,11 @@ void set_underclothes_menu_options()
564 564
565void init_menus() 565void init_menus()
566{ 566{
567 if (gMenuHolder)
568 {
569 cleanup_menus();
570 }
571
567 S32 top = gViewerWindow->getRootView()->getRect().getHeight(); 572 S32 top = gViewerWindow->getRootView()->getRect().getHeight();
568 S32 width = gViewerWindow->getRootView()->getRect().getWidth(); 573 S32 width = gViewerWindow->getRootView()->getRect().getWidth();
569 574