aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Capabilities/Caps.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Framework/Capabilities/Caps.cs')
-rw-r--r--OpenSim/Framework/Capabilities/Caps.cs21
1 files changed, 13 insertions, 8 deletions
diff --git a/OpenSim/Framework/Capabilities/Caps.cs b/OpenSim/Framework/Capabilities/Caps.cs
index 1f1ac78..74c6ab0 100644
--- a/OpenSim/Framework/Capabilities/Caps.cs
+++ b/OpenSim/Framework/Capabilities/Caps.cs
@@ -46,7 +46,7 @@ namespace OpenSim.Framework.Capabilities
46 46
47 public delegate UUID UpdateItem(UUID itemID, byte[] data); 47 public delegate UUID UpdateItem(UUID itemID, byte[] data);
48 48
49 public delegate void UpdateTaskScript(UUID itemID, UUID primID, bool isScriptRunning, byte[] data); 49 public delegate void UpdateTaskScript(UUID itemID, UUID primID, bool isScriptRunning, byte[] data, ref ArrayList errors);
50 50
51 public delegate void NewInventoryItem(UUID userID, InventoryItemBase item); 51 public delegate void NewInventoryItem(UUID userID, InventoryItemBase item);
52 52
@@ -54,7 +54,7 @@ namespace OpenSim.Framework.Capabilities
54 54
55 public delegate UUID ItemUpdatedCallback(UUID userID, UUID itemID, byte[] data); 55 public delegate UUID ItemUpdatedCallback(UUID userID, UUID itemID, byte[] data);
56 56
57 public delegate void TaskScriptUpdatedCallback(UUID userID, UUID itemID, UUID primID, 57 public delegate ArrayList TaskScriptUpdatedCallback(UUID userID, UUID itemID, UUID primID,
58 bool isScriptRunning, byte[] data); 58 bool isScriptRunning, byte[] data);
59 59
60 public delegate InventoryCollection FetchInventoryDescendentsCAPS(UUID agentID, UUID folderID, UUID ownerID, 60 public delegate InventoryCollection FetchInventoryDescendentsCAPS(UUID agentID, UUID folderID, UUID ownerID,
@@ -940,11 +940,13 @@ namespace OpenSim.Framework.Capabilities
940 /// <param name="primID">Prim containing item to update</param> 940 /// <param name="primID">Prim containing item to update</param>
941 /// <param name="isScriptRunning">Signals whether the script to update is currently running</param> 941 /// <param name="isScriptRunning">Signals whether the script to update is currently running</param>
942 /// <param name="data">New asset data</param> 942 /// <param name="data">New asset data</param>
943 public void TaskScriptUpdated(UUID itemID, UUID primID, bool isScriptRunning, byte[] data) 943 public void TaskScriptUpdated(UUID itemID, UUID primID, bool isScriptRunning, byte[] data, ref ArrayList errors)
944 { 944 {
945 if (TaskScriptUpdatedCall != null) 945 if (TaskScriptUpdatedCall != null)
946 { 946 {
947 TaskScriptUpdatedCall(m_agentID, itemID, primID, isScriptRunning, data); 947 ArrayList e = TaskScriptUpdatedCall(m_agentID, itemID, primID, isScriptRunning, data);
948 foreach (Object item in e)
949 errors.Add(item);
948 } 950 }
949 } 951 }
950 952
@@ -1174,17 +1176,20 @@ namespace OpenSim.Framework.Capabilities
1174// data, path, param)); 1176// data, path, param));
1175 1177
1176 string res = String.Empty; 1178 string res = String.Empty;
1177 LLSDTaskInventoryUploadComplete uploadComplete = new LLSDTaskInventoryUploadComplete(); 1179 LLSDTaskScriptUploadComplete uploadComplete = new LLSDTaskScriptUploadComplete();
1178 1180
1181 ArrayList errors = new ArrayList();
1179 handlerUpdateTaskScript = OnUpLoad; 1182 handlerUpdateTaskScript = OnUpLoad;
1180 if (handlerUpdateTaskScript != null) 1183 if (handlerUpdateTaskScript != null)
1181 { 1184 {
1182 handlerUpdateTaskScript(inventoryItemID, primID, isScriptRunning, data); 1185 handlerUpdateTaskScript(inventoryItemID, primID, isScriptRunning, data, ref errors);
1183 } 1186 }
1184 1187
1185 uploadComplete.item_id = inventoryItemID; 1188 uploadComplete.new_asset = inventoryItemID;
1186 uploadComplete.task_id = primID; 1189 uploadComplete.compiled = errors.Count > 0 ? false : true;
1187 uploadComplete.state = "complete"; 1190 uploadComplete.state = "complete";
1191 uploadComplete.errors = new OSDArray();
1192 uploadComplete.errors.Array = errors;
1188 1193
1189 res = LLSDHelpers.SerialiseLLSDReply(uploadComplete); 1194 res = LLSDHelpers.SerialiseLLSDReply(uploadComplete);
1190 1195