From b0b297bc56f9722cfb2b337854a3e5f151bf7b56 Mon Sep 17 00:00:00 2001 From: eleksir Date: Wed, 10 Jan 2024 22:27:28 +0300 Subject: [PATCH] Omit type casting, hopefully it can fix bug with swap calculation, also do not explicitly disable cgo, it can be usefull in some cases --- Makefile | 2 +- memory.go | 22 +++++++++++----------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Makefile b/Makefile index 348f811..89bd3d6 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,7 @@ all: clean build ## This target compiles binary build: - CGO_ENABLED=0 go build ${BUILDOPTS} -o ${BINARY} ${FILELIST} + go build ${BUILDOPTS} -o ${BINARY} ${FILELIST} ## Remove binary with golang compiler' means diff --git a/memory.go b/memory.go index 9fc9e75..dc9dbe0 100644 --- a/memory.go +++ b/memory.go @@ -9,9 +9,9 @@ import ( // Mem struct with mem stats. type Mem struct { - Usedpct int64 - Shared int64 - Swap int64 + Usedpct uint64 + Shared uint64 + Swap uint64 } // Memory stores string with mem stats for i3bar. @@ -39,17 +39,17 @@ func UpdateMemStats() { } if Conf.Mem.ShowSwap { - if Memory.Usedpct != int64(v.UsedPercent) || Memory.Shared != int64(v.Shared/1024/1024) || - Memory.Swap != int64(v.SwapTotal-v.SwapFree) { - Memory.Usedpct = int64(v.UsedPercent) - Memory.Shared = int64(v.Shared / 1024 / 1024) - Memory.Swap = int64(sw.Total - sw.Free) + if Memory.Usedpct != uint64(v.UsedPercent) || Memory.Shared != v.Shared/1024/1024 || + Memory.Swap != v.SwapTotal-v.SwapFree { + Memory.Usedpct = uint64(v.UsedPercent) + Memory.Shared = v.Shared / 1024 / 1024 + Memory.Swap = sw.Used UpdateReady <- true } } else { - if Memory.Usedpct != int64(v.UsedPercent) || Memory.Shared != int64(v.Shared/1024/1024) { - Memory.Usedpct = int64(v.UsedPercent) - Memory.Shared = int64(v.Shared / 1024 / 1024) + if Memory.Usedpct != uint64(v.UsedPercent) || Memory.Shared != v.Shared/1024/1024 { + Memory.Usedpct = uint64(v.UsedPercent) + Memory.Shared = v.Shared / 1024 / 1024 UpdateReady <- true } }