Commit ae0e5a53 authored by Dmitry Shelepnev's avatar Dmitry Shelepnev
Browse files

Close file descriptors after send document by telebot

parent a3505a48
Loading
Loading
Loading
Loading
+15 −8
Original line number Diff line number Diff line
@@ -60,11 +60,15 @@ def getFileData(book):
            #s = None
            fo = None

    #if fo: fo.close()
    #if z: z.close()
    #if fz: fz.close()
    dio = io.BytesIO()
    dio.write(fo.read())
    dio.seek(0)

    if fo: fo.close()
    if z: z.close()
    if fz: fz.close()

    return fo
    return dio

def getFileDataZip(book):
    transname = getFileName(book)
@@ -74,7 +78,6 @@ def getFileDataZip(book):
    zo.writestr(transname, fo.read())
    zo.close()
    dio.seek(0)
    #buf = dio.getvalue()

    return dio

@@ -118,10 +121,14 @@ def getFileDataConv(book, convert_type):
    else:
        return None

    # Как то нужно удалять временный файл после отдачи его
    # os.remove(tmp_conv_path)
    dio = io.BytesIO()
    dio.write(fo.read())
    dio.seek(0)

    fo.close()
    os.remove(tmp_conv_path)

    return fo
    return dio

def getFileDataEpub(book):
    return getFileDataConv(book,'epub')
+1 −0
Original line number Diff line number Diff line
@@ -166,6 +166,7 @@ class Command(BaseCommand):

        if document:
            bot.send_document(chat_id=query.message.chat_id,document=document,filename=filename)
            document.close()
            self.logger.info("Send file: %s" % filename)
        else:
            response = 'Возникла техническая ошибка, обратитесь к администратору сайта.'