mirror of
https://gitea.com/Lydanne/buildx.git
synced 2025-05-18 00:47:48 +08:00
30 lines
759 B
Go
30 lines
759 B
Go
package system
|
|
|
|
import (
|
|
"path/filepath"
|
|
"strings"
|
|
)
|
|
|
|
// DefaultSystemVolumeName is the default system volume label on Windows
|
|
const DefaultSystemVolumeName = "C:"
|
|
|
|
// IsAbsolutePath prepends the default system volume label
|
|
// to the path that is presumed absolute, and then calls filepath.IsAbs
|
|
func IsAbsolutePath(path string) bool {
|
|
path = filepath.Clean(path)
|
|
if strings.HasPrefix(path, "\\") {
|
|
path = DefaultSystemVolumeName + path
|
|
}
|
|
return filepath.IsAbs(path)
|
|
}
|
|
|
|
// GetAbsolutePath returns an absolute path rooted
|
|
// to C:\\ on Windows.
|
|
func GetAbsolutePath(path string) string {
|
|
path = filepath.Clean(path)
|
|
if len(path) >= 2 && strings.EqualFold(path[:2], DefaultSystemVolumeName) {
|
|
return path
|
|
}
|
|
return DefaultSystemVolumeName + path
|
|
}
|