| // Copyright 2022 The Go Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| // Package safefilepath manipulates operating-system file paths. |
| package safefilepath |
| |
| import ( |
| "errors" |
| "io/fs" |
| ) |
| |
| var errInvalidPath = errors.New("invalid path") |
| |
| // Localize is filepath.Localize. |
| // |
| // It is implemented in this package to avoid a dependency cycle |
| // between os and file/filepath. |
| // |
| // Tests for this function are in path/filepath. |
| func Localize(path string) (string, error) { |
| if !fs.ValidPath(path) { |
| return "", errInvalidPath |
| } |
| return localize(path) |
| } |