summaryrefslogtreecommitdiffstats
path: root/telepot/hack.py
diff options
context:
space:
mode:
Diffstat (limited to 'telepot/hack.py')
-rw-r--r--telepot/hack.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/telepot/hack.py b/telepot/hack.py
new file mode 100644
index 0000000..029bd19
--- /dev/null
+++ b/telepot/hack.py
@@ -0,0 +1,16 @@
+try:
+ import urllib3.fields
+
+ # Do not encode unicode filename, so Telegram servers understand it.
+ def _noencode_filename(fn):
+ def w(name, value):
+ if name == 'filename':
+ return '%s="%s"' % (name, value)
+ else:
+ return fn(name, value)
+ return w
+
+ urllib3.fields.format_header_param = _noencode_filename(urllib3.fields.format_header_param)
+
+except (ImportError, AttributeError):
+ pass