From 38bd51bc1bab0cabd97dfe3cb598220a2c02550a Mon Sep 17 00:00:00 2001
From: Simon McVittie <smcv@debian.org>
Date: Thu, 4 Sep 2014 11:42:05 +0100
Subject: [PATCH] plugins/proxy.py: be compatible with Python 3

---
 plugins/proxy.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/plugins/proxy.py b/plugins/proxy.py
index e8782e6e4..b61eb466c 100755
--- a/plugins/proxy.py
+++ b/plugins/proxy.py
@@ -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
-- 
2.39.5