@@ -26,38 +26,34 @@ pub fn get_dbpath_for_term(term: &str) -> Option<PathBuf> {
26
26
} ;
27
27
28
28
// Find search directory
29
- match env:: var_os ( "TERMINFO" ) {
30
- Some ( dir) => dirs_to_search. push ( PathBuf :: from ( dir) ) ,
31
- None => {
32
- if let Some ( mut homedir) = env:: home_dir ( ) {
33
- // ncurses compatibility;
34
- homedir. push ( ".terminfo" ) ;
35
- dirs_to_search. push ( homedir)
36
- }
37
- match env:: var ( "TERMINFO_DIRS" ) {
38
- Ok ( dirs) => {
39
- for i in dirs. split ( ':' ) {
40
- if i == "" {
41
- dirs_to_search. push ( PathBuf :: from ( "/usr/share/terminfo" ) ) ;
42
- } else {
43
- dirs_to_search. push ( PathBuf :: from ( i) ) ;
44
- }
45
- }
46
- }
47
- // Found nothing in TERMINFO_DIRS, use the default paths:
48
- // According to /etc/terminfo/README, after looking at
49
- // ~/.terminfo, ncurses will search /etc/terminfo, then
50
- // /lib/terminfo, and eventually /usr/share/terminfo.
51
- // On Haiku the database can be found at /boot/system/data/terminfo
52
- Err ( ..) => {
53
- dirs_to_search. push ( PathBuf :: from ( "/etc/terminfo" ) ) ;
54
- dirs_to_search. push ( PathBuf :: from ( "/lib/terminfo" ) ) ;
55
- dirs_to_search. push ( PathBuf :: from ( "/usr/share/terminfo" ) ) ;
56
- dirs_to_search. push ( PathBuf :: from ( "/boot/system/data/terminfo" ) ) ;
57
- }
29
+ if let Some ( dir) = env:: var_os ( "TERMINFO" ) {
30
+ dirs_to_search. push ( PathBuf :: from ( dir) ) ;
31
+ }
32
+
33
+ if let Ok ( dirs) = env:: var ( "TERMINFO_DIRS" ) {
34
+ for i in dirs. split ( ':' ) {
35
+ if i == "" {
36
+ dirs_to_search. push ( PathBuf :: from ( "/usr/share/terminfo" ) ) ;
37
+ } else {
38
+ dirs_to_search. push ( PathBuf :: from ( i) ) ;
58
39
}
59
40
}
60
- } ;
41
+ } else {
42
+ // Found nothing in TERMINFO_DIRS, use the default paths:
43
+ // According to /etc/terminfo/README, after looking at
44
+ // ~/.terminfo, ncurses will search /etc/terminfo, then
45
+ // /lib/terminfo, and eventually /usr/share/terminfo.
46
+ // On Haiku the database can be found at /boot/system/data/terminfo
47
+ if let Some ( mut homedir) = env:: home_dir ( ) {
48
+ homedir. push ( ".terminfo" ) ;
49
+ dirs_to_search. push ( homedir)
50
+ }
51
+
52
+ dirs_to_search. push ( PathBuf :: from ( "/etc/terminfo" ) ) ;
53
+ dirs_to_search. push ( PathBuf :: from ( "/lib/terminfo" ) ) ;
54
+ dirs_to_search. push ( PathBuf :: from ( "/usr/share/terminfo" ) ) ;
55
+ dirs_to_search. push ( PathBuf :: from ( "/boot/system/data/terminfo" ) ) ;
56
+ }
61
57
62
58
// Look for the terminal in all of the search directories
63
59
for mut p in dirs_to_search {
0 commit comments