ceremonyclient/pebble/vfs/disk_usage_windows.go
Cassandra Heart 2e2a1e4789
v1.2.0 (#31)
2024-01-03 01:31:42 -06:00

23 lines
601 B
Go

// Copyright 2020 The LevelDB-Go and Pebble Authors. All rights reserved. Use
// of this source code is governed by a BSD-style license that can be found in
// the LICENSE file.
//go:build windows
// +build windows
package vfs
import "golang.org/x/sys/windows"
func (defaultFS) GetDiskUsage(path string) (DiskUsage, error) {
p, err := windows.UTF16PtrFromString(path)
if err != nil {
return DiskUsage{}, err
}
var freeBytes uint64
du := DiskUsage{}
err = windows.GetDiskFreeSpaceEx(p, &du.AvailBytes, &du.TotalBytes, &freeBytes)
du.UsedBytes = du.TotalBytes - freeBytes
return du, err
}