# HG changeset patch # User Raphaël Gomès # Date 1605540960 -3600 # Node ID c9c3c277e5a55d9e4715bc8a9221428716a7384e # Parent 073bb7563931114c6d41b91939a13f93fcd6396c rust-status: properly translate OSError to Python This is probably never going to be called after the next few patches, but we might as well make sure this is done correctly for the future rewrite. Differential Revision: https://phab.mercurial-scm.org/D9319 diff -r 073bb7563931 -r c9c3c277e5a5 rust/hg-cpython/src/dirstate/status.rs --- a/rust/hg-cpython/src/dirstate/status.rs Mon Nov 16 21:28:42 2020 -0800 +++ b/rust/hg-cpython/src/dirstate/status.rs Mon Nov 16 16:36:00 2020 +0100 @@ -10,6 +10,7 @@ //! `rustext.dirstate.status`. use crate::{dirstate::DirstateMap, exceptions::FallbackError}; +use cpython::exc::OSError; use cpython::{ exc::ValueError, ObjectProtocol, PyBytes, PyErr, PyList, PyObject, PyResult, PyTuple, Python, PythonObject, ToPyObject, @@ -89,6 +90,7 @@ PyErr::new::(py, &as_string) } + StatusError::IO(e) => PyErr::new::(py, e.to_string()), e => PyErr::new::(py, e.to_string()), } }