systemd/0006-rfkill-add-some-casts-to-silence-Werror-sign-compare.patch
Lukas Nykryn 1cc7dd62a1 systemd-248-5
Resolves: #1931710
2021-05-17 07:59:40 +02:00

39 lines
2.1 KiB
Diff

From 4b396f2546551c81621531d913e0dfab41be522c Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@microsoft.com>
Date: Tue, 13 Apr 2021 13:17:53 +0100
Subject: [PATCH] rfkill: add some casts to silence -Werror=sign-compare
(cherry picked from commit ab1aa6368a883bce88e3162fee2bea14aacedf23)
Resolves: #1931710
---
src/rfkill/rfkill.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/rfkill/rfkill.c b/src/rfkill/rfkill.c
index e2d1a1be5f..bff1a2886b 100644
--- a/src/rfkill/rfkill.c
+++ b/src/rfkill/rfkill.c
@@ -177,7 +177,7 @@ static int load_state(Context *c, const struct rfkill_event *event) {
ssize_t l = write(c->rfkill_fd, &we, sizeof we);
if (l < 0)
return log_error_errno(errno, "Failed to restore rfkill state for %i: %m", event->idx);
- if (l < RFKILL_EVENT_SIZE_V1)
+ if ((size_t)l < RFKILL_EVENT_SIZE_V1) /* l cannot be < 0 here. Cast to fix -Werror=sign-compare */
return log_error_errno(SYNTHETIC_ERRNO(EIO),
"Couldn't write rfkill event structure, too short (wrote %zd of %zu bytes).",
l, sizeof we);
@@ -335,9 +335,9 @@ static int run(int argc, char *argv[]) {
break;
}
- if (l < RFKILL_EVENT_SIZE_V1)
- return log_error_errno(SYNTHETIC_ERRNO(EIO), "Short read of struct rfkill_event: (%zd < %d)",
- l, RFKILL_EVENT_SIZE_V1);
+ if ((size_t)l < RFKILL_EVENT_SIZE_V1) /* l cannot be < 0 here. Cast to fix -Werror=sign-compare */
+ return log_error_errno(SYNTHETIC_ERRNO(EIO), "Short read of struct rfkill_event: (%zd < %zu)",
+ l, (size_t) RFKILL_EVENT_SIZE_V1); /* Casting necessary to make compiling with different kernel versions happy */
log_debug("Reading struct rfkill_event: got %zd bytes.", l);
/* The event structure has more fields. We only care about the first few, so it's OK if we