aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJacek Antonelli2009-01-30 17:41:44 -0600
committerJacek Antonelli2009-01-30 17:41:44 -0600
commit2171d6a5e421d7a1bd19c0c2f4e71606890b5fca (patch)
tree154951d206f807ab90e1e1040d7f07d76d27c9ad
parentllLoadUrl scripts now respect browser preferences (diff)
downloadmeta-impy-2171d6a5e421d7a1bd19c0c2f4e71606890b5fca.zip
meta-impy-2171d6a5e421d7a1bd19c0c2f4e71606890b5fca.tar.gz
meta-impy-2171d6a5e421d7a1bd19c0c2f4e71606890b5fca.tar.bz2
meta-impy-2171d6a5e421d7a1bd19c0c2f4e71606890b5fca.tar.xz
Fix crash with two instances logged in to opensim.
Patch by Armin Weatherwax.
-rw-r--r--ChangeLog.txt7
-rw-r--r--linden/indra/newview/llviewerregion.cpp15
2 files changed, 18 insertions, 4 deletions
diff --git a/ChangeLog.txt b/ChangeLog.txt
index 123e623..932a877 100644
--- a/ChangeLog.txt
+++ b/ChangeLog.txt
@@ -2,6 +2,13 @@
2=- 1.1.0 -= 2=- 1.1.0 -=
3=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 3=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
4 4
52009-01-30 Jacek Antonelli <jacek.antonelli@gmail.com>
6
7 * linden/indra/newview/llviewerregion.cpp
8 Fix crash with two instances logged in to opensim.
9 Patch by Armin Weatherwax.
10
11
52009-01-29 McCabe Maxsted <hakushakukun@gmail.com> 122009-01-29 McCabe Maxsted <hakushakukun@gmail.com>
6 13
7 * linden/indra/llmedia/llmediaimplgstreamer.cpp: 14 * linden/indra/llmedia/llmediaimplgstreamer.cpp:
diff --git a/linden/indra/newview/llviewerregion.cpp b/linden/indra/newview/llviewerregion.cpp
index b2fd621..19e5117 100644
--- a/linden/indra/newview/llviewerregion.cpp
+++ b/linden/indra/newview/llviewerregion.cpp
@@ -1022,21 +1022,25 @@ void LLViewerRegion::updateCoarseLocations(LLMessageSystem* msg)
1022 U8 z_pos = 0; 1022 U8 z_pos = 0;
1023 1023
1024 U32 pos = 0x0; 1024 U32 pos = 0x0;
1025 1025
1026 LLUUID agent_id = LLUUID::null;
1027 1026
1028 S16 agent_index; 1027 S16 agent_index;
1029 S16 target_index; 1028 S16 target_index;
1030 msg->getS16Fast(_PREHASH_Index, _PREHASH_You, agent_index); 1029 msg->getS16Fast(_PREHASH_Index, _PREHASH_You, agent_index);
1031 msg->getS16Fast(_PREHASH_Index, _PREHASH_Prey, target_index); 1030 msg->getS16Fast(_PREHASH_Index, _PREHASH_Prey, target_index);
1032 1031
1032 BOOL has_agent_data = msg->has(_PREHASH_AgentData);
1033 S32 count = msg->getNumberOfBlocksFast(_PREHASH_Location); 1033 S32 count = msg->getNumberOfBlocksFast(_PREHASH_Location);
1034 for(S32 i = 0; i < count; i++) 1034 for(S32 i = 0; i < count; i++)
1035 { 1035 {
1036 msg->getU8Fast(_PREHASH_Location, _PREHASH_X, x_pos, i); 1036 msg->getU8Fast(_PREHASH_Location, _PREHASH_X, x_pos, i);
1037 msg->getU8Fast(_PREHASH_Location, _PREHASH_Y, y_pos, i); 1037 msg->getU8Fast(_PREHASH_Location, _PREHASH_Y, y_pos, i);
1038 msg->getU8Fast(_PREHASH_Location, _PREHASH_Z, z_pos, i); 1038 msg->getU8Fast(_PREHASH_Location, _PREHASH_Z, z_pos, i);
1039 msg->getUUIDFast(_PREHASH_AgentData, _PREHASH_AgentID, agent_id, i); 1039 LLUUID agent_id = LLUUID::null;
1040 if(has_agent_data)
1041 {
1042 msg->getUUIDFast(_PREHASH_AgentData, _PREHASH_AgentID, agent_id, i);
1043 }
1040 1044
1041 //llinfos << " object X: " << (S32)x_pos << " Y: " << (S32)y_pos 1045 //llinfos << " object X: " << (S32)x_pos << " Y: " << (S32)y_pos
1042 // << " Z: " << (S32)(z_pos * 4) 1046 // << " Z: " << (S32)(z_pos * 4)
@@ -1062,7 +1066,10 @@ void LLViewerRegion::updateCoarseLocations(LLMessageSystem* msg)
1062 pos <<= 8; 1066 pos <<= 8;
1063 pos |= z_pos; 1067 pos |= z_pos;
1064 mMapAvatars.put(pos); 1068 mMapAvatars.put(pos);
1065 mMapAvatarIDs.put(agent_id); 1069 if(has_agent_data)
1070 {
1071 mMapAvatarIDs.put(agent_id);
1072 }
1066 } 1073 }
1067 } 1074 }
1068} 1075}