[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1016953: intel-media-driver: FTBFS on i386: error: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘uint64_t’



Control: tags -1 + patch

On Wed, 10 Aug 2022 at 15:07:09 +0100, Simon McVittie wrote:
> The solution might be as simple as including <inttypes.h> or <cinttypes>,
> and using "%" PRIu64 instead of "%lu".

Yes, that seems to work.

    smcv
From: Simon McVittie <smcv@debian.org>
Date: Wed, 10 Aug 2022 14:49:50 +0100
Subject: media_softlet: Use PRIu64 to print 64-bit integer

%lu is appropriate for a 64-bit integer on x86_64, but not on IA32.

Bug-Debian: https://bugs.debian.org/1016953
Signed-off-by: Simon McVittie <smcv@debian.org>
---
 media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp b/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp
index bd1c5d1..fdd81ed 100644
--- a/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp
+++ b/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp
@@ -28,6 +28,7 @@
 #include <stdlib.h>    // atoi
 #include <string.h>    // strlen, strcat, etc.
 #include <errno.h>     // strerror(errno)
+#include <inttypes.h>  // PRIu64
 #include <time.h>      // get_clocktime
 #include <dlfcn.h>     // dlopen, dlsym, dlclose
 #include <unistd.h>
@@ -1020,7 +1021,7 @@ MOS_STATUS MosUtilitiesSpecificNext::UserFeatureDumpDataToFile(const char *szFil
                         *(uint32_t*)(pKeyTmp->pElem->pValueArray[j].ulValueBuf));
                     break;
                 case UF_QWORD:
-                    fprintf(File, "\t\t\t%lu\n",
+                    fprintf(File, "\t\t\t%" PRIu64 "\n",
                         *(uint64_t*)(pKeyTmp->pElem->pValueArray[j].ulValueBuf));
                     break;
                 default:

Reply to: