@@ -68,7 +68,7 @@ fn main() {
6868 . init ( ) ;
6969
7070 let params = Cli :: parse ( ) ;
71- let data = ConfigFile :: default ( ) ;
71+ let data = ConfigFile :: from_file ( & params . config_file . unwrap ( ) ) . expect ( "Invalid config file" ) ;
7272 match params. command {
7373 Commands :: Run {
7474 data_dir,
@@ -82,16 +82,17 @@ fn main() {
8282 } => {
8383 let data_dir = get_one_or_another (
8484 data_dir,
85- dirs:: home_dir ( ) . map ( |x : PathBuf | x. to_str ( ) . unwrap_or_default ( ) . to_owned ( ) ) ,
85+ dirs:: home_dir ( ) . map ( |x : PathBuf | {
86+ x. to_str ( ) . unwrap_or_default ( ) . to_owned ( ) + "/.utreexo_wallet/"
87+ } ) ,
8688 "wallet" . into ( ) ,
8789 ) ;
8890 debug ! ( "Loading wallet" ) ;
8991 let mut wallet = load_wallet ( & data_dir) ;
9092 wallet. setup ( ) . expect ( "Could not initialize wallet" ) ;
9193 debug ! ( "Done loading wallet" ) ;
92-
9394 let result = setup_wallet (
94- get_one_or_another ( wallet_xpub, data. wallet . xpubs , vec ! [ ] ) ,
95+ get_both_vec ( wallet_xpub, data. wallet . xpubs ) ,
9596 & mut wallet,
9697 params. network . clone ( ) ,
9798 ) ;
@@ -198,6 +199,7 @@ fn setup_wallet<D: AddressCacheDatabase>(
198199 wallet : & mut AddressCache < D > ,
199200 network : cli:: Network ,
200201) -> Result < ( ) , crate :: error:: Error > {
202+ println ! ( "{:?}" , xpubs) ;
201203 if xpubs. is_empty ( ) {
202204 return Ok ( ( ) ) ;
203205 }
@@ -265,3 +267,14 @@ where
265267
266268 default
267269}
270+
271+ fn get_both_vec < T > ( a : Option < Vec < T > > , b : Option < Vec < T > > ) -> Vec < T > {
272+ let mut result: Vec < T > = vec ! [ ] ;
273+ if let Some ( a) = a {
274+ result. extend ( a. into_iter ( ) ) ;
275+ }
276+ if let Some ( b) = b {
277+ result. extend ( b. into_iter ( ) ) ;
278+ }
279+ result
280+ }
0 commit comments