@@ -7,10 +7,9 @@ use crossbeam_channel::{bounded, Receiver, RecvTimeoutError};
77
88use crate :: background:: BackgroundHandle ;
99use crate :: compression:: BackgroundCompactor ;
10- use crate :: filesdb:: FilesDb ;
1110use crate :: folder:: { FileKind , FolderInfo , FolderScan } ;
1211use crate :: gui:: { GuiRequest , GuiWrapper } ;
13- use crate :: settings ;
12+ use crate :: persistence :: { config , pathdb } ;
1413
1514pub struct Backend < T > {
1615 gui : GuiWrapper < T > ,
@@ -78,9 +77,9 @@ impl<T> Backend<T> {
7877 }
7978
8079 fn scan_loop ( & mut self , path : PathBuf ) {
81- let settings = settings :: get ( ) ;
80+ let excludes = config ( ) . read ( ) . unwrap ( ) . current ( ) . globset ( ) . expect ( "globs" ) ;
8281
83- let scanner = FolderScan :: new ( path, settings . globset ( ) . expect ( "globs" ) ) ;
82+ let scanner = FolderScan :: new ( path, excludes ) ;
8483 let task = BackgroundHandle :: spawn ( scanner) ;
8584 let start = Instant :: now ( ) ;
8685
@@ -143,7 +142,7 @@ impl<T> Backend<T> {
143142 let ( send_file, send_file_rx) = bounded :: < Option < ( PathBuf , u64 ) > > ( 1 ) ;
144143 let ( recv_result_tx, recv_result) = bounded :: < ( PathBuf , io:: Result < bool > ) > ( 1 ) ;
145144
146- let compression = Some ( settings :: get ( ) . compression ) ;
145+ let compression = Some ( config ( ) . read ( ) . unwrap ( ) . current ( ) . compression ) ;
147146 let compactor = BackgroundCompactor :: new ( compression, send_file_rx, recv_result_tx) ;
148147 let task = BackgroundHandle :: spawn ( compactor) ;
149148 let start = Instant :: now ( ) ;
@@ -160,7 +159,8 @@ impl<T> Backend<T> {
160159 let old_size = folder. physical_size ;
161160 let compressible_size = folder. summary ( ) . compressible . physical_size ;
162161
163- let mut incompressible = FilesDb :: borrow ( ) ;
162+ let incompressible = pathdb ( ) ;
163+ let mut incompressible = incompressible. write ( ) . unwrap ( ) ;
164164 let _ = incompressible. load ( ) ;
165165
166166 self . gui . compacting ( ) ;
@@ -303,13 +303,13 @@ impl<T> Backend<T> {
303303 let _ = incompressible. save ( ) ;
304304
305305 let new_size = folder. physical_size ;
306- let s = settings :: get ( ) ;
306+ let decimal = config ( ) . read ( ) . unwrap ( ) . current ( ) . decimal ;
307307
308308 let msg = format ! (
309309 "Compacted {} in {} files, saving {} in {:.2?}" ,
310- format_size( compressible_size, s . decimal) ,
310+ format_size( compressible_size, decimal) ,
311311 done,
312- format_size( old_size - new_size, s . decimal) ,
312+ format_size( old_size - new_size, decimal) ,
313313 start. elapsed( )
314314 ) ;
315315
@@ -459,7 +459,10 @@ impl<T> Backend<T> {
459459 let msg = format ! (
460460 "Expanded {} files wasting {} in {:.2?}" ,
461461 done,
462- format_size( new_size - old_size, settings:: get( ) . decimal) ,
462+ format_size(
463+ new_size - old_size,
464+ config( ) . read( ) . unwrap( ) . current( ) . decimal
465+ ) ,
463466 start. elapsed( )
464467 ) ;
465468
0 commit comments