Accepting request 770650 from home:wolfi323:branches:LibreOffice:Factory
- Add soffice.sh_Avoid-exporting-empty-LC_ALL.patch to fix broken handling of non-ASCII characters in the KDE filedialog (boo#1161816) OBS-URL: https://build.opensuse.org/request/show/770650 OBS-URL: https://build.opensuse.org/package/show/LibreOffice:Factory/libreoffice?expand=0&rev=856
This commit is contained in:
parent
1473dee814
commit
a38d09a2b1
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Feb 6 09:55:01 UTC 2020 - Wolfgang Bauer <wbauer@tmo.at>
|
||||||
|
|
||||||
|
- Add soffice.sh_Avoid-exporting-empty-LC_ALL.patch to fix broken
|
||||||
|
handling of non-ASCII characters in the KDE filedialog
|
||||||
|
(boo#1161816)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Jan 30 10:24:05 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
|
Thu Jan 30 10:24:05 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
|
||||||
|
|
||||||
|
@ -100,6 +100,8 @@ Patch2: nlpsolver-no-broken-help.diff
|
|||||||
Patch3: mediawiki-no-broken-help.diff
|
Patch3: mediawiki-no-broken-help.diff
|
||||||
# PATCH-FIX-UPSTREAM lo-Fix-build-with-poppler-0.83.patch
|
# PATCH-FIX-UPSTREAM lo-Fix-build-with-poppler-0.83.patch
|
||||||
Patch4: lo-Fix-build-with-poppler-0.83.patch
|
Patch4: lo-Fix-build-with-poppler-0.83.patch
|
||||||
|
# PATCH-FIX-UPSTREAM soffice.sh_Avoid-exporting-empty-LC_ALL.patch
|
||||||
|
Patch5: soffice.sh_Avoid-exporting-empty-LC_ALL.patch
|
||||||
# try to save space by using hardlinks
|
# try to save space by using hardlinks
|
||||||
Patch990: install-with-hardlinks.diff
|
Patch990: install-with-hardlinks.diff
|
||||||
# save time by relying on rpm check rather than doing stupid find+grep
|
# save time by relying on rpm check rather than doing stupid find+grep
|
||||||
@ -956,6 +958,7 @@ Provides %{langname} translations and additional resources (help files, etc.) fo
|
|||||||
%patch2
|
%patch2
|
||||||
%patch3
|
%patch3
|
||||||
%patch4 -p1
|
%patch4 -p1
|
||||||
|
%patch5 -p1
|
||||||
%patch990 -p1
|
%patch990 -p1
|
||||||
%patch991 -p1
|
%patch991 -p1
|
||||||
|
|
||||||
|
72
soffice.sh_Avoid-exporting-empty-LC_ALL.patch
Normal file
72
soffice.sh_Avoid-exporting-empty-LC_ALL.patch
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
From f5b7139b8eb1296e28d0983f35c3cec11d215298 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michael Weghorn <m.weghorn@posteo.de>
|
||||||
|
Date: Wed, 05 Feb 2020 09:40:56 +0100
|
||||||
|
Subject: [PATCH] tdf#130080 soffice.sh: Avoid exporting empty LC_ALL
|
||||||
|
|
||||||
|
The previous way of doing
|
||||||
|
|
||||||
|
LO_SAVE_LC_ALL="$LC_ALL"
|
||||||
|
LC_ALL=C
|
||||||
|
export LC_ALL
|
||||||
|
# ... (call some tools,...)
|
||||||
|
LC_ALL="$LO_SAVE_LC_ALL"
|
||||||
|
|
||||||
|
resulted in the LC_ALL environment variable explicity being
|
||||||
|
set to an empty string in case it was not set at all previously.
|
||||||
|
|
||||||
|
For some reason, an LC_ALL explicitly set to an empty string
|
||||||
|
(other than an unset LC_ALL) makes the system ICU on various
|
||||||
|
Linux distributions assume an "US-ASCII" encoding, even if the
|
||||||
|
locale is otherwise configured to be a UTF-8 one.
|
||||||
|
Since the corresponding detection from ICU is used in the
|
||||||
|
KF5/Qt stack, that resulted in the Plasma-native file picker
|
||||||
|
assuming an ASCII-encoding, and thus having problems with
|
||||||
|
files containing non-ASCII characters.
|
||||||
|
|
||||||
|
To avoid this, don't export LC_ALL if unset or set to an
|
||||||
|
empty string.
|
||||||
|
|
||||||
|
A big thanks to frinring on IRC #kde-devel for the analysis
|
||||||
|
of why the Plasma-native file picker is affected by LC_ALL being
|
||||||
|
set to an empty string!
|
||||||
|
|
||||||
|
I could also reproduce that the following sample program run
|
||||||
|
with 'LC_ALL=' on KDE Neon Developer edition printed "US-ASCII"
|
||||||
|
when using the system ICU, while it printed "UTF-8" when using
|
||||||
|
a self-built ICU as of current master (commit
|
||||||
|
d6b88d49e3be7096baf3828776c2b482a8ed1780) instead, but did not
|
||||||
|
further investigate why:
|
||||||
|
|
||||||
|
#include <unicode/ucnv.h>
|
||||||
|
#include <iostream>
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
std::cout << ucnv_getDefaultName();
|
||||||
|
}
|
||||||
|
|
||||||
|
Change-Id: Idee88f200b6edecdb2633ed6e6fa70b370ffcf0c
|
||||||
|
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88003
|
||||||
|
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
||||||
|
Tested-by: Jenkins
|
||||||
|
(cherry picked from commit 25649502e08a52087dea5e482d34a1d4150f0930)
|
||||||
|
---
|
||||||
|
|
||||||
|
diff --git a/desktop/scripts/soffice.sh b/desktop/scripts/soffice.sh
|
||||||
|
index 026f7f0..415ea04 100755
|
||||||
|
--- a/desktop/scripts/soffice.sh
|
||||||
|
+++ b/desktop/scripts/soffice.sh
|
||||||
|
@@ -169,8 +169,12 @@
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
-# restore locale setting
|
||||||
|
-LC_ALL="$LO_SAVE_LC_ALL"
|
||||||
|
+# restore locale setting, avoiding to export empty LC_ALL, s. tdf#130080
|
||||||
|
+if [ -n "$LO_SAVE_LC_ALL" ]; then
|
||||||
|
+ LC_ALL="$LO_SAVE_LC_ALL"
|
||||||
|
+else
|
||||||
|
+ unset LC_ALL
|
||||||
|
+fi
|
||||||
|
|
||||||
|
# run soffice.bin directly when you want to get the backtrace
|
||||||
|
if [ -n "$GDBTRACECHECK" ] ; then
|
Loading…
x
Reference in New Issue
Block a user