Bug 454399 - kmymoney crashes upon opening
Summary: kmymoney crashes upon opening
Status: REPORTED
Alias: None
Product: kmymoney
Classification: Applications
Component: general (show other bugs)
Version: 5.1.2
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: KMyMoney Devel Mailing List
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2022-05-25 16:50 UTC by Richard Leszczynski
Modified: 2022-05-27 13:00 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (16.24 KB, text/plain)
2022-05-25 18:23 UTC, Manfred
Details
New crash information added by DrKonqi (6.43 KB, text/plain)
2022-05-26 15:09 UTC, dad1968
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Richard Leszczynski 2022-05-25 16:50:30 UTC
Application: kmymoney (5.1.2)

Qt Version: 5.15.2
Frameworks Version: 5.94.0
Operating System: Linux 5.17.9-1-default x86_64
Windowing System: X11
Distribution: "openSUSE Tumbleweed"
DrKonqi: 5.24.5 [KCrashBackend]

-- Information about the crash:
- What I was doing when the application crashed:
After updating OpenSuSE Tumbleweed on 25/05/2022 I opened kmymoney via the KDE Application Launcher and it crashed. This is 100% repeatable.

The crash can be reproduced every time.

-- Backtrace:
Application: KMyMoney (kmymoney), signal: Aborted

[KCrash Handler]
#4  0x00007f3564fb76ac in __pthread_kill_implementation () from /lib64/libc.so.6
#5  0x00007f3564f646f6 in raise () from /lib64/libc.so.6
#6  0x00007f3564f4d814 in abort () from /lib64/libc.so.6
#7  0x00007f3564faa79e in __libc_message () from /lib64/libc.so.6
#8  0x00007f356504f87a in __fortify_fail () from /lib64/libc.so.6
#9  0x00007f356504de36 in __chk_fail () from /lib64/libc.so.6
#10 0x00007f355767f446 in memcpy (__len=3, __src=0x56297b2b1220, __dest=0x56297b2b0690) at /usr/include/bits/string_fortified.h:29
#11 gnutls_realloc_zero (data=0x56297b2b1220, old_size=3, new_size=2) at nettle/init.c:130
#12 0x00007f355cb18a60 in __gmpz_get_str (res_str=<optimized out>, base=<optimized out>, x=<optimized out>) at mpz/get_str.c:111
#13 0x00007f356759a756 in __gmp_expr<__mpz_struct [1], __mpz_struct [1]>::get_str[abi:cxx11](int) const (base=10, this=0x7ffcc3f1aa40) at /usr/include/gmpxx.h:1702
#14 MyMoneyMoney::formatMoney (this=this@entry=0x7ffcc3f1aba0, currency=..., prec=2, showThousandSeparator=showThousandSeparator@entry=true) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/mymoney/mymoneymoney.cpp:267
#15 0x00007f356772fb45 in EquitiesModel::Private::setAccountBalanceAndValue (this=0x56297a1b14d0, node=0x56297b22c7c0, row=4, account=..., columns=...) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/models/equitiesmodel.cpp:152
#16 0x00007f3567730501 in EquitiesModel::Private::setAccountData (this=0x56297a1b14d0, node=0x56297b22c7c0, row=4, account=..., columns=...) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/models/equitiesmodel.cpp:104
#17 0x00007f35677309a9 in EquitiesModel::Private::loadInvestmentAccount (invAcc=..., node=0x56297a1429f0, this=0x56297a1b14d0) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/models/equitiesmodel.cpp:55
#18 EquitiesModel::load (this=0x56297a3fad30) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/models/equitiesmodel.cpp:215
#19 0x00007f3567731df7 in Models::fileOpened (this=0x7f3567744080 <(anonymous namespace)::Q_QGS_models::innerFunction()::holder>) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/models/models.cpp:213
#20 0x00005629792e03f2 in KMyMoneyApp::Private::fileAction (this=0x562979f3f930, action=<optimized out>) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/kmymoney.cpp:3597
#21 0x00005629792d9146 in KMyMoneyApp::slotFileOpenRecent (this=0x562979f5bc70, url=...) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/kmymoney.cpp:3457
#22 0x000056297948890b in runKMyMoney(QApplication&, std::unique_ptr<QSplashScreen, std::default_delete<QSplashScreen> >, QUrl const&, bool) [clone .constprop.0] (splash=std::unique_ptr<QSplashScreen> = {...}, file=..., noFile=<optimized out>, a=...) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/main.cpp:344
#23 0x00005629792ba99a in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/main.cpp:272
[Inferior 1 (process 3107) detached]

Possible duplicates by query: bug 421299, bug 326732, bug 285922, bug 283149, bug 254423.

Reported using DrKonqi
Comment 1 Jeremy Whiting 2022-05-25 16:56:25 UTC
Looks like another gnutls caused one. that gnutls_zero_free in the stack trace points to it. Try downgrading gnutls to 3.7.4 if possible and see if that still crashes.

BTW, from reading https://gitlab.com/gnutls/gnutls/-/milestones/35#tab-issues I think the fix in 3.7.6 wont come out until July so it may be useful to see if opensuse will add the patch here: https://gitlab.com/gnutls/gnutls/-/merge_requests/1592 to gnutls 3.7.5 in the mean time.
Comment 2 Jeremy Whiting 2022-05-25 17:08:22 UTC
https://github.com/archlinux/svntogit-packages/commit/cf4d5e8c600e32251eeacbd08c67f78bd4a3adb3 has the patched arch changes in 3.7.5-2 that opensuse and other distros may want to add to their patches.
Comment 3 Manfred 2022-05-25 18:23:12 UTC
Created attachment 149218 [details]
New crash information added by DrKonqi

kmymoney (5.1.2) using Qt 5.15.2

- What I was doing when the application crashed:
I started KMyMoney and when opening an account a black rectangle comes up and KMyMoney crashes every time.

-- Backtrace (Reduced):
#10 0x00007ff5e9f72446 in memcpy (__len=3, __src=0x55d5e79f9d80, __dest=0x55d5e7a022c0) at /usr/include/bits/string_fortified.h:29
#11 gnutls_realloc_zero (data=0x55d5e79f9d80, old_size=3, new_size=2) at nettle/init.c:130
#12 0x00007ff5f1337a60 in __gmpz_get_str (res_str=<optimized out>, base=<optimized out>, x=<optimized out>) at mpz/get_str.c:111
#13 0x00007ff5fbdb9414 in __gmp_expr<__mpz_struct [1], __mpz_struct [1]>::get_str[abi:cxx11](int) const (base=10, this=0x7ffdf9bfb660) at /usr/include/gmpxx.h:1702
#14 MyMoneyMoney::formatMoney(QString const&, int, bool) const (this=<optimized out>, currency=<optimized out>, prec=2, showThousandSeparator=<optimized out>) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/mymoney/mymoneymoney.cpp:253
Comment 4 dad1968 2022-05-26 15:09:14 UTC
Created attachment 149236 [details]
New crash information added by DrKonqi

kmymoney (5.1.2) using Qt 5.15.2

Same issue, openSuSE Tumbleweed, kernel 5.18.0-2.g3352b92-default. Already reinstalled the application, same problem. There are no new updates from openSuSE available.

-- Backtrace (Reduced):
#10 0x00007fb22d266446 in memcpy (__len=3, __src=0x5588cbc6cb90, __dest=0x5588cbc6c230) at /usr/include/bits/string_fortified.h:29
#11 gnutls_realloc_zero (data=0x5588cbc6cb90, old_size=3, new_size=2) at nettle/init.c:130
#12 0x00007fb23466ba60 in __gmpz_get_str (res_str=<optimized out>, base=<optimized out>, x=<optimized out>) at mpz/get_str.c:111
#13 0x00007fb23f0ed414 in __gmp_expr<__mpz_struct [1], __mpz_struct [1]>::get_str[abi:cxx11](int) const (base=10, this=0x7ffc97c3d440) at /usr/include/gmpxx.h:1702
#14 MyMoneyMoney::formatMoney (this=<optimized out>, currency=..., prec=2, showThousandSeparator=<optimized out>) at /usr/src/debug/kmymoney-5.1.2-3.9.x86_64/kmymoney/mymoney/mymoneymoney.cpp:253
Comment 5 Jeremy Whiting 2022-05-26 22:41:25 UTC
Yeah, since it's a regression in gnutls you either need to downgrade that back from 3.7.5 to 3.7.4 or get opensuse to add the previously mentioned patch to their 3.7.5 package in a new revision.
Comment 6 dad1968 2022-05-27 07:59:04 UTC
Hello Mr. Whiting.
Thanks for this information, unfortunately I can't find the gnutls 3.7.4 version you mentioned in any downgrade repository. openSuSE also doesn't offer me a change of version in Yast2. This version is simply nowhere to be found. Your tip to have openSuSE withdraw the said patch is probably rather utopian.
I'm currently using the appimage for CentOS7 from Jenkins, which currently works without crashing.
Comment 7 Richard Leszczynski 2022-05-27 13:00:40 UTC
I've reported this to bugzilla on the OpenSuSE site now:

https://bugzilla.opensuse.org/show_bug.cgi?id=1199982