Bug 390716 - Crash when entering a new account.
Summary: Crash when entering a new account.
Status: RESOLVED WORKSFORME
Alias: None
Product: kmymoney
Classification: Applications
Component: general (show other bugs)
Version: 5.0.0
Platform: Manjaro Linux
: NOR crash
Target Milestone: ---
Assignee: KMyMoney Devel Mailing List
URL:
Keywords:
: 421153 (view as bug list)
Depends on:
Blocks:
 
Reported: 2018-02-19 05:54 UTC by John Kelly
Modified: 2020-05-07 14:29 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
attachment-3683-0.html (1.43 KB, text/html)
2018-02-19 21:48 UTC, John Kelly
Details

Note You need to log in before you can comment on or make changes to this bug.
Description John Kelly 2018-02-19 05:54:42 UTC
The crash occurs after all data for the account has been entered. Once hitting the "Finish" button it crashes.

KDE Frameworks 5.43.0
Qt 5.10.0 (built against 5.10.0)
The xcb windowing system
Comment 1 Thomas Baumgart 2018-02-19 07:22:59 UTC
I just tried this here and it did not crash. So a few questions:

- did you assign an institution? did that already exist?
- which type of account did you try to create?
- did you specify an opening balance?
- did you select a parent account or just hit Next?

Can you provide a backtrace of the crash for further analysis?
Comment 2 John Kelly 2018-02-19 21:48:36 UTC
Created attachment 110827 [details]
attachment-3683-0.html

I apologize, i just tried adding the account and had no problems. I added
several accounts and had no issues. I just booted up about an hour ago, i
guess the fresh start fixed my issue.

For future reference how do i pull a backtrace?

On Mon, Feb 19, 2018 at 12:22 AM, Thomas Baumgart <bugzilla_noreply@kde.org>
wrote:

> https://bugs.kde.org/show_bug.cgi?id=390716
>
> --- Comment #1 from Thomas Baumgart <tbaumgart@kde.org> ---
> I just tried this here and it did not crash. So a few questions:
>
> - did you assign an institution? did that already exist?
> - which type of account did you try to create?
> - did you specify an opening balance?
> - did you select a parent account or just hit Next?
>
> Can you provide a backtrace of the crash for further analysis?
>
> --
> You are receiving this mail because:
> You reported the bug.
Comment 3 Alexandre 2018-02-19 21:57:52 UTC
I have the same problem but only on my gentoo. On ubuntu I tried Qt 5.10.1 on 18.04 and kmymoney 5.0 works. In this trace the kmy file is empty (without accounts) and I am trying to create the first account by "New account". The error is:

ASSERT failure in QVector<T>::at: "index out of range", file ../../include/QtCore/../../src/corelib/tools/qvector.h, line 424                                                                                                                                                          
                                                                   
A gdb backtrace follows:

GNU gdb (Gentoo 8.1 p1) 8.1                                                                                                                                                                                                                                                            
Copyright (C) 2018 Free Software Foundation, Inc.                                                                                                                                                                                                                                      
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>                                                                                                                                                                                                          
This is free software: you are free to change and redistribute it.                                                                                                                                                                                                                     
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"                                                                                                                                                                                                             
and "show warranty" for details.                                                                                                                                                                                                                                                       
This GDB was configured as "x86_64-pc-linux-gnu".                                                                                                                                                                                                                                      
Type "show configuration" for configuration details.                                                                                                                                                                                                                                   
For bug reporting instructions, please see:                                                                                                                                                                                                                                            
<https://bugs.gentoo.org/>.                                                                                                                                                                                                                                                            
Find the GDB manual and other documentation resources online at:                                                                                                                                                                                                                       
<http://www.gnu.org/software/gdb/documentation/>.                                                                                                                                                                                                                                      
For help, type "help".                                                                                                                                                                                                                                                                 
Type "apropos word" to search for commands related to "word"...                                                                                                                                                                                                                        
Reading symbols from kmymoney...done.                                                                                                                                                                                                                                                  
(gdb) run                                                                                                                                                                                                                                                                              
Starting program: /usr/bin/kmymoney                                                                                                                                                                                                                                                    
[Thread debugging using libthread_db enabled]                                                                                                                                                                                                                                          
Using host libthread_db library "/lib64/libthread_db.so.1".                                                                                                                                                                                                                            
[New Thread 0x7fffd8e47700 (LWP 28078)]                                                                                                                                                                                                                                                
Qt: Session management error: Could not open network socket                                                                                                                                                                                                                            
[New Thread 0x7fffd2edc700 (LWP 28079)]                                                                                                                                                                                                                                                
WebConnect: Try to connect to WebConnect server                                                                                                                                                                                                                                        
WebConnect: Connect to server failed                                                                                                                                                                                                                                                   
WebConnect: Starting server failed. Try to remove stale socket.                                                                                                                                                                                                                        
WebConnect: Running in server mode                                                                                                                                                                                                                                                     
Plugins: checkprinting loaded                                                                                                                                                                                                                                                          
Plugins: csvexporter loaded                                                                                                                                                                                                                                                            
Plugins: csvimporter loaded                                                                                                                                                                                                                                                            
Plugins: gncimporter loaded                                                                                                                                                                                                                                                            
Plugins: icalendarexporter loaded                                                                                                                                                                                                                                                      
Plugins: kbanking loaded                                                                                                                                                                                                                                                               
Plugins: kbanking pluged                                                                                                                                                                                                                                                               
Plugins: ofximporter loaded                                                                                                                                                                                                                                                            
Plugins: qifexporter loaded                                                                                                                                                                                                                                                            
Plugins: qifimporter loaded                                                                                                                                                                                                                                                            
Plugins: reconciliation report loaded                                                                                                                                                                                                                                                  
Online plugins found 2                                                                                                                                                                                                                                                                 
Cost center model created with items 0                                                                                                                                                                                                                                                 
Payees model created with items 0                                                                                                                                                                                                                                                      
reading file                                                                                                                                                                                                                                                                           
start parsing file                                                                                                                                                                                                                                                                     
startDocument                                                                                                                                                                                                                                                                          
reading securities                                                                                                                                                                                                                                                                     
endDocument                                                                                                                                                                                                                                                                            
[New Thread 0x7fffc2ad4700 (LWP 28082)]                                                                                                                                                                                                                                                
[New Thread 0x7fff821cf700 (LWP 28083)]                                                                                                                                                                                                                                                
[New Thread 0x7fff81570700 (LWP 28084)]                                                                                                                                                                                                                                                
[New Thread 0x7fff80d6f700 (LWP 28085)]                                                                                                                                                                                                                                                
[New Thread 0x7fff7bfff700 (LWP 28086)]                                                                                                                                                                                                                                                
[New Thread 0x7fff7b7fe700 (LWP 28087)]                                                                                                                                                                                                                                                
ASSERT failure in QVector<T>::at: "index out of range", file ../../include/QtCore/../../src/corelib/tools/qvector.h, line 424                                                                                                                                                          
                                                                                                                                                                                                                                                                                       
Thread 1 "kmymoney" received signal SIGABRT, Aborted.                                                                                                                                                                                                                                  
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51                                                                                                                                                                                                                  
51      }                                                                                                                                                                                                                                                                              
(gdb) where                                                                                                                                                                                                                                                                            
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51                                                                                                                                                                                                              
#1  0x00007fffef789a57 in __GI_abort () at abort.c:90                                                                                                                                                                                                                                  
#2  0x00007ffff050a6df in QMessageLogger::fatal(char const*, ...) const () from /usr/lib64/libQt5Core.so.5                                                                                                                                                                             
#3  0x00007ffff0504f3a in qt_assert_x(char const*, char const*, char const*, int) () from /usr/lib64/libQt5Core.so.5                                                                                                                                                                   
#4  0x00007ffff058bdaa in QVector<int>::at(int) const () from /usr/lib64/libQt5Core.so.5                                  
#5  0x00007ffff06aec0c in QSortFilterProxyModelPrivate::can_create_mapping(QModelIndex const&) const [clone .part.45] () from /usr/lib64/libQt5Core.so.5                                                                                                                       [0/1837]
#6  0x00007ffff06b2535 in QSortFilterProxyModelPrivate::_q_sourceColumnsAboutToBeInserted(QModelIndex const&, int, int) () from /usr/lib64/libQt5Core.so.5
#7  0x00007ffff06b69da in QSortFilterProxyModel::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib64/libQt5Core.so.5
#8  0x00007ffff071919e in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5
#9  0x00007ffff068ad2e in QAbstractItemModel::columnsAboutToBeInserted(QModelIndex const&, int, int, QAbstractItemModel::QPrivateSignal) () from /usr/lib64/libQt5Core.so.5
#10 0x00007ffff0691c0c in QAbstractItemModel::beginInsertColumns(QModelIndex const&, int, int) () from /usr/lib64/libQt5Core.so.5
#11 0x00007ffff12c8f26 in ?? () from /usr/lib64/libQt5Gui.so.5
#12 0x00007ffff12ca475 in ?? () from /usr/lib64/libQt5Gui.so.5
#13 0x00007ffff12ca734 in QStandardItem::insertColumns(int, int) () from /usr/lib64/libQt5Gui.so.5
#14 0x00007ffff12cb9e0 in QStandardItem::insertRow(int, QList<QStandardItem*> const&) () from /usr/lib64/libQt5Gui.so.5
#15 0x0000555555a2cf48 in QStandardItem::insertRow (this=0x55555665cba0, arow=0, aitem=0x555556fe18d0) at /usr/include/qt5/QtGui/qstandarditemmodel.h:317
#16 0x0000555555a2cfbc in QStandardItem::appendRow (this=0x55555665cba0, aitem=0x555556fe18d0) at /usr/include/qt5/QtGui/qstandarditemmodel.h:320
#17 0x0000555555a2ac7e in AccountsModel::slotObjectAdded (this=0x5555565825e0, objType=eMyMoney::File::Object::Account, obj=0x5555584f1890) at /home/alexandr/Projects/kmymoney-full/kmymoney/kmymoney/models/accountsmodel.cpp:903
#18 0x000055555568c55b in QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<eMyMoney::File::Object, MyMoneyObject const*>, void, void (AccountsModel::*)(eMyMoney::File::Object, MyMoneyObject const*)>::call (f=
    (void (AccountsModel::*)(AccountsModel * const, eMyMoney::File::Object, const MyMoneyObject *)) 0x555555a2ab1c <AccountsModel::slotObjectAdded(eMyMoney::File::Object, MyMoneyObject const*)>, o=0x5555565825e0, arg=0x7fffffffc110)
    at /usr/include/qt5/QtCore/qobjectdefs_impl.h:136
#19 0x000055555568ae0c in QtPrivate::FunctionPointer<void (AccountsModel::*)(eMyMoney::File::Object, MyMoneyObject const*)>::call<QtPrivate::List<eMyMoney::File::Object, MyMoneyObject const*>, void> (f=
    (void (AccountsModel::*)(AccountsModel * const, eMyMoney::File::Object, const MyMoneyObject *)) 0x555555a2ab1c <AccountsModel::slotObjectAdded(eMyMoney::File::Object, MyMoneyObject const*)>, o=0x5555565825e0, arg=0x7fffffffc110)
    at /usr/include/qt5/QtCore/qobjectdefs_impl.h:169
#20 0x0000555555688a18 in QtPrivate::QSlotObject<void (AccountsModel::*)(eMyMoney::File::Object, MyMoneyObject const*), QtPrivate::List<eMyMoney::File::Object, MyMoneyObject const*>, void>::impl (which=1, this_=0x555556692d60, r=0x5555565825e0, a=0x7fffffffc110, ret=0x0)
    at /usr/include/qt5/QtCore/qobjectdefs_impl.h:398
#21 0x00007ffff0718fb0 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5
#22 0x00007ffff604cb51 in MyMoneyFile::objectAdded (this=0x7ffff62c4a90 <MyMoneyFile::file>, _t1=<incomplete type>, _t2=0x5555584f1890) at /home/alexandr/Projects/kmymoney-full/build-5.0/kmymoney/mymoney/kmm_mymoney_autogen/EWIEGA46WW/moc_mymoneyfile.cpp:235
#23 0x00007ffff5f81faa in MyMoneyFile::commitTransaction (this=0x7ffff62c4a90 <MyMoneyFile::file>) at /home/alexandr/Projects/kmymoney-full/kmymoney/kmymoney/mymoney/mymoneyfile.cpp:452
#24 0x00007ffff5faa303 in MyMoneyFileTransaction::commit (this=0x7fffffffc230) at /home/alexandr/Projects/kmymoney-full/kmymoney/kmymoney/mymoney/mymoneyfile.cpp:3735
#25 0x00005555557ff9be in NewAccountWizard::Wizard::newAccount (account=...) at /home/alexandr/Projects/kmymoney-full/kmymoney/kmymoney/wizards/newaccountwizard/knewaccountwizard.cpp:430
#26 0x00005555556ee6da in KAccountsView::slotNewAccount (this=0x5555564b1010) at /home/alexandr/Projects/kmymoney-full/kmymoney/kmymoney/views/kaccountsview.cpp:234
#27 0x00005555556f3f24 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (KAccountsView::*)()>::call(void (KAccountsView::*)(), KAccountsView*, void**) (
    f=(void (KAccountsView::*)(KAccountsView * const)) 0x5555556ee68a <KAccountsView::slotNewAccount()>, o=0x5555564b1010, arg=0x7fffffffc5b0) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:136
#28 0x00005555556f3dd8 in QtPrivate::FunctionPointer<void (KAccountsView::*)()>::call<QtPrivate::List<>, void>(void (KAccountsView::*)(), KAccountsView*, void**) (f=(void (KAccountsView::*)(KAccountsView * const)) 0x5555556ee68a <KAccountsView::slotNewAccount()>,
    o=0x5555564b1010, arg=0x7fffffffc5b0) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:169
#29 0x00005555556f3a96 in QtPrivate::QSlotObject<void (KAccountsView::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x5555564b12f0, r=0x5555564b1010, a=0x7fffffffc5b0, ret=0x0)
    at /usr/include/qt5/QtCore/qobjectdefs_impl.h:398
#30 0x00007ffff0718fb0 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5
#31 0x00007ffff1719e12 in QAction::triggered(bool) () from /usr/lib64/libQt5Widgets.so.5
#32 0x00007ffff171c55c in QAction::activate(QAction::ActionEvent) () from /usr/lib64/libQt5Widgets.so.5
#33 0x00007ffff189b8bc in ?? () from /usr/lib64/libQt5Widgets.so.5
#34 0x00007ffff18a2d8b in ?? () from /usr/lib64/libQt5Widgets.so.5
#35 0x00007ffff18a3b9f in QMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQt5Widgets.so.5
#36 0x00007ffff175f3a8 in QWidget::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#37 0x00007ffff18a5e9b in QMenu::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#38 0x00007ffff172063c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#39 0x00007ffff172833f in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#40 0x00007ffff06e9c07 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#41 0x00007ffff1727312 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib64/libQt5Widgets.so.5
#42 0x00007ffff177a0da in ?? () from /usr/lib64/libQt5Widgets.so.5
#43 0x00007ffff177c989 in ?? () from /usr/lib64/libQt5Widgets.so.5
#44 0x00007ffff172063c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#45 0x00007ffff1727de4 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#46 0x00007ffff06e9c07 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#47 0x00007ffff0fea89b in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib64/libQt5Gui.so.5
#48 0x00007ffff0fec485 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib64/libQt5Gui.so.5
#49 0x00007ffff0fc69eb in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Gui.so.5
#50 0x00007fffdb43c02b in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#51 0x00007ffff06e832b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#52 0x00007ffff06f1e34 in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5
#53 0x00005555556317f7 in runKMyMoney (a=..., splash=std::unique_ptr<QSplashScreen> containing 0x0, file=..., noFile=false) at /home/alexandr/Projects/kmymoney-full/kmymoney/kmymoney/main.cpp:317
#54 0x0000555555630d45 in main (argc=1, argv=0x7fffffffd4d8) at /home/alexandr/Projects/kmymoney-full/kmymoney/kmymoney/main.cpp:231
(gdb) quit
A debugging session is active.

        Inferior 1 [process 28074] will be killed.

Quit anyway? (y or n) y
Comment 4 Bryan 2018-11-06 18:24:53 UTC
I experience this bug. Steps to recreate:

1. Click on Accounts icon on far left.
2. Right-click on Liability
3. Select 'New Account'
4. Proceed through New Account Setup Wizard. Note, everything works fine at this point.
5. Finish wizard from step 4.
6. Repeat steps 2 and 3.
7. Proceed through New Account Setup Wizard. Once I click the Finish button, app completely crashes (closes out without any messages or warnings).

Very annoying as I am attempting to create 15 accounts.

Running Linux Lite 4.0 with kernel 4.15.0-38-generic
I have updated my system using apt update/upgrade to verify there was not an old library but problem still persists. 

KDE Frameworks 5.44.0
Qt 5.9.5 (built against 5.9.5)
The xcb windowing system
Comment 5 Jack 2018-11-06 20:08:26 UTC
Alexandre - do you still have a problem?  If so, for which version of KMM, and are you using an ebuild (which one?) or compiling yourself?

Bryan - which version of KMM are you using? - Also, are you saying that you can create the first account, but it crashes on getting to "Finish" for the second account?  If so, does it help if you save the file after adding the first account?
Comment 6 Bryan 2018-11-06 20:21:09 UTC
Jack,

Version 5.0.0

I save after each and every account. Saving does not prevent the crash. 

Let me expand upon the New Account Wizard.

1. Step 1 of 4 - I add a new institution or select one I already created. When creating the new institution, I only define a name.

2. Click Next.

3. Account name is defined, account type has been credit card (I have a lot of them :(  

4. Opening date is not changed. Opening balance is 0.

5. For the credit card type, I uncheck the reminder to pay checkbox and click Next.

6. Click Next and Finish to complete the wizard.

First account is created successfully. When I proceed to create the second account, I get to the final step and click the Finish button. Once I do, the app crashes and the data is not saved. This is why I save after each account I create.
Comment 7 Thomas Baumgart 2020-01-11 17:24:52 UTC
I tried to duplicate this with the current HEAD of the 5.8 branch and I cannot reproduce the problem anymore. Can you check if it still fails for you using the stable AppImage? See https://kmymoney.org/appimage.php howto do that. Thanks in advance.
Comment 8 Bryan 2020-01-11 20:41:15 UTC
Thomas,

I just tried this again with the same config, or at least I think, I had back when I experienced the error but the program is not crashing. 

Versions:
KMyMoney -> 5.0.0
Linux Lite -> 4.0

My kernel version is slightly different. Currently running 4.15.0-70-generic
Comment 9 Bug Janitor Service 2020-01-26 04:33:16 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 10 Bug Janitor Service 2020-02-10 04:33:16 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!
Comment 11 Thomas Baumgart 2020-05-07 14:29:45 UTC
*** Bug 421153 has been marked as a duplicate of this bug. ***