]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
mod_managed: not crash when cannot remove shadow directory (this sometimes happens...
authorArtur Kraev <ravenox@gmail.com>
Sun, 2 Nov 2014 21:24:49 +0000 (00:24 +0300)
committerArtur Kraev <ravenox@gmail.com>
Sun, 2 Nov 2014 21:24:49 +0000 (00:24 +0300)
src/mod/languages/mod_managed/managed/Loader.cs

index c655c9c8672d5b6edb9232563dddb3ab71536252..a3d48fd1d1ea26b56f445c44691197a80fece0e6 100644 (file)
@@ -64,13 +64,23 @@ namespace FreeSWITCH {
         public static bool Load() {\r
             managedDir = Path.Combine(Native.freeswitch.SWITCH_GLOBAL_dirs.mod_dir, "managed");\r
             shadowDir = Path.Combine(managedDir, "shadow");\r
-            if (Directory.Exists(shadowDir)) {\r
-                Directory.Delete(shadowDir, true);\r
+            if (Directory.Exists(shadowDir)) \r
+            {\r
+                try\r
+                {\r
+                    Directory.Delete(shadowDir, true);\r
+                }\r
+                catch (Exception ex)\r
+                {\r
+                    Log.WriteLine(LogLevel.Warning, "Cannot delete shadow directory: {0}", ex);\r
+                }\r
+\r
                 Directory.CreateDirectory(shadowDir);\r
             }\r
 \r
             Log.WriteLine(LogLevel.Debug, "FreeSWITCH.Managed loader is starting with directory '{0}'.", managedDir);\r
-            if (!Directory.Exists(managedDir)) {\r
+            if (!Directory.Exists(managedDir))\r
+            {\r
                 Log.WriteLine(LogLevel.Error, "Managed directory not found: {0}", managedDir);\r
                 return false;\r
             }\r