File tree Expand file tree Collapse file tree 2 files changed +17
-1
lines changed Expand file tree Collapse file tree 2 files changed +17
-1
lines changed Original file line number Diff line number Diff line change @@ -1436,6 +1436,10 @@ private static async Task<List<XivDependencyRoot>> GetModdedRoots(string interna
1436
1436
/// <returns></returns>
1437
1437
public static XivDependencyRootInfo ExtractRootInfoFilenameOnly ( string filenameWithoutExtension )
1438
1438
{
1439
+ if ( String . IsNullOrEmpty ( filenameWithoutExtension ) )
1440
+ {
1441
+ return new XivDependencyRootInfo ( ) ;
1442
+ }
1439
1443
var regex = new Regex ( "([a-z])([0-9]{4})([a-z])([0-9]{4})" ) ;
1440
1444
var match = regex . Match ( filenameWithoutExtension ) ;
1441
1445
if ( ! match . Success )
Original file line number Diff line number Diff line change @@ -105,6 +105,7 @@ public static async Task<string> GetExtraSkeletonFile(string fullMdlPath)
105
105
var race = XivRaces . GetXivRace ( fullMdlPath . Substring ( 1 , 4 ) ) ;
106
106
107
107
return await GetExtraSkeletonFile ( root . Info , race ) ;
108
+
108
109
}
109
110
110
111
@@ -137,7 +138,18 @@ public static async Task<string> GetExtraSkeletonFile(XivDependencyRootInfo root
137
138
{
138
139
return parsedFile ;
139
140
}
140
- await ExtractAndParseSkel ( file ) ;
141
+
142
+ try
143
+ {
144
+ // In some cases, the extra skeleton doesn't actually exist, despite the
145
+ // game files saying it should. In these cases, SE actually intends to
146
+ // default to the base skel.
147
+ await ExtractAndParseSkel ( file ) ;
148
+ }
149
+ catch
150
+ {
151
+ return null ;
152
+ }
141
153
return parsedFile ;
142
154
}
143
155
You can’t perform that action at this time.
0 commit comments