From 3415d8197cdedfaced9aab43e5e5ee0bc02a94a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=80=9A=E6=B4=B2?= Date: Thu, 4 Jul 2024 13:49:18 +0800 Subject: [PATCH] PhysicalMemory: don't print `(null)` in property `locator` --- src/detection/physicalmemory/physicalmemory_linux.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/detection/physicalmemory/physicalmemory_linux.c b/src/detection/physicalmemory/physicalmemory_linux.c index a1f0de70d..1eb971e8b 100644 --- a/src/detection/physicalmemory/physicalmemory_linux.c +++ b/src/detection/physicalmemory/physicalmemory_linux.c @@ -113,7 +113,15 @@ const char* ffDetectPhysicalMemory(FFlist* result) } } - ffStrbufSetF(&device->locator, "%s/%s", ffSmbiosLocateString(strings, data->BankLocator), ffSmbiosLocateString(strings, data->DeviceLocator)); + // https://github.com/fastfetch-cli/fastfetch/issues/1051#issuecomment-2206687345 + const char* lbank = ffSmbiosLocateString(strings, data->BankLocator); + const char* ldevice = ffSmbiosLocateString(strings, data->DeviceLocator); + if (lbank && ldevice) + ffStrbufSetF(&device->locator, "%s/%s", lbank, ldevice); + else if (lbank) + ffStrbufSetS(&device->locator, lbank); + else if (ldevice) + ffStrbufSetS(&device->locator, ldevice); switch (data->FormFactor) {