From 3eb103423f85fb2af1f5ff91432e30417551e313 Mon Sep 17 00:00:00 2001 From: liuxiaolong <736321739@qq.com> Date: 星期五, 20 十二月 2019 18:52:32 +0800 Subject: [PATCH] fix --- service/SysService.go | 30 ++++++++++++------------------ 1 files changed, 12 insertions(+), 18 deletions(-) diff --git a/service/SysService.go b/service/SysService.go index 055fb0f..6108ca1 100644 --- a/service/SysService.go +++ b/service/SysService.go @@ -9,6 +9,7 @@ "mime/multipart" "os" "os/exec" + "path" "strings" "webserver/extend/config" "webserver/extend/util" @@ -95,11 +96,9 @@ if !util.CreateDirectory(configPatchPath) { return false } - index := strings.LastIndex(arg.Header.Filename, ".") - if index < 0 { - return false - } - subfix := arg.Header.Filename[index:] + + filenameWithSuffix := path.Base(arg.Header.Filename) + subfix := path.Ext(filenameWithSuffix) MD5Str := arg.Identifier logger.Debug("Identifier:",MD5Str) fileTmpPath := configPatchPath + "/"+MD5Str @@ -164,11 +163,10 @@ } else { configPatchPath = "/opt/vasystem/patch" } - index := strings.LastIndex(filename, ".") - if index < 0 { - return false,errors.New("闈炴硶鐨勫崌绾у帇缂╁寘鏂囦欢") - } - ext := filename[index:] + + filenameWithSuffix := path.Base(filename) + ext := path.Ext(filenameWithSuffix) + zipFilePath := configPatchPath + "/"+identifier+ext if util.Exists(zipFilePath) { //鏍¢獙md5 @@ -177,15 +175,11 @@ return false,errors.New("鑾峰彇鍗囩骇鍘嬬缉鍖卪d5澶辫触") } if strMd5 == identifier { - if util.TarGzCheck(zipFilePath) { - if !updatePatch(identifier, ext) { - return false,errors.New("鎵ц鍗囩骇杩囩▼寮傚父") - } - return true,nil - } else { - logger.Debug("not a valid zip file,path:",zipFilePath) - return false,errors.New("鍗囩骇绋嬪簭瑙e帇澶辫触锛岃纭畾涓婁紶鐨勮ˉ涓佹槸zip鏍煎紡") + if !updatePatch(identifier, ext) { + return false,errors.New("鎵ц鍗囩骇杩囩▼寮傚父,璇风‘瀹氫笂浼犵殑琛ヤ竵鏄痶ar.gz鏍煎紡") } + return true,nil + } else { logger.Debug("strMd5 is", strMd5,"identifier is",identifier,"not equal") return false,errors.New("鏍¢獙鍗囩骇鏂囦欢澶辫触") -- Gitblit v1.8.0