From owner-freebsd-office@freebsd.org Thu May 16 09:56:44 2019 Return-Path: Delivered-To: freebsd-office@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EBDED158F8CC for ; Thu, 16 May 2019 09:56:43 +0000 (UTC) (envelope-from pica@biaix.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 5D1E46DF44 for ; Thu, 16 May 2019 09:56:43 +0000 (UTC) (envelope-from pica@biaix.org) Received: by mailman.ysv.freebsd.org (Postfix) id 1A265158F8CA; Thu, 16 May 2019 09:56:43 +0000 (UTC) Delivered-To: office@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EA151158F8C8 for ; Thu, 16 May 2019 09:56:42 +0000 (UTC) (envelope-from pica@biaix.org) Received: from hobbes.biaix.org (43.red-2-139-164.staticip.rima-tde.net [2.139.164.43]) by mx1.freebsd.org (Postfix) with SMTP id 59E836DF41 for ; Thu, 16 May 2019 09:56:41 +0000 (UTC) (envelope-from pica@biaix.org) Received: (qmail 44261 invoked from network); 16 May 2019 09:44:30 -0000 Received: from hobbes.biaix.org (HELO grummit.biaix.org) (192.168.124.6) by hobbes.biaix.org with SMTP; 16 May 2019 09:44:30 -0000 Received: (qmail 44243 invoked by uid 1012); 16 May 2019 09:44:25 -0000 Date: Thu, 16 May 2019 11:44:25 +0200 From: Joan Picanyol i Puig To: Jan Beich Cc: office@freebsd.org, Greg Veldman , Li-Wen Hsu Subject: Re: reproducible crash after libreoffice update Message-ID: <20190516094425.GA43894@grummit.biaix.org> References: <20190514115233.GA9791@grummit.biaix.org> <20190514150206.GB11862@grummit.biaix.org> <20190514175041.GA14247@grummit.biaix.org> <20190515075117.GA23790@grummit.biaix.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.11 X-Rspamd-Queue-Id: 59E836DF41 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.99)[-0.991,0] X-BeenThere: freebsd-office@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Office applications on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 May 2019 09:56:44 -0000 * Jan Beich [20190515 13:49]: > Joan Picanyol i Puig writes: > > > * Jan Beich [20190514 21:30]: > >> Joan Picanyol i Puig writes: > > [...] > > > > Find attached a problematic spreadsheet. I get the gdb trace with > > > > libreoffice --backtrace ~/_wd/assets_rename.ods > > > > as soon as I try to enter some text in the selected cell. > > Doesn't crash here. Which cell did you select? I've tried randomly > editing both empty and non-empty cells. > > > However, I've found that setting $LANG to en_US.UTF-8 instead of > > ca_US.UTF-8 avoids the issue. > > ca_US.UTF-8 doesn't exist unlike ca_ES.UTF-8 or en_CA.UTF-8. > I've tried C (default), ca_ES.UTF-8, en_US.UTF-8 locales. Sorry, meant ca_ES.UTF-8. Might be specific to it, since I can't reproducte with i.e.: fr_FR.UTF-8. > Other than "pkg upgrade -f" or bisecting environment? If you need help > with debugging pilot errors questions@ maillist maybe a better place. > > I'm interested in whether there's an ICU bug, not getting your system > back to a working state. Fair enough. Given that I have a workaround (change LANG), I've installed icu from ports with debugging symbols to further explore. Backtrace: Thread 1 received signal SIGSEGV, Segmentation fault. icu::CollationSettings::isNumeric (this=0x0) at ./collationsettings.h:211 211 return (options & NUMERIC) != 0; #0 0x0000000800b3068c in icu::CollationSettings::isNumeric() const (this=0x0) at ./collationsettings.h:211 #1 0x0000000800b5a241 in icu::RuleBasedCollator::doCompare(char16_t const*, int, char16_t const*, int, UErrorCode&) const (this=0x81710ef40, left=0x7fffffffcda2 u"pre.conf\xffff", leftLength=8, right=0x7fffffffcd62 u"parent.conf", rightLength=11, errorCode=@0x7fffffffcd34: U_ZERO_ERROR) at rulebasedcollator.cpp:1003 #2 0x0000000800b5a02b in icu::RuleBasedCollator::compare(icu::UnicodeString const&, icu::UnicodeString const&, UErrorCode&) const (this=0x81710ef40, left=..., right=..., errorCode=@0x7fffffffcd34: U_ZERO_ERROR) at rulebasedcollator.cpp:703 #3 0x0000000800b31b39 in icu::Collator::compare(icu::UnicodeString const&, icu::UnicodeString const&) const (this=0x81710ef40, source=..., target=...) at coll.cpp:495 #4 0x000000080cebd0d2 in () at /usr/local/lib/libreoffice/program/../program/libi18npoollo.so #5 0x0000000803ae5f96 in CollatorWrapper::compareString(rtl::OUString const&, rtl::OUString const&) const () at /usr/local/lib/libreoffice/program/libutllo.so It does seem that somehow the collator's settings get lost, some more details: (gdb) up 1 #1 0x0000000800b5a241 in icu::RuleBasedCollator::doCompare (this=0x8173c41c0, left=0x7fffffffce02 u"pre.conf\xffff", leftLength=8, right=0x7fffffffcdc2 u"parent.conf", rightLength=11, errorCode=@0x7fffffffcd94: U_ZERO_ERROR) at rulebasedcollator.cpp:1003 1003 UBool numeric = settings->isNumeric(); (gdb) print *settings Cannot access memory at address 0x0 (gdb) up 1 #2 0x0000000800b5a02b in icu::RuleBasedCollator::compare (this=0x81734e7c0, left=..., right=..., errorCode=@0x7fffffffcd64: U_ZERO_ERROR) at rulebasedcollator.cpp:703 703 return doCompare(left.getBuffer(), left.length(), (gdb) print this $1 = (const icu::RuleBasedCollator *) 0x81734e7c0 (gdb) print *this $2 = { = { = { = {}, _vptr$UObject = 0x800ce7930 }, }, data = 0x0, settings = 0x0, tailoring = 0x0, cacheEntry = 0x0, validLocale = { = { = {}, _vptr$UObject = 0x800f6cb40 }, language = "\000\000\000\000\000\000\000\000\340y\235\017", script = "\000\000\000\000", , country = "\000\f\b", variantBegin = 0, fullName = 0x81734e818 "", fullNameBuffer = '\000' , "\377\377\377\377\377\377\377", '\000' , "B\342\237\001\b", '\000' , "\200\242\322\f\b\000\000\000\000\000\000\000", baseName = 0x81734e818 "", fIsBogus = 0 '\000'}, explicitlySetAttributes = 0, actualLocaleIsSameAsValid = 0 '\000'} (gdb) up 1 #3 0x0000000800b31b39 in icu::Collator::compare (this=0x8173c41c0, source=..., target=...) at coll.cpp:495 495 return (EComparisonResult)compare(source, target, ec); (gdb) print *this $1 = { = { = {}, _vptr$UObject = 0x800ce7930 }, } (gdb) Don't know how to further nail this down, open to handholding if you are interested. keep up the good work -- joan