[systemd-devel] [PATCH] udev: fix printf specifiers

Shawn Landden shawn at churchofgit.com
Sat Dec 14 18:48:34 PST 2013


This keeps the same behavior, which is wierd.
---
 src/udev/udev-builtin-path_id.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/udev/udev-builtin-path_id.c b/src/udev/udev-builtin-path_id.c
index 7476330..7543a11 100644
--- a/src/udev/udev-builtin-path_id.c
+++ b/src/udev/udev-builtin-path_id.c
@@ -71,9 +71,9 @@ static int format_lun_number(struct udev_device *dev, char **path)
 
         /* address method 0, peripheral device addressing with bus id of zero */
         if (lun < 256)
-                return path_prepend(path, "lun-%d", lun);
+                return path_prepend(path, "lun-%hhu", (unsigned char) lun);
         /* handle all other lun addressing methods by using a variant of the original lun format */
-        return path_prepend(path, "lun-0x%04x%04x00000000", (lun & 0xffff), (lun >> 16) & 0xffff);
+        return path_prepend(path, "lun-0x%04hx%04hx00000000", (unsigned short)(lun & 0xffff), (unsigned short)(lun >> 16) & 0xffff);
 }
 
 static struct udev_device *skip_subsystem(struct udev_device *dev, const char *subsys)
-- 
1.8.5.1



More information about the systemd-devel mailing list