@@ -9,7 +9,7 @@ use crate::sys_common::net::{getsockopt, setsockopt, sockaddr_to_addr};
9
9
use crate :: sys_common:: { AsInner , FromInner , IntoInner } ;
10
10
use crate :: time:: { Duration , Instant } ;
11
11
12
- use libc:: { c_int, c_void, size_t, sockaddr, socklen_t, EAI_SYSTEM , MSG_PEEK } ;
12
+ use libc:: { c_int, c_void, size_t, sockaddr, socklen_t, MSG_PEEK } ;
13
13
14
14
pub use crate :: sys:: { cvt, cvt_r} ;
15
15
@@ -81,17 +81,20 @@ pub fn cvt_gai(err: c_int) -> io::Result<()> {
81
81
// We may need to trigger a glibc workaround. See on_resolver_failure() for details.
82
82
on_resolver_failure ( ) ;
83
83
84
- if err == EAI_SYSTEM {
85
- return Err ( io:: Error :: last_os_error ( ) ) ;
86
- }
87
-
88
84
#[ cfg( target_os = "freertos" ) ]
89
85
let detail = format ! ( "error code {}" , err) ;
90
86
91
87
#[ cfg( not( target_os = "freertos" ) ) ]
92
- let detail = unsafe {
93
- str:: from_utf8 ( CStr :: from_ptr ( libc:: gai_strerror ( err) ) . to_bytes ( ) ) . unwrap ( ) . to_owned ( )
88
+ let detail = {
89
+ if err == libc:: EAI_SYSTEM {
90
+ return Err ( io:: Error :: last_os_error ( ) ) ;
91
+ }
92
+
93
+ unsafe {
94
+ str:: from_utf8 ( CStr :: from_ptr ( libc:: gai_strerror ( err) ) . to_bytes ( ) ) . unwrap ( ) . to_owned ( )
95
+ }
94
96
} ;
97
+
95
98
Err ( io:: Error :: new (
96
99
io:: ErrorKind :: Other ,
97
100
& format ! ( "failed to lookup address information: {}" , detail) [ ..] ,
0 commit comments