X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/81506fae8a6d5360f6d830b0e07190e60a7efd1c..fa1aebc747ece026608908527187d3f403135f53:/plugins/proxy.py?ds=sidebyside

diff --git a/plugins/proxy.py b/plugins/proxy.py
index e8782e6e4..2a6222aa0 100755
--- a/plugins/proxy.py
+++ b/plugins/proxy.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/env python3
 # -*- coding: utf-8 -*-
 #
 # proxy.py — helper for Python-based external (xml-rpc) ikiwiki plugins
@@ -159,7 +159,8 @@ class _IkiWikiExtPluginXMLRPCHandler(object):
         xml = _xmlrpc_client.dumps(sum(kwargs.items(), args), cmd)
         self._debug_fn(
             "calling ikiwiki procedure `{0}': [{1}]".format(cmd, repr(xml)))
-        if isinstance(xml, unicode):
+        # ensure that encoded is a str (bytestring in Python 2, Unicode in 3)
+        if str is bytes and not isinstance(xml, str):
             encoded = xml.encode('utf8')
         else:
             encoded = xml
@@ -168,7 +169,7 @@ class _IkiWikiExtPluginXMLRPCHandler(object):
         self._debug_fn('reading response from ikiwiki...')
 
         response = _IkiWikiExtPluginXMLRPCHandler._read(in_fd)
-        if isinstance(response, unicode):
+        if str is bytes and not isinstance(response, str):
             xml = response.encode('utf8')
         else:
             xml = response