mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 00:54:43 +01:00 
			
		
		
		
	Fix bug on avatar middleware (#15124)
This commit is contained in:
		
							parent
							
								
									687e2dfa55
								
							
						
					
					
						commit
						f4e677edb1
					
				| @ -11,6 +11,7 @@ import ( | ||||
| 	"net/http" | ||||
| 	"os" | ||||
| 	"path" | ||||
| 	"path/filepath" | ||||
| 	"strings" | ||||
| 	"time" | ||||
| 
 | ||||
| @ -87,13 +88,21 @@ func storageHandler(storageSetting setting.Storage, prefix string, objStore stor | ||||
| 				return | ||||
| 			} | ||||
| 
 | ||||
| 			if !strings.HasPrefix(req.URL.RequestURI(), "/"+prefix) { | ||||
| 			prefix := strings.Trim(prefix, "/") | ||||
| 
 | ||||
| 			if !strings.HasPrefix(req.URL.EscapedPath(), "/"+prefix+"/") { | ||||
| 				next.ServeHTTP(w, req) | ||||
| 				return | ||||
| 			} | ||||
| 
 | ||||
| 			rPath := strings.TrimPrefix(req.URL.RequestURI(), "/"+prefix) | ||||
| 			rPath := strings.TrimPrefix(req.URL.EscapedPath(), "/"+prefix+"/") | ||||
| 			rPath = strings.TrimPrefix(rPath, "/") | ||||
| 			if rPath == "" { | ||||
| 				http.Error(w, "file not found", 404) | ||||
| 				return | ||||
| 			} | ||||
| 			rPath = path.Clean("/" + filepath.ToSlash(rPath)) | ||||
| 			rPath = rPath[1:] | ||||
| 
 | ||||
| 			fi, err := objStore.Stat(rPath) | ||||
| 			if err == nil && httpcache.HandleTimeCache(req, w, fi) { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user