mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	Re-attempt to delete temporary upload if the file is locked by another process (#12447)
Replace all calls to os.Remove/os.RemoveAll by retrying util.Remove/util.RemoveAll and remove circular dependencies from util. Fix #12339 Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: silverwind <me@silverwind.io>
This commit is contained in:
		@@ -6,10 +6,10 @@ package models
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"os"
 | 
			
		||||
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/timeutil"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
 | 
			
		||||
	"github.com/unknwon/com"
 | 
			
		||||
)
 | 
			
		||||
@@ -66,7 +66,7 @@ func RemoveAllWithNotice(title, path string) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func removeAllWithNotice(e Engine, title, path string) {
 | 
			
		||||
	if err := os.RemoveAll(path); err != nil {
 | 
			
		||||
	if err := util.RemoveAll(path); err != nil {
 | 
			
		||||
		desc := fmt.Sprintf("%s [%s]: %v", title, path, err)
 | 
			
		||||
		log.Warn(title+" [%s]: %v", path, err)
 | 
			
		||||
		if err = createNotice(e, NoticeRepository, desc); err != nil {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user