Fix the signature of CreateSymbolicLinkW

Closes #12123
This commit is contained in:
Alex Crichton 2014-02-09 11:54:19 -08:00
parent b66ec3483b
commit 882e2c391e
2 changed files with 11 additions and 9 deletions

View File

@ -746,7 +746,7 @@ pub fn symlink(src: &CString, dst: &CString) -> IoResult<()> {
super::mkerr_winbool(as_utf16_p(src.as_str().unwrap(), |src| { super::mkerr_winbool(as_utf16_p(src.as_str().unwrap(), |src| {
as_utf16_p(dst.as_str().unwrap(), |dst| { as_utf16_p(dst.as_str().unwrap(), |dst| {
unsafe { libc::CreateSymbolicLinkW(dst, src, 0) } unsafe { libc::CreateSymbolicLinkW(dst, src, 0) }
}) }) as libc::BOOL
})) }))
} }

View File

@ -970,6 +970,7 @@ pub mod types {
pub type BOOL = c_int; pub type BOOL = c_int;
pub type BYTE = u8; pub type BYTE = u8;
pub type BOOLEAN = BYTE;
pub type CCHAR = c_char; pub type CCHAR = c_char;
pub type CHAR = c_char; pub type CHAR = c_char;
@ -3984,15 +3985,16 @@ pub mod funcs {
pub mod kernel32 { pub mod kernel32 {
use libc::types::os::arch::c95::{c_uint}; use libc::types::os::arch::c95::{c_uint};
use libc::types::os::arch::extra::{BOOL, DWORD, SIZE_T, HMODULE}; use libc::types::os::arch::extra::{BOOL, DWORD, SIZE_T, HMODULE,
use libc::types::os::arch::extra::{LPCWSTR, LPWSTR, LPCSTR, LPSTR, LPCH, LPCWSTR, LPWSTR, LPCSTR, LPSTR,
LPDWORD, LPVOID, LPCH, LPDWORD, LPVOID,
LPCVOID, LPOVERLAPPED}; LPCVOID, LPOVERLAPPED,
use libc::types::os::arch::extra::{LPSECURITY_ATTRIBUTES, LPSTARTUPINFO, LPSECURITY_ATTRIBUTES,
LPSTARTUPINFO,
LPPROCESS_INFORMATION, LPPROCESS_INFORMATION,
LPMEMORY_BASIC_INFORMATION, LPMEMORY_BASIC_INFORMATION,
LPSYSTEM_INFO}; LPSYSTEM_INFO, BOOLEAN,
use libc::types::os::arch::extra::{HANDLE, LPHANDLE, LARGE_INTEGER, HANDLE, LPHANDLE, LARGE_INTEGER,
PLARGE_INTEGER, LPFILETIME}; PLARGE_INTEGER, LPFILETIME};
extern "system" { extern "system" {
@ -4105,7 +4107,7 @@ pub mod funcs {
dwFlags: DWORD) -> BOOL; dwFlags: DWORD) -> BOOL;
pub fn CreateSymbolicLinkW(lpSymlinkFileName: LPCWSTR, pub fn CreateSymbolicLinkW(lpSymlinkFileName: LPCWSTR,
lpTargetFileName: LPCWSTR, lpTargetFileName: LPCWSTR,
dwFlags: DWORD) -> BOOL; dwFlags: DWORD) -> BOOLEAN;
pub fn CreateHardLinkW(lpSymlinkFileName: LPCWSTR, pub fn CreateHardLinkW(lpSymlinkFileName: LPCWSTR,
lpTargetFileName: LPCWSTR, lpTargetFileName: LPCWSTR,
lpSecurityAttributes: LPSECURITY_ATTRIBUTES) lpSecurityAttributes: LPSECURITY_ATTRIBUTES)