diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs b/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs index 49d6abe..734d4d5 100644 --- a/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs +++ b/OpenSim/Region/ScriptEngine/Shared/CodeTools/Compiler.cs | |||
@@ -106,6 +106,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools | |||
106 | // Get some config | 106 | // Get some config |
107 | WriteScriptSourceToDebugFile = m_scriptEngine.Config.GetBoolean("WriteScriptSourceToDebugFile", false); | 107 | WriteScriptSourceToDebugFile = m_scriptEngine.Config.GetBoolean("WriteScriptSourceToDebugFile", false); |
108 | CompileWithDebugInformation = m_scriptEngine.Config.GetBoolean("CompileWithDebugInformation", true); | 108 | CompileWithDebugInformation = m_scriptEngine.Config.GetBoolean("CompileWithDebugInformation", true); |
109 | bool DeleteScriptsOnStartup = m_scriptEngine.Config.GetBoolean("DeleteScriptsOnStartup", true); | ||
109 | 110 | ||
110 | // Get file prefix from scriptengine name and make it file system safe: | 111 | // Get file prefix from scriptengine name and make it file system safe: |
111 | FilePrefix = "CommonCompiler"; | 112 | FilePrefix = "CommonCompiler"; |
@@ -114,11 +115,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools | |||
114 | FilePrefix = FilePrefix.Replace(c, '_'); | 115 | FilePrefix = FilePrefix.Replace(c, '_'); |
115 | } | 116 | } |
116 | 117 | ||
117 | // First time we start? Delete old files | ||
118 | if (in_startup) | 118 | if (in_startup) |
119 | { | 119 | { |
120 | in_startup = false; | 120 | in_startup = false; |
121 | DeleteOldFiles(); | 121 | CreateScriptsDirectory(); |
122 | |||
123 | // First time we start? Delete old files | ||
124 | if (DeleteScriptsOnStartup) | ||
125 | DeleteOldFiles(); | ||
122 | } | 126 | } |
123 | 127 | ||
124 | // Map name and enum type of our supported languages | 128 | // Map name and enum type of our supported languages |
@@ -187,11 +191,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools | |||
187 | } | 191 | } |
188 | 192 | ||
189 | /// <summary> | 193 | /// <summary> |
190 | /// Delete old script files | 194 | /// Create the directory where compiled scripts are stored. |
191 | /// </summary> | 195 | /// </summary> |
192 | private void DeleteOldFiles() | 196 | private void CreateScriptsDirectory() |
193 | { | 197 | { |
194 | // CREATE FOLDER IF IT DOESNT EXIST | ||
195 | if (!Directory.Exists(ScriptEnginesPath)) | 198 | if (!Directory.Exists(ScriptEnginesPath)) |
196 | { | 199 | { |
197 | try | 200 | try |
@@ -218,7 +221,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools | |||
218 | m_scriptEngine.World.RegionInfo.RegionID.ToString()) + "\": " + ex.ToString()); | 221 | m_scriptEngine.World.RegionInfo.RegionID.ToString()) + "\": " + ex.ToString()); |
219 | } | 222 | } |
220 | } | 223 | } |
224 | } | ||
221 | 225 | ||
226 | /// <summary> | ||
227 | /// Delete old script files | ||
228 | /// </summary> | ||
229 | private void DeleteOldFiles() | ||
230 | { | ||
222 | foreach (string file in Directory.GetFiles(Path.Combine(ScriptEnginesPath, | 231 | foreach (string file in Directory.GetFiles(Path.Combine(ScriptEnginesPath, |
223 | m_scriptEngine.World.RegionInfo.RegionID.ToString()), FilePrefix + "_compiled*")) | 232 | m_scriptEngine.World.RegionInfo.RegionID.ToString()), FilePrefix + "_compiled*")) |
224 | { | 233 | { |