From c1fbac7fd3ef58a9bfb6514ff8edb73752c02587 Mon Sep 17 00:00:00 2001 From: arvidn Date: Fri, 15 Apr 2016 18:40:46 -0400 Subject: [PATCH] fix python binding for python 3 --- bindings/python/src/converters.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/bindings/python/src/converters.cpp b/bindings/python/src/converters.cpp index 7b02c873f..bf5b8d269 100644 --- a/bindings/python/src/converters.cpp +++ b/bindings/python/src/converters.cpp @@ -35,10 +35,12 @@ struct tuple_to_endpoint { if (!PyTuple_Check(x)) return NULL; if (PyTuple_Size(x) != 2) return NULL; - if (!PyString_Check(PyTuple_GetItem(x, 0))) return NULL; - if (!PyNumber_Check(PyTuple_GetItem(x, 1))) return NULL; + extract ip(object(borrowed(PyTuple_GetItem(x, 0)))); + if (!ip.check()) return NULL; + extract port(object(borrowed(PyTuple_GetItem(x, 1)))); + if (!port.check()) return NULL; lt::error_code ec; - lt::address::from_string(PyString_AsString(PyTuple_GetItem(x, 0)), ec); + lt::address::from_string(ip, ec); if (ec) return NULL; return x; } @@ -50,8 +52,7 @@ struct tuple_to_endpoint object o(borrowed(x)); new (storage) T(lt::address::from_string( - extract(o[0])) - , extract(o[1])); + extract(o[0])), extract(o[1])); data->convertible = storage; } };