forked from pool/util-linux
add util-linux-dmesg-fix-printing-of-multibyte-characters.patch (bnc#725993)
OBS-URL: https://build.opensuse.org/package/show/Base:System/util-linux?expand=0&rev=102
This commit is contained in:
parent
e11af64b64
commit
688841e354
52
util-linux-dmesg-fix-printing-of-multibyte-characters.patch
Normal file
52
util-linux-dmesg-fix-printing-of-multibyte-characters.patch
Normal file
@ -0,0 +1,52 @@
|
||||
From 131b477b61c7eb82aef913bae5aec63f019b7076 Mon Sep 17 00:00:00 2001
|
||||
From: Petr Uzel <petr.uzel@suse.cz>
|
||||
Date: Tue, 1 Nov 2011 16:17:57 +0100
|
||||
Subject: [PATCH] dmesg: fix printing of multibyte characters
|
||||
|
||||
Also make it compile if HAVE_WIDECHAR is not defined.
|
||||
|
||||
Addresses: https://bugzilla.novell.com/show_bug.cgi?id=725993
|
||||
Reported-by: Harald Koenig <koenig@linux.de>
|
||||
Signed-off-by: Petr Uzel <petr.uzel@suse.cz>
|
||||
---
|
||||
sys-utils/dmesg.c | 16 ++++++++--------
|
||||
1 files changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
Index: util-linux-2.20.1/sys-utils/dmesg.c
|
||||
===================================================================
|
||||
--- util-linux-2.20.1.orig/sys-utils/dmesg.c
|
||||
+++ util-linux-2.20.1/sys-utils/dmesg.c
|
||||
@@ -391,10 +391,11 @@ static void safe_fwrite(const char *buf,
|
||||
for (i = 0; i < size; i++) {
|
||||
const char *p = buf + i;
|
||||
int rc, hex = 0;
|
||||
+ size_t len = 1;
|
||||
|
||||
#ifdef HAVE_WIDECHAR
|
||||
wchar_t wc;
|
||||
- size_t len = mbrtowc(&wc, p, size - i, &s);
|
||||
+ len = mbrtowc(&wc, p, size - i, &s);
|
||||
|
||||
if (len == 0) /* L'\0' */
|
||||
return;
|
||||
@@ -402,16 +403,15 @@ static void safe_fwrite(const char *buf,
|
||||
if (len == (size_t)-1 || len == (size_t)-2) { /* invalid sequence */
|
||||
memset(&s, 0, sizeof (s));
|
||||
len = hex = 1;
|
||||
-
|
||||
} else if (len > 1 && !iswprint(wc)) { /* non-printable multibyte */
|
||||
hex = 1;
|
||||
- } else
|
||||
-#endif
|
||||
- {
|
||||
+ }
|
||||
+ i += len - 1;
|
||||
+#else
|
||||
if (!isprint((unsigned int) *p) &&
|
||||
!isspace((unsigned int) *p)) /* non-printable */
|
||||
hex = 1;
|
||||
- }
|
||||
+#endif
|
||||
if (hex)
|
||||
rc = fwrite_hex(p, len, out);
|
||||
else
|
@ -1,3 +1,9 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 2 09:37:12 UTC 2011 - puzel@suse.com
|
||||
|
||||
- add util-linux-dmesg-fix-printing-of-multibyte-characters.patch
|
||||
(bnc#725993)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 20 13:01:22 UTC 2011 - puzel@suse.com
|
||||
|
||||
|
@ -87,6 +87,7 @@ Patch1: util-linux-2.12r-fdisk_remove_bogus_warnings.patch
|
||||
# crypto patch
|
||||
Patch2: util-linux-2.17.1-mount_losetup_crypto.patch
|
||||
Patch5: util-linux-2.20-libmount-deps.patch
|
||||
Patch6: util-linux-dmesg-fix-printing-of-multibyte-characters.patch
|
||||
|
||||
##
|
||||
## adjtimex
|
||||
@ -189,6 +190,7 @@ Files to develop applications using the libmount library.
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
|
||||
#
|
||||
cd adjtimex-*
|
||||
|
Loading…
Reference in New Issue
Block a user