curses: fix wchar_t printf warning

On some systems wchar_t is "long int", on others just "int".
So go cast to "long int" and adjust the printf format accordingly.

Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20190402073018.17747-1-kraxel@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Gerd Hoffmann 2019-04-02 09:30:18 +02:00 committed by Peter Maydell
parent 9e4a484b4a
commit e1be98540e

View file

@ -453,8 +453,8 @@ static uint16_t get_ucs(wchar_t wch, iconv_t conv)
swch = sizeof(wch);
if (iconv(conv, &pwch, &swch, &pch, &sch) == (size_t) -1) {
fprintf(stderr, "Could not convert 0x%02x from WCHAR_T to UCS-2: %s\n",
wch, strerror(errno));
fprintf(stderr, "Could not convert 0x%02lx from WCHAR_T to UCS-2: %s\n",
(unsigned long)wch, strerror(errno));
return 0xFFFD;
}