diff options
author | Justin Clark-Casey (justincc) | 2011-04-05 18:24:23 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2011-04-05 18:24:23 +0100 |
commit | 3d400fc663104b6d899ee37afeb7f83c68af45d4 (patch) | |
tree | 8ac567ed2c9a7f02dc43e2d52d837f7d75dd9f69 /OpenSim | |
parent | Handle the client's parcel info requests asynchronously rather than synchrono... (diff) | |
download | opensim-SC-3d400fc663104b6d899ee37afeb7f83c68af45d4.zip opensim-SC-3d400fc663104b6d899ee37afeb7f83c68af45d4.tar.gz opensim-SC-3d400fc663104b6d899ee37afeb7f83c68af45d4.tar.bz2 opensim-SC-3d400fc663104b6d899ee37afeb7f83c68af45d4.tar.xz |
If an object is selected, then don't include it in owner/group/others prim counts.
This fixes the total prim count that the viewer displays when prims are selected - it appears to ignore the total that we pass it and adds up the counts separately.
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs b/OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs index bc140ae..7a04eb1 100644 --- a/OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs | |||
@@ -206,25 +206,29 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
206 | else | 206 | else |
207 | parcelCounts.Users[obj.OwnerID] = partCount; | 207 | parcelCounts.Users[obj.OwnerID] = partCount; |
208 | 208 | ||
209 | if (landData.IsGroupOwned) | 209 | if (obj.IsSelected) |
210 | { | 210 | { |
211 | if (obj.OwnerID == landData.GroupID) | 211 | parcelCounts.Selected += partCount; |
212 | parcelCounts.Owner += partCount; | ||
213 | else if (landData.GroupID != UUID.Zero && obj.GroupID == landData.GroupID) | ||
214 | parcelCounts.Group += partCount; | ||
215 | else | ||
216 | parcelCounts.Others += partCount; | ||
217 | } | 212 | } |
218 | else | 213 | else |
219 | { | 214 | { |
220 | if (obj.OwnerID == landData.OwnerID) | 215 | if (landData.IsGroupOwned) |
221 | parcelCounts.Owner += partCount; | 216 | { |
217 | if (obj.OwnerID == landData.GroupID) | ||
218 | parcelCounts.Owner += partCount; | ||
219 | else if (landData.GroupID != UUID.Zero && obj.GroupID == landData.GroupID) | ||
220 | parcelCounts.Group += partCount; | ||
221 | else | ||
222 | parcelCounts.Others += partCount; | ||
223 | } | ||
222 | else | 224 | else |
223 | parcelCounts.Others += partCount; | 225 | { |
226 | if (obj.OwnerID == landData.OwnerID) | ||
227 | parcelCounts.Owner += partCount; | ||
228 | else | ||
229 | parcelCounts.Others += partCount; | ||
230 | } | ||
224 | } | 231 | } |
225 | |||
226 | if (obj.IsSelected) | ||
227 | parcelCounts.Selected += partCount; | ||
228 | } | 232 | } |
229 | } | 233 | } |
230 | 234 | ||
@@ -380,6 +384,7 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
380 | count = counts.Owner; | 384 | count = counts.Owner; |
381 | count += counts.Group; | 385 | count += counts.Group; |
382 | count += counts.Others; | 386 | count += counts.Others; |
387 | count += counts.Selected; | ||
383 | } | 388 | } |
384 | } | 389 | } |
385 | 390 | ||