diff options
author | Jelmer Vernooij <jelmer@jelmer.uk> | 2016-07-24 14:57:54 +0000 |
---|---|---|
committer | Jelmer Vernooij <jelmer@jelmer.uk> | 2016-07-24 14:57:54 +0000 |
commit | 3abcce0ea27e36a95e3771f99bbbab11b27a918b (patch) | |
tree | e995c231c04562e8845ac9f19f3f9e5bb31e9df7 /subvertpy | |
parent | 9c5a327da6b41437b9ae9f5751a035e28c9d2bd7 (diff) |
Remove a few more PyString uses.
Diffstat (limited to 'subvertpy')
-rw-r--r-- | subvertpy/client.c | 17 | ||||
-rw-r--r-- | subvertpy/util.c | 4 |
2 files changed, 16 insertions, 5 deletions
diff --git a/subvertpy/client.c b/subvertpy/client.c index 5666164b..0b9d2109 100644 --- a/subvertpy/client.c +++ b/subvertpy/client.c @@ -94,18 +94,29 @@ static bool to_opt_revision(PyObject *arg, svn_opt_revision_t *ret) } else if (arg == Py_None) { ret->kind = svn_opt_revision_unspecified; return true; - } else if (PyString_Check(arg)) { - char *text = PyString_AsString(arg); + } else if (PyUnicode_Check(arg) || PyBytes_Check(arg)) { + char *text; + if (PyUnicode_Check(arg)) { + arg = PyUnicode_AsUTF8String(arg); + } else { + Py_INCREF(arg); + } + + text = PyBytes_AsString(arg); if (!strcmp(text, "HEAD")) { ret->kind = svn_opt_revision_head; + Py_DECREF(arg); return true; } else if (!strcmp(text, "WORKING")) { ret->kind = svn_opt_revision_working; + Py_DECREF(arg); return true; } else if (!strcmp(text, "BASE")) { ret->kind = svn_opt_revision_base; + Py_DECREF(arg); return true; } + Py_DECREF(arg); } PyErr_SetString(PyExc_ValueError, "Unable to parse revision"); @@ -1748,7 +1759,7 @@ static PyObject *get_default_ignores(PyObject *self) RUN_SVN_WITH_POOL(pool, svn_wc_get_default_ignores(&patterns, configobj->config, pool)); ret = PyList_New(patterns->nelts); for (i = 0; i < patterns->nelts; i++) { - PyObject *item = PyString_FromString(APR_ARRAY_IDX(patterns, i, char *)); + PyObject *item = PyBytes_FromString(APR_ARRAY_IDX(patterns, i, char *)); if (item == NULL) { apr_pool_destroy(pool); Py_DECREF(item); diff --git a/subvertpy/util.c b/subvertpy/util.c index 9203a9e2..d2ddd85a 100644 --- a/subvertpy/util.c +++ b/subvertpy/util.c @@ -411,7 +411,7 @@ PyObject *prop_hash_to_dict(apr_hash_t *props) py_key = Py_None; Py_INCREF(py_key); } else { - py_key = PyString_FromString(key); + py_key = PyUnicode_FromString(key); } if (PyDict_SetItem(py_props, py_key, py_val) != 0) { Py_DECREF(py_key); @@ -725,7 +725,7 @@ static svn_error_t *py_stream_read(void *baton, char *buffer, apr_size_t *length return py_svn_error(); } *length = PyString_Size(ret); - memcpy(buffer, PyString_AS_STRING(ret), *length); + memcpy(buffer, PyBytes_AsString(ret), *length); Py_DECREF(ret); PyGILState_Release(state); return NULL; |