diff options
author | Melanie | 2012-08-24 00:07:17 +0100 |
---|---|---|
committer | Melanie | 2012-08-24 00:07:17 +0100 |
commit | 783773a0c075893392847d9f16df3485985fa36a (patch) | |
tree | 6a03e04e549ce05541f6d64563533cb6d4ee3272 /OpenSim/Region/ScriptEngine/XEngine | |
parent | Merge branch 'master' into careminster (diff) | |
parent | If a script state save fails for some reason on shutdown/region removal, get ... (diff) | |
download | opensim-SC-783773a0c075893392847d9f16df3485985fa36a.zip opensim-SC-783773a0c075893392847d9f16df3485985fa36a.tar.gz opensim-SC-783773a0c075893392847d9f16df3485985fa36a.tar.bz2 opensim-SC-783773a0c075893392847d9f16df3485985fa36a.tar.xz |
Merge branch 'master' into careminster
Conflicts:
OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs index f5ad990..2d17977 100644 --- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs +++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | |||
@@ -656,7 +656,19 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
656 | if (m_Assemblies.ContainsKey(instance.AssetID)) | 656 | if (m_Assemblies.ContainsKey(instance.AssetID)) |
657 | { | 657 | { |
658 | string assembly = m_Assemblies[instance.AssetID]; | 658 | string assembly = m_Assemblies[instance.AssetID]; |
659 | instance.SaveState(assembly); | 659 | |
660 | try | ||
661 | { | ||
662 | instance.SaveState(assembly); | ||
663 | } | ||
664 | catch (Exception e) | ||
665 | { | ||
666 | m_log.Error( | ||
667 | string.Format( | ||
668 | "[XEngine]: Failed final state save for script {0}.{1}, item UUID {2}, prim UUID {3} in {4}. Exception ", | ||
669 | instance.PrimName, instance.ScriptName, instance.ItemID, instance.ObjectID, World.Name) | ||
670 | , e); | ||
671 | } | ||
660 | } | 672 | } |
661 | 673 | ||
662 | // Clear the event queue and abort the instance thread | 674 | // Clear the event queue and abort the instance thread |
@@ -778,7 +790,18 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
778 | assembly = m_Assemblies[i.AssetID]; | 790 | assembly = m_Assemblies[i.AssetID]; |
779 | 791 | ||
780 | 792 | ||
781 | i.SaveState(assembly); | 793 | try |
794 | { | ||
795 | i.SaveState(assembly); | ||
796 | } | ||
797 | catch (Exception e) | ||
798 | { | ||
799 | m_log.Error( | ||
800 | string.Format( | ||
801 | "[XEngine]: Failed to save state of script {0}.{1}, item UUID {2}, prim UUID {3} in {4}. Exception ", | ||
802 | i.PrimName, i.ScriptName, i.ItemID, i.ObjectID, World.Name) | ||
803 | , e); | ||
804 | } | ||
782 | } | 805 | } |
783 | 806 | ||
784 | instances.Clear(); | 807 | instances.Clear(); |