mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-24 07:28:13 +02:00
Purge du code de compatibilite jean, base bbolt et arborescence ajean
- suppression des migrations d'agencement, d'unites et de dossier de donnees - store bbolt unique (ajean.db) : config, prefs, conversation, cles, drapeaux - arborescence backends/ bin/ presets/ memory/ models/ workspace/ - plus aucune variable, unite ou asset nomme jean
This commit is contained in:
1 parent
081a88c846
commit
2455d9f402
78 files changed
+1160
-2293
No files matched your search
@@ -0,0 +1,32 @@
|
||||
package ajean
|
||||
|
||||
// sys_disk_windows.go — espace libre d'un volume via GetDiskFreeSpaceExW. On
|
||||
// veut l'espace réellement disponible pour l'utilisateur courant (quotas
|
||||
// compris), donc le premier paramètre de sortie, pas le total du volume.
|
||||
|
||||
import (
|
||||
"syscall"
|
||||
"unsafe"
|
||||
)
|
||||
|
||||
var procGetDiskFreeSpaceExW = syscall.NewLazyDLL("kernel32.dll").NewProc("GetDiskFreeSpaceExW")
|
||||
|
||||
// diskFreeAt renvoie les octets libres du volume contenant dir, ou -1 si la
|
||||
// mesure échoue. dir doit exister (l'appelant remonte les parents au besoin).
|
||||
func diskFreeAt(dir string) int64 {
|
||||
p, err := syscall.UTF16PtrFromString(dir)
|
||||
if err != nil {
|
||||
return -1
|
||||
}
|
||||
var free, total, totalFree uint64
|
||||
r, _, _ := procGetDiskFreeSpaceExW.Call(
|
||||
uintptr(unsafe.Pointer(p)),
|
||||
uintptr(unsafe.Pointer(&free)),
|
||||
uintptr(unsafe.Pointer(&total)),
|
||||
uintptr(unsafe.Pointer(&totalFree)),
|
||||
)
|
||||
if r == 0 || free > 1<<62 {
|
||||
return -1
|
||||
}
|
||||
return int64(free)
|
||||
}
|
||||
Reference in new issue
Block a user