@@ -179,7 +179,7 @@ public bool TryLoadObject(FileSystemItem filesystemItem, out UiLocoFile? uiLocoF
179
179
180
180
if ( ! OnlineCache . TryGetValue ( uniqueObjectId , out var locoObj ) )
181
181
{
182
- Logger . Debug ( $ "Didn't find object { filesystemItem . Name } with unique id { uniqueObjectId } in cache - downloading it") ;
182
+ Logger . Debug ( $ "Didn't find object { filesystemItem . Name } with unique id { uniqueObjectId } in cache - downloading it from { WebClient . BaseAddress } ") ;
183
183
locoObj = Task . Run ( async ( ) => await Client . GetObjectAsync ( WebClient , uniqueObjectId , true ) ) . Result ;
184
184
185
185
if ( locoObj == null )
@@ -194,32 +194,31 @@ public bool TryLoadObject(FileSystemItem filesystemItem, out UiLocoFile? uiLocoF
194
194
}
195
195
else if ( locoObj . OriginalBytes == null || locoObj . OriginalBytes . Length == 0 )
196
196
{
197
- Logger . Error ( $ "Unable to load object { filesystemItem . Name } with unique id { uniqueObjectId } from online - received no object data") ;
198
- return false ;
197
+ Logger . Warning ( $ "Unable to load object { filesystemItem . Name } with unique id { uniqueObjectId } from online - received no DAT object data") ;
199
198
}
200
199
201
- Logger . Error ( $ "Added object { filesystemItem . Name } with unique id { uniqueObjectId } to local cache") ;
200
+ Logger . Info ( $ "Added object { filesystemItem . Name } with unique id { uniqueObjectId } to local cache") ;
202
201
OnlineCache . Add ( uniqueObjectId , locoObj ) ;
203
202
}
204
203
else
205
204
{
206
205
Logger . Debug ( $ "Found object { filesystemItem . Name } with unique id { uniqueObjectId } in cache - reusing it") ;
207
206
}
208
207
209
- if ( locoObj . OriginalBytes == null )
210
- {
211
- Logger . Error ( $ "Received no data for { filesystemItem . Name } ") ;
212
- return false ;
213
- }
214
- var obj = SawyerStreamReader . LoadFullObjectFromStream ( Convert . FromBase64String ( locoObj . OriginalBytes ) , Logger , $ "{ filesystemItem . Filename } -{ filesystemItem . Name } ", true ) ;
215
- if ( obj == null )
208
+ if ( locoObj != null && locoObj . OriginalBytes ? . Length > 0 )
216
209
{
217
- Logger . Error ( $ "Unable to load { filesystemItem . Name } from the received data") ;
218
- return false ;
210
+ var obj = SawyerStreamReader . LoadFullObjectFromStream ( Convert . FromBase64String ( locoObj . OriginalBytes ) , Logger , $ "{ filesystemItem . Filename } -{ filesystemItem . Name } ", true ) ;
211
+ if ( obj == null )
212
+ {
213
+ Logger . Warning ( $ "Unable to load { filesystemItem . Name } from the received DAT object data") ;
214
+ }
215
+ else
216
+ {
217
+ fileInfo = obj ? . DatFileInfo ;
218
+ locoObject = obj ? . LocoObject ;
219
+ }
219
220
}
220
221
221
- fileInfo = obj . Value . DatFileInfo ;
222
- locoObject = obj . Value . LocoObject ;
223
222
metadata = new MetadataModel ( locoObj . OriginalName , locoObj . OriginalChecksum )
224
223
{
225
224
Description = locoObj . Description ,
@@ -233,9 +232,12 @@ public bool TryLoadObject(FileSystemItem filesystemItem, out UiLocoFile? uiLocoF
233
232
Licence = locoObj . Licence ,
234
233
} ;
235
234
236
- foreach ( var i in locoObject ? . G1Elements )
235
+ if ( locoObject != null )
237
236
{
238
- images . Add ( PaletteMap . ConvertG1ToRgba32Bitmap ( i ) ) ;
237
+ foreach ( var i in locoObject . G1Elements )
238
+ {
239
+ images . Add ( PaletteMap . ConvertG1ToRgba32Bitmap ( i ) ) ;
240
+ }
239
241
}
240
242
}
241
243
else
@@ -262,7 +264,7 @@ public bool TryLoadObject(FileSystemItem filesystemItem, out UiLocoFile? uiLocoF
262
264
return false ;
263
265
}
264
266
265
- if ( locoObject == null || fileInfo == null )
267
+ if ( locoObject == null && fileInfo == null && metadata == null && images == null )
266
268
{
267
269
Logger . Error ( $ "Unable to load { filesystemItem . Filename } ") ;
268
270
uiLocoFile = null ;
0 commit comments