Resolves: #1418505 - fold: preserve new-lines in mutlibyte text
This commit is contained in:
parent
5e77c9c1c9
commit
f1a024cc09
83
coreutils-i18n-fold-newline.patch
Normal file
83
coreutils-i18n-fold-newline.patch
Normal file
@ -0,0 +1,83 @@
|
||||
From ff424639fe863cbd6963add1a79b97290c1606c6 Mon Sep 17 00:00:00 2001
|
||||
From: rpm-build <rpm-build>
|
||||
Date: Fri, 3 Feb 2017 12:26:53 +0100
|
||||
Subject: [PATCH] fold.c: preserve new-lines in mutlibyte text
|
||||
|
||||
---
|
||||
src/fold.c | 55 +++++++++++++++++++++++++++----------------------------
|
||||
1 file changed, 27 insertions(+), 28 deletions(-)
|
||||
|
||||
diff --git a/src/fold.c b/src/fold.c
|
||||
index d23edd5..8c232a7 100644
|
||||
--- a/src/fold.c
|
||||
+++ b/src/fold.c
|
||||
@@ -342,39 +342,38 @@ fold_multibyte_text (FILE *istream, size_t width, int *saved_errno)
|
||||
}
|
||||
|
||||
rescan:
|
||||
- if (operating_mode == byte_mode) /* byte mode */
|
||||
+ if (convfail)
|
||||
+ increment = 1;
|
||||
+ else if (wc == L'\n')
|
||||
+ {
|
||||
+ /* preserve newline */
|
||||
+ fwrite (line_out, sizeof(char), offset_out, stdout);
|
||||
+ START_NEW_LINE;
|
||||
+ continue;
|
||||
+ }
|
||||
+ else if (operating_mode == byte_mode) /* byte mode */
|
||||
increment = mblength;
|
||||
else if (operating_mode == character_mode) /* character mode */
|
||||
increment = 1;
|
||||
- else /* column mode */
|
||||
+ else /* column mode */
|
||||
{
|
||||
- if (convfail)
|
||||
- increment = 1;
|
||||
- else
|
||||
+ switch (wc)
|
||||
{
|
||||
- switch (wc)
|
||||
- {
|
||||
- case L'\n':
|
||||
- fwrite (line_out, sizeof(char), offset_out, stdout);
|
||||
- START_NEW_LINE;
|
||||
- continue;
|
||||
-
|
||||
- case L'\b':
|
||||
- increment = (column > 0) ? -1 : 0;
|
||||
- break;
|
||||
-
|
||||
- case L'\r':
|
||||
- increment = -1 * column;
|
||||
- break;
|
||||
-
|
||||
- case L'\t':
|
||||
- increment = 8 - column % 8;
|
||||
- break;
|
||||
-
|
||||
- default:
|
||||
- increment = wcwidth (wc);
|
||||
- increment = (increment < 0) ? 0 : increment;
|
||||
- }
|
||||
+ case L'\b':
|
||||
+ increment = (column > 0) ? -1 : 0;
|
||||
+ break;
|
||||
+
|
||||
+ case L'\r':
|
||||
+ increment = -1 * column;
|
||||
+ break;
|
||||
+
|
||||
+ case L'\t':
|
||||
+ increment = 8 - column % 8;
|
||||
+ break;
|
||||
+
|
||||
+ default:
|
||||
+ increment = wcwidth (wc);
|
||||
+ increment = (increment < 0) ? 0 : increment;
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,7 +1,7 @@
|
||||
Summary: A set of basic GNU tools commonly used in shell scripts
|
||||
Name: coreutils
|
||||
Version: 8.26
|
||||
Release: 5%{?dist}
|
||||
Release: 6%{?dist}
|
||||
License: GPLv3+
|
||||
Group: System Environment/Base
|
||||
Url: http://www.gnu.org/software/coreutils/
|
||||
@ -52,6 +52,8 @@ Patch805: coreutils-i18n-fix2-expand-unexpand.patch
|
||||
Patch806: coreutils-i18n-un-expand-BOM.patch
|
||||
# make 'sort -h' work for arbitrary column even when using UTF-8 locales
|
||||
Patch807: coreutils-i18n-sort-human.patch
|
||||
# fold: preserve new-lines in mutlibyte text (#1418505)
|
||||
Patch808: coreutils-i18n-fold-newline.patch
|
||||
|
||||
#getgrouplist() patch from Ulrich Drepper.
|
||||
Patch908: coreutils-getgrouplist.patch
|
||||
@ -299,6 +301,9 @@ fi
|
||||
%license COPYING
|
||||
|
||||
%changelog
|
||||
* Fri Feb 03 2017 Kamil Dudka <kdudka@redhat.com> - 8.26-6
|
||||
- fold: preserve new-lines in mutlibyte text (#1418505)
|
||||
|
||||
* Mon Jan 23 2017 Kamil Dudka <kdudka@redhat.com> - 8.26-5
|
||||
- date: fix TZ= regression (patch by Pádraig Brady)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user