]> mj.ucw.cz Git - pciutils.git/commitdiff
libpci: ecam: Fix discards const from pointer target
authorRudi Heitbaum <rudi@heitbaum.com>
Sun, 22 Feb 2026 00:46:31 +0000 (00:46 +0000)
committerMartin Mareš <mj@ucw.cz>
Sun, 5 Apr 2026 16:42:25 +0000 (18:42 +0200)
endptr is used as the return from strchr(addrs, ',') which is a const
char. endptr is subsequently used as a pointer to the token which is
char. Fix by not reusing endptr, but declare addrsptr as a const char *
pointer for use in the first case addressing the warning.

fixes:
    ecam.c: In function 'parse_next_addrs':
    ecam.c:620:10: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
      620 |   endptr = strchr(addrs, ',');
          |          ^

Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com>
lib/ecam.c

index de8ecb51e6c77a6272600290592d4679dc230ac2..65edd826534b46680183147f911569b7ba7d4f27 100644 (file)
@@ -603,7 +603,7 @@ static int
 parse_next_addrs(const char *addrs, const char **next, int *domain, u8 *start_bus, u8 *end_bus, u64 *addr, u32 *length)
 {
   u64 ullnum;
-  const char *sep1, *sep2;
+  const char *addrsptr, *sep1, *sep2;
   int addr_len;
   char *endptr;
   long num;
@@ -617,14 +617,14 @@ parse_next_addrs(const char *addrs, const char **next, int *domain, u8 *start_bu
       return 0;
     }
 
-  endptr = strchr(addrs, ',');
-  if (endptr)
-    addr_len = endptr - addrs;
+  addrsptr = strchr(addrs, ',');
+  if (addrsptr)
+    addr_len = addrsptr - addrs;
   else
     addr_len = strlen(addrs);
 
   if (next)
-    *next = endptr ? (endptr+1) : NULL;
+    *next = addrsptr ? (addrsptr+1) : NULL;
 
   sep1 = memchr(addrs, ':', addr_len);
   if (!sep1)