@@ -295,6 +295,25 @@ static umf_result_t file_initialize(const void *params, void **provider) {
295
295
296
296
file_provider -> coarse = coarse ;
297
297
298
+ * provider = file_provider ;
299
+ return UMF_RESULT_SUCCESS ;
300
+
301
+ err_close_fd :
302
+ utils_close_fd (file_provider -> fd );
303
+ err_free_file_provider :
304
+ umf_ba_global_free (file_provider );
305
+ return ret ;
306
+ }
307
+
308
+ static umf_result_t file_post_initialize (void * provider ) {
309
+ umf_result_t ret = UMF_RESULT_SUCCESS ;
310
+ file_memory_provider_t * file_provider = provider ;
311
+
312
+ if (file_provider == NULL ) {
313
+ LOG_ERR ("file provider is NULL" );
314
+ return UMF_RESULT_ERROR_INVALID_ARGUMENT ;
315
+ }
316
+
298
317
if (utils_mutex_init (& file_provider -> lock ) == NULL ) {
299
318
LOG_ERR ("lock init failed" );
300
319
ret = UMF_RESULT_ERROR_UNKNOWN ;
@@ -315,20 +334,14 @@ static umf_result_t file_initialize(const void *params, void **provider) {
315
334
goto err_delete_fd_offset_map ;
316
335
}
317
336
318
- * provider = file_provider ;
319
-
320
337
return UMF_RESULT_SUCCESS ;
321
338
322
- err_delete_fd_offset_map :
323
- critnib_delete (file_provider -> fd_offset_map );
324
- err_mutex_destroy_not_free :
325
- utils_mutex_destroy_not_free (& file_provider -> lock );
326
339
err_coarse_delete :
327
340
coarse_delete (file_provider -> coarse );
328
- err_close_fd :
329
- utils_close_fd ( file_provider -> fd );
330
- err_free_file_provider :
331
- umf_ba_global_free (file_provider );
341
+ err_mutex_destroy_not_free :
342
+ utils_mutex_destroy_not_free ( & file_provider -> lock );
343
+ err_delete_fd_offset_map :
344
+ critnib_delete (file_provider -> fd_offset_map );
332
345
return ret ;
333
346
}
334
347
@@ -916,12 +929,6 @@ static umf_result_t file_free(void *provider, void *ptr, size_t size) {
916
929
return ret ;
917
930
}
918
931
919
- static umf_result_t file_post_initialize (void * provider ) {
920
- (void )provider ;
921
- // For initial version, just return success
922
- return UMF_RESULT_SUCCESS ;
923
- }
924
-
925
932
static umf_memory_provider_ops_t UMF_FILE_MEMORY_PROVIDER_OPS = {
926
933
.version = UMF_PROVIDER_OPS_VERSION_CURRENT ,
927
934
.initialize = file_initialize ,
0 commit comments