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: