mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-29 06:27:05 +00:00
fix: handle socket file detection on Windows
Update socket file detection logic to use os.Stat as per upstream Go fix for https://github.com/golang/go/issues/33357. This resolves the issue where socket files could not be properly identified on Windows systems.
This commit is contained in:
parent
7ea3d0245a
commit
4060ee60c1
@ -192,15 +192,12 @@ func (m *ManagerImpl) CleanupPluginDirectory(dir string) error {
|
|||||||
if filePath == m.checkpointFile() {
|
if filePath == m.checkpointFile() {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
// TODO: Until the bug - https://github.com/golang/go/issues/33357 is fixed, os.stat wouldn't return the
|
stat, err := os.Stat(filePath)
|
||||||
// right mode(socket) on windows. Hence deleting the file, without checking whether
|
|
||||||
// its a socket, on windows.
|
|
||||||
stat, err := os.Lstat(filePath)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
klog.ErrorS(err, "Failed to stat file", "path", filePath)
|
klog.ErrorS(err, "Failed to stat file", "path", filePath)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if stat.IsDir() {
|
if stat.IsDir() || stat.Mode()&os.ModeSocket == 0 {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
err = os.RemoveAll(filePath)
|
err = os.RemoveAll(filePath)
|
||||||
|
Loading…
Reference in New Issue
Block a user