@@ -1863,32 +1863,14 @@ fn open_to_and_set_permissions(
1863
1863
Ok ( ( writer, writer_metadata) )
1864
1864
}
1865
1865
1866
- #[ cfg( not( any ( target_os = "linux" , target_os = "android" , target_vendor = "apple" ) ) ) ]
1866
+ #[ cfg( not( target_vendor = "apple" ) ) ]
1867
1867
pub fn copy ( from : & Path , to : & Path ) -> io:: Result < u64 > {
1868
1868
let ( mut reader, reader_metadata) = open_from ( from) ?;
1869
1869
let ( mut writer, _) = open_to_and_set_permissions ( to, reader_metadata) ?;
1870
1870
1871
1871
io:: copy ( & mut reader, & mut writer)
1872
1872
}
1873
1873
1874
- #[ cfg( any( target_os = "linux" , target_os = "android" ) ) ]
1875
- pub fn copy ( from : & Path , to : & Path ) -> io:: Result < u64 > {
1876
- let ( mut reader, reader_metadata) = open_from ( from) ?;
1877
- let max_len = u64:: MAX ;
1878
- let ( mut writer, _) = open_to_and_set_permissions ( to, reader_metadata) ?;
1879
-
1880
- use super :: kernel_copy:: { CopyResult , copy_regular_files} ;
1881
-
1882
- match copy_regular_files ( reader. as_raw_fd ( ) , writer. as_raw_fd ( ) , max_len) {
1883
- CopyResult :: Ended ( bytes) => Ok ( bytes) ,
1884
- CopyResult :: Error ( e, _) => Err ( e) ,
1885
- CopyResult :: Fallback ( written) => match io:: copy:: generic_copy ( & mut reader, & mut writer) {
1886
- Ok ( bytes) => Ok ( bytes + written) ,
1887
- Err ( e) => Err ( e) ,
1888
- } ,
1889
- }
1890
- }
1891
-
1892
1874
#[ cfg( target_vendor = "apple" ) ]
1893
1875
pub fn copy ( from : & Path , to : & Path ) -> io:: Result < u64 > {
1894
1876
const COPYFILE_ALL : libc:: copyfile_flags_t = libc:: COPYFILE_METADATA | libc:: COPYFILE_DATA ;
0 commit comments