@@ -270,10 +270,10 @@ public static Datamodel Load(byte[] data, DeferredMode defer_mode = DeferredMode
270270 /// <param name="data">The input byte array.</param>
271271 /// <param name="defer_mode">How to handle deferred loading.</param>
272272 /// <typeparam name="T">Type hint for what the Root of this datamodel should be when using reflection</param>
273- public static Datamodel Load < T > ( byte [ ] data , DeferredMode defer_mode = DeferredMode . Automatic , ReflectionParams ? reflectionParams = null )
273+ public static Datamodel Load < T > ( byte [ ] data , ReflectionParams ? reflectionParams = null )
274274 where T : Element
275275 {
276- return Load_Internal < T > ( new MemoryStream ( data , true ) , Assembly . GetCallingAssembly ( ) , defer_mode , reflectionParams ) ;
276+ return Load_Internal < T > ( new MemoryStream ( data , true ) , Assembly . GetCallingAssembly ( ) , DeferredMode . Disabled , reflectionParams ) ;
277277 }
278278
279279 /// <summary>
@@ -296,25 +296,15 @@ public static Datamodel Load(string path, DeferredMode defer_mode = DeferredMode
296296 }
297297 }
298298 /// <summary>
299- /// Loads a Datamodel from a file path.
299+ /// Loads a Datamodel from a file path, unserializing the Root as <typeparamref name="T"/> .
300300 /// </summary>
301301 /// <param name="path">The source file path.</param>
302- /// <param name="defer_mode">How to handle deferred loading.</param>
303302 /// <typeparam name="T">Type hint for what the Root of this datamodel should be when using reflection</param>
304- public static Datamodel Load < T > ( string path , DeferredMode defer_mode = DeferredMode . Automatic , ReflectionParams ? reflectionParams = null )
303+ public static Datamodel Load < T > ( string path , ReflectionParams ? reflectionParams = null )
305304 where T : Element
306305 {
307- var stream = File . OpenRead ( path ) ;
308- Datamodel ? dm = null ;
309- try
310- {
311- dm = Load_Internal < T > ( stream , Assembly . GetCallingAssembly ( ) , defer_mode , reflectionParams ) ;
312- return dm ;
313- }
314- finally
315- {
316- if ( defer_mode == DeferredMode . Disabled || ( dm != null && dm . Codec == null ) ) stream . Dispose ( ) ;
317- }
306+ using var stream = File . OpenRead ( path ) ;
307+ return Load_Internal < T > ( stream , Assembly . GetCallingAssembly ( ) , DeferredMode . Disabled , reflectionParams ) ;
318308 }
319309
320310 private static Datamodel Load_Internal < T > ( Stream stream , Assembly callingAssembly , DeferredMode defer_mode = DeferredMode . Automatic , ReflectionParams ? reflectionParams = null )
0 commit comments