diff options
Diffstat (limited to 'OpenSim/Services')
-rw-r--r-- | OpenSim/Services/Interfaces/IAvatarService.cs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/OpenSim/Services/Interfaces/IAvatarService.cs b/OpenSim/Services/Interfaces/IAvatarService.cs index 863fd93..606e82c 100644 --- a/OpenSim/Services/Interfaces/IAvatarService.cs +++ b/OpenSim/Services/Interfaces/IAvatarService.cs | |||
@@ -174,11 +174,18 @@ namespace OpenSim.Services.Interfaces | |||
174 | 174 | ||
175 | // Attachments | 175 | // Attachments |
176 | List<AvatarAttachment> attachments = appearance.GetAttachments(); | 176 | List<AvatarAttachment> attachments = appearance.GetAttachments(); |
177 | Dictionary<int, List<string>> atts = new Dictionary<int, List<string>>(); | ||
177 | foreach (AvatarAttachment attach in attachments) | 178 | foreach (AvatarAttachment attach in attachments) |
178 | { | 179 | { |
179 | if (attach.ItemID != UUID.Zero) | 180 | if (attach.ItemID != UUID.Zero) |
180 | Data["_ap_" + attach.AttachPoint] = attach.ItemID.ToString(); | 181 | { |
182 | if (!atts.ContainsKey(attach.AttachPoint)) | ||
183 | atts[attach.AttachPoint] = new List<string>(); | ||
184 | atts[attach.AttachPoint].Add(attach.ItemID.ToString()); | ||
185 | } | ||
181 | } | 186 | } |
187 | foreach (KeyValuePair<int, List<string>> kvp in atts) | ||
188 | Data["_ap_" + kvp.Key] = string.Join(",", kvp.Value.ToArray()); | ||
182 | } | 189 | } |
183 | 190 | ||
184 | public AvatarAppearance ToAvatarAppearance() | 191 | public AvatarAppearance ToAvatarAppearance() |