From f97d7701554002ddd4421a2cf6961f9f3d6df285 Mon Sep 17 00:00:00 2001 From: Chenxiong Qi Date: Dec 01 2016 09:41:29 +0000 Subject: Pass byte string to pycurl setopt According to pycurl documentation, data passed to setopt should normally be a byte string. Signed-off-by: Chenxiong Qi --- diff --git a/pyrpkg/lookaside.py b/pyrpkg/lookaside.py index c22e6b8..a73c6f7 100644 --- a/pyrpkg/lookaside.py +++ b/pyrpkg/lookaside.py @@ -21,6 +21,7 @@ import os import sys import pycurl +import six from .errors import DownloadError, InvalidHashType, UploadError @@ -149,6 +150,8 @@ class CGILookasideCache(object): path_dict.update(kwargs) path = self.download_path % path_dict url = '%s/%s' % (self.download_url, path) + if isinstance(url, six.text_type): + url = url.encode('utf-8') self.log.debug("Full url: %s", url) with open(outfile, 'wb') as f: