From 529c68185106642b39e8280f29945a5c3a7825d2 Mon Sep 17 00:00:00 2001 From: Frans de Jonge Date: Sun, 16 May 2021 12:46:26 +0200 Subject: [PATCH] CloudStorage: log error (#7694) References . --- frontend/apps/cloudstorage/cloudstorage.lua | 10 ++++++---- frontend/apps/cloudstorage/ftpapi.lua | 6 ++++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/frontend/apps/cloudstorage/cloudstorage.lua b/frontend/apps/cloudstorage/cloudstorage.lua index a1ae9866b..e635bb081 100644 --- a/frontend/apps/cloudstorage/cloudstorage.lua +++ b/frontend/apps/cloudstorage/cloudstorage.lua @@ -11,6 +11,7 @@ local Menu = require("ui/widget/menu") local UIManager = require("ui/uimanager") local WebDav = require("apps/cloudstorage/webdav") local lfs = require("libs/libkoreader-lfs") +local logger = require("logger") local T = require("ffi/util").template local _ = require("gettext") local Screen = require("device").screen @@ -147,28 +148,29 @@ function CloudStorage:selectCloudType() end function CloudStorage:openCloudServer(url) - local tbl + local tbl, e local NetworkMgr = require("ui/network/manager") if self.type == "dropbox" then if NetworkMgr:willRerunWhenOnline(function() self:openCloudServer(url) end) then return end - tbl = DropBox:run(url, self.password, self.choose_folder_mode) + tbl, e = DropBox:run(url, self.password, self.choose_folder_mode) elseif self.type == "ftp" then if NetworkMgr:willRerunWhenConnected(function() self:openCloudServer(url) end) then return end - tbl = Ftp:run(self.address, self.username, self.password, url) + tbl, e = Ftp:run(self.address, self.username, self.password, url) elseif self.type == "webdav" then if NetworkMgr:willRerunWhenConnected(function() self:openCloudServer(url) end) then return end - tbl = WebDav:run(self.address, self.username, self.password, url) + tbl, e = WebDav:run(self.address, self.username, self.password, url) end if tbl and #tbl > 0 then self:switchItemTable(url, tbl) return true elseif not tbl then + logger.err("CloudStorage:", e) UIManager:show(InfoMessage:new{ text = _("Cannot fetch list of folder contents\nPlease check your configuration or network connection."), timeout = 3, diff --git a/frontend/apps/cloudstorage/ftpapi.lua b/frontend/apps/cloudstorage/ftpapi.lua index c85b94ed5..aaabfecc6 100644 --- a/frontend/apps/cloudstorage/ftpapi.lua +++ b/frontend/apps/cloudstorage/ftpapi.lua @@ -39,8 +39,10 @@ function FtpApi:listFolder(address_path, folder_path) local file_name local tbl = {} local sink = ltn12.sink.table(tbl) - local ls_ftp = self:ftpGet(address_path, "nlst", sink) - if ls_ftp == nil then return false end + local ls_ftp, e = self:ftpGet(address_path, "nlst", sink) + if ls_ftp == nil then + return false, e + end if folder_path == "/" then folder_path = "" end