summaryrefslogtreecommitdiff
path: root/subvertpy
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@jelmer.uk>2016-07-24 14:57:54 +0000
committerJelmer Vernooij <jelmer@jelmer.uk>2016-07-24 14:57:54 +0000
commit3abcce0ea27e36a95e3771f99bbbab11b27a918b (patch)
treee995c231c04562e8845ac9f19f3f9e5bb31e9df7 /subvertpy
parent9c5a327da6b41437b9ae9f5751a035e28c9d2bd7 (diff)
Remove a few more PyString uses.
Diffstat (limited to 'subvertpy')
-rw-r--r--subvertpy/client.c17
-rw-r--r--subvertpy/util.c4
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;