Ver código fonte

Add more information to scene application failure

habeebweeb 4 anos atrás
pai
commit
6158a3709e

+ 9 - 5
COM3D2.MeidoPhotoStudio.Plugin/MeidoPhotoStudio/MeidoPhotoStudio.cs

@@ -135,6 +135,10 @@ namespace COM3D2.MeidoPhotoStudio.Plugin
 
             if (sceneBinary == null) return;
 
+
+            string header = string.Empty;
+            string previousHeader = string.Empty;
+
             using (MemoryStream memoryStream = new MemoryStream(sceneBinary))
             using (BinaryReader binaryReader = new BinaryReader(memoryStream, System.Text.Encoding.UTF8))
             {
@@ -154,9 +158,6 @@ namespace COM3D2.MeidoPhotoStudio.Plugin
 
                     binaryReader.ReadInt32(); // Number of Maids
 
-                    string previousHeader = string.Empty;
-                    string header;
-
                     while ((header = binaryReader.ReadString()) != "END")
                     {
                         switch (header)
@@ -179,14 +180,17 @@ namespace COM3D2.MeidoPhotoStudio.Plugin
                             case EffectManager.header:
                                 effectManager.Deserialize(binaryReader);
                                 break;
-                            default: throw new Exception($"Unknown header '{header}'. Last {previousHeader}");
+                            default: throw new Exception($"Unknown header '{header}'");
                         }
                         previousHeader = header;
                     }
                 }
                 catch (Exception e)
                 {
-                    Utility.LogError($"Failed to deserialize scene '{filePath}' because {e.Message}");
+                    Utility.LogError(
+                        $"Failed to deserialize scene '{filePath}' because {e.Message}"
+                        + $"\nCurrent header: '{header}'. Last header: '{previousHeader}'"
+                    );
                     return;
                 }
             }