From 5e19965b0c42c55fe7561a3b94b42ca25c2d685f Mon Sep 17 00:00:00 2001 From: Florent Gallaire Date: Sat, 22 Aug 2020 16:11:52 +0200 Subject: [PATCH] Fix 'NoneType' object assignment error from #892 and #954 --- telebot/apihelper.py | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/telebot/apihelper.py b/telebot/apihelper.py index 5d84addc5..e75ed538e 100644 --- a/telebot/apihelper.py +++ b/telebot/apihelper.py @@ -498,7 +498,10 @@ def send_video(token, chat_id, data, duration=None, caption=None, reply_to_messa payload['connect-timeout'] = timeout if thumb: if not util.is_string(thumb): - files['thumb'] = thumb + if files: + files['thumb'] = thumb + else: + files = {'thumb': thumb} else: payload['thumb'] = thumb if width: @@ -533,7 +536,10 @@ def send_animation(token, chat_id, data, duration=None, caption=None, reply_to_m payload['connect-timeout'] = timeout if thumb: if not util.is_string(thumb): - files['thumb'] = thumb + if files: + files['thumb'] = thumb + else: + files = {'thumb': thumb} else: payload['thumb'] = thumb return _make_request(token, method_url, params=payload, files=files, method='post') @@ -590,7 +596,10 @@ def send_video_note(token, chat_id, data, duration=None, length=None, reply_to_m payload['connect-timeout'] = timeout if thumb: if not util.is_string(thumb): - files['thumb'] = thumb + if files: + files['thumb'] = thumb + else: + files = {'thumb': thumb} else: payload['thumb'] = thumb return _make_request(token, method_url, params=payload, files=files, method='post') @@ -625,7 +634,10 @@ def send_audio(token, chat_id, audio, caption=None, duration=None, performer=Non payload['connect-timeout'] = timeout if thumb: if not util.is_string(thumb): - files['thumb'] = thumb + if files: + files['thumb'] = thumb + else: + files = {'thumb': thumb} else: payload['thumb'] = thumb return _make_request(token, method_url, params=payload, files=files, method='post') @@ -654,7 +666,10 @@ def send_data(token, chat_id, data, data_type, reply_to_message_id=None, reply_m payload['caption'] = caption if thumb: if not util.is_string(thumb): - files['thumb'] = thumb + if files: + files['thumb'] = thumb + else: + files = {'thumb': thumb} else: payload['thumb'] = thumb return _make_request(token, method_url, params=payload, files=files, method='post')