From 6f037cec30673a41492b727648988cc598d40432 Mon Sep 17 00:00:00 2001 From: Qingping Hou Date: Sat, 22 Apr 2017 19:10:48 -0700 Subject: [PATCH] ota(fix): do not create 0 size installed file if index is missing --- frontend/ui/otamanager.lua | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/frontend/ui/otamanager.lua b/frontend/ui/otamanager.lua index 1ad55b45f..082aa8ee9 100644 --- a/frontend/ui/otamanager.lua +++ b/frontend/ui/otamanager.lua @@ -169,6 +169,10 @@ function OTAManager:_buildLocalPackage() if lfs.attributes(installed_package, "mode") == "file" then return 0 end + if lfs.attributes(self.package_indexfile, "mode") ~= "file" then + logger.err("Missing ota metadata:", self.package_indexfile) + return nil + end if Device:isAndroid() then return os.execute(string.format( "./tar cvf %s -T %s --no-recursion", @@ -182,11 +186,14 @@ end function OTAManager:zsync() if self:_buildLocalPackage() == 0 then - return os.execute(string.format( - "./zsync -i %s -o %s -u %s %s", - self.installed_package, self.updated_package, - self:getOTAServer(), ota_dir .. self:getZsyncFilename() - )) + return os.execute( + ("./zsync -i %s -o %s -u %s %s%s"):format( + self.installed_package, + self.updated_package, + self:getOTAServer(), + ota_dir, + self:getZsyncFilename()) + ) end end