From 5e9c031d6a89aa3aa499f7c1b66d4c2de496178f Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Mon, 18 May 2020 10:12:35 +0300 Subject: [PATCH 1/4] Add FFI definition for PyObject_AsFileDescriptor. Fixes #935. --- src/ffi/fileobject.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ffi/fileobject.rs b/src/ffi/fileobject.rs index d5cb6eeb9c6..4981e9835b9 100644 --- a/src/ffi/fileobject.rs +++ b/src/ffi/fileobject.rs @@ -15,6 +15,7 @@ extern "C" { arg7: *const c_char, arg8: c_int, ) -> *mut PyObject; + pub fn PyObject_AsFileDescriptor(arg1: *mut PyObject) -> c_int; #[cfg_attr(PyPy, link_name = "PyPyFile_GetLine")] pub fn PyFile_GetLine(arg1: *mut PyObject, arg2: c_int) -> *mut PyObject; #[cfg_attr(PyPy, link_name = "PyPyFile_WriteObject")] From 912ed6946fe2979d4e7bb9a5aa7580fc6bb153a0 Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Mon, 18 May 2020 11:20:35 +0300 Subject: [PATCH 2/4] Added changelog entry. --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48b4a48450d..96cc1c7eda6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,9 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Added +- Add FFI definition `PyObject_AsFileDescriptor` [#938](https://github.com/PyO3/pyo3/pull/938) + ### Removed - Remove `ManagedPyRef` (unused, and needs specialization) [#930](https://github.com/PyO3/pyo3/pull/930) From 6fd0778e3af32a630cb926e5daab02eaf0f52ffb Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Tue, 19 May 2020 12:53:11 +0300 Subject: [PATCH 3/4] Use correct link name for PyPy. --- src/ffi/fileobject.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ffi/fileobject.rs b/src/ffi/fileobject.rs index 4981e9835b9..687061b24be 100644 --- a/src/ffi/fileobject.rs +++ b/src/ffi/fileobject.rs @@ -15,6 +15,7 @@ extern "C" { arg7: *const c_char, arg8: c_int, ) -> *mut PyObject; + #[cfg_attr(PyPy, link_name = "PyPyFile_AsFileDescriptor"] pub fn PyObject_AsFileDescriptor(arg1: *mut PyObject) -> c_int; #[cfg_attr(PyPy, link_name = "PyPyFile_GetLine")] pub fn PyFile_GetLine(arg1: *mut PyObject, arg2: c_int) -> *mut PyObject; From 33823f26a2342c35fcdd84df80640bc457856991 Mon Sep 17 00:00:00 2001 From: David Hewitt <1939362+davidhewitt@users.noreply.github.com> Date: Tue, 19 May 2020 21:17:29 +0100 Subject: [PATCH 4/4] Fix typo --- src/ffi/fileobject.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ffi/fileobject.rs b/src/ffi/fileobject.rs index 687061b24be..0bddd86ad61 100644 --- a/src/ffi/fileobject.rs +++ b/src/ffi/fileobject.rs @@ -15,7 +15,7 @@ extern "C" { arg7: *const c_char, arg8: c_int, ) -> *mut PyObject; - #[cfg_attr(PyPy, link_name = "PyPyFile_AsFileDescriptor"] + #[cfg_attr(PyPy, link_name = "PyPyFile_AsFileDescriptor")] pub fn PyObject_AsFileDescriptor(arg1: *mut PyObject) -> c_int; #[cfg_attr(PyPy, link_name = "PyPyFile_GetLine")] pub fn PyFile_GetLine(arg1: *mut PyObject, arg2: c_int) -> *mut PyObject;