MCPcopy Index your code
hub / github.com/RustPython/RustPython / DuplicateHandle

Function DuplicateHandle

crates/vm/src/stdlib/_winapi.rs:174–199  ·  view source on GitHub ↗
(
        src_process: WinHandle,
        src: WinHandle,
        target_process: WinHandle,
        access: u32,
        inherit: i32,
        options: OptionalArg<u32>,
        vm: &VirtualMachine,

Source from the content-addressed store, hash-verified

172
173 #[pyfunction]
174 fn DuplicateHandle(
175 src_process: WinHandle,
176 src: WinHandle,
177 target_process: WinHandle,
178 access: u32,
179 inherit: i32,
180 options: OptionalArg<u32>,
181 vm: &VirtualMachine,
182 ) -> PyResult<WinHandle> {
183 use windows_sys::Win32::Foundation::HANDLE;
184 let target = unsafe {
185 let mut target = core::mem::MaybeUninit::<HANDLE>::uninit();
186 WindowsSysResult(windows_sys::Win32::Foundation::DuplicateHandle(
187 src_process.0,
188 src.0,
189 target_process.0,
190 target.as_mut_ptr(),
191 access,
192 inherit,
193 options.unwrap_or(0),
194 ))
195 .to_pyresult(vm)?;
196 target.assume_init()
197 };
198 Ok(WinHandle(target))
199 }
200
201 #[pyfunction]
202 fn GetACP() -> u32 {

Callers 1

py_newMethod · 0.85

Calls 4

WindowsSysResultClass · 0.85
WinHandleClass · 0.85
as_mut_ptrMethod · 0.80
to_pyresultMethod · 0.45

Tested by

no test coverage detected