1+ import 'dart:io' ;
2+
13import 'package:files/backend/database/helper.dart' ;
24import 'package:files/backend/database/model.dart' ;
35import 'package:files/backend/folder_provider.dart' ;
@@ -48,7 +50,7 @@ class _ProvidersSingleton {
4850 final dir = await getApplicationDocumentsDirectory ();
4951 _isar = await Isar .open (
5052 [EntityStatSchema ],
51- directory: p. join (dir.path, 'isar' ),
53+ directory: isarPath (dir),
5254 );
5355 _folderProvider = await FolderProvider .init ();
5456 _helper = EntityStatCacheHelper ();
@@ -63,17 +65,21 @@ class _ProvidersSingleton {
6365 _cacheProxy = null ;
6466 _inited = false ;
6567 }
68+
69+ String isarPath (Directory dir) {
70+ final String path = p.join (dir.path, 'isar' );
71+ if (! Directory (path).existsSync ()) Directory (path).create ();
72+ return path;
73+ }
6674}
6775
6876Future <void > initProviders () async => _ProvidersSingleton .instance._init ();
6977
70- Future <void > disposeProviders () async =>
71- _ProvidersSingleton .instance._dispose ();
78+ Future <void > disposeProviders () async => _ProvidersSingleton .instance._dispose ();
7279
7380Isar get isar => _ProvidersSingleton .instance.isar;
7481
75- FolderProvider get folderProvider =>
76- _ProvidersSingleton .instance.folderProvider;
82+ FolderProvider get folderProvider => _ProvidersSingleton .instance.folderProvider;
7783
7884EntityStatCacheHelper get helper => _ProvidersSingleton .instance.helper;
7985
0 commit comments