@@ -18,26 +18,32 @@ public static function create($saveHandler, array $config = array())
1818 {
1919 switch ($ saveHandler ) {
2020 case Profiler::SAVER_FILE :
21- $ saverConfig = array_merge ( array (
21+ $ defaultConfig = array (
2222 'filename ' => null ,
23- ), isset ($ config ['save.handler.file ' ]) ? $ config ['save.handler.file ' ] : array ());
23+ );
24+ $ userConfig = isset ($ config ['save.handler.file ' ]) && is_array ($ config ['save.handler.file ' ]) ? $ config ['save.handler.file ' ] : array ();
25+ $ saverConfig = array_merge ($ defaultConfig , $ userConfig );
2426 $ saver = new Saver \FileSaver ($ saverConfig ['filename ' ]);
2527 break ;
2628
2729 case Profiler::SAVER_UPLOAD :
28- $ saverConfig = array_merge ( array (
30+ $ defaultConfig = array (
2931 'uri ' => null ,
3032 'token ' => null ,
3133 'timeout ' => 3 ,
32- ), isset ($ config ['save.handler.upload ' ]) ? $ config ['save.handler.upload ' ] : array ());
34+ );
35+ $ userConfig = isset ($ config ['save.handler.upload ' ]) && is_array ($ config ['save.handler.upload ' ]) ? $ config ['save.handler.upload ' ] : array ();
36+ $ saverConfig = array_merge ($ defaultConfig , $ userConfig );
3337 $ saver = new Saver \UploadSaver ($ saverConfig ['uri ' ], $ saverConfig ['token ' ], $ saverConfig ['timeout ' ]);
3438 break ;
3539
3640 case Profiler::SAVER_STACK :
37- $ saverConfig = array_merge ( array (
41+ $ defaultConfig = array (
3842 'savers ' => array (),
3943 'saveAll ' => false ,
40- ), isset ($ config ['save.handler.stack ' ]) ? $ config ['save.handler.stack ' ] : array ());
44+ );
45+ $ userConfig = isset ($ config ['save.handler.stack ' ]) && is_array ($ config ['save.handler.stack ' ]) ? $ config ['save.handler.stack ' ] : array ();
46+ $ saverConfig = array_merge ($ defaultConfig , $ userConfig );
4147
4248 $ savers = array ();
4349 foreach ($ saverConfig ['savers ' ] as $ saver ) {
0 commit comments