You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by breed <gi...@git.apache.org> on 2018/08/03 16:28:48 UTC
[GitHub] zookeeper pull request #586: Zookeeper 3105:Character coding problem occur w...
Github user breed commented on a diff in the pull request:
https://github.com/apache/zookeeper/pull/586#discussion_r207599621
--- Diff: src/contrib/zkpython/src/c/zookeeper.c ---
@@ -387,8 +387,8 @@ int parse_acls(struct ACL_vector *acls, PyObject *pyacls)
PyObject *perms = PyDict_GetItemString( a, "perms" );
#if PY_MAJOR_VERSION >= 3
acls->data[i].perms = (int32_t)(PyLong_AsLong(perms));
- acls->data[i].id.id = strdup( PyUnicode_AsUnicode( PyDict_GetItemString( a, "id" ) ) );
- acls->data[i].id.scheme = strdup( PyUnicode_AsUnicode( PyDict_GetItemString( a, "scheme" ) ) );
+ acls->data[i].id.id = strdup( PyBytes_AS_STRING( PyUnicode_AsASCIIString( PyDict_GetItemString( a, "id" ) ) ) );
--- End diff --
this only works for ascii strings. that should be ok for scheme, but maybe not for id.
---