Bug 378435 - Crash when open .kmy file
Summary: Crash when open .kmy file
Status: RESOLVED UPSTREAM
Alias: None
Product: kmymoney
Classification: Applications
Component: file (show other bugs)
Version: 4.8.0
Platform: Debian testing Linux
: NOR crash
Target Milestone: ---
Assignee: KMyMoney Devel Mailing List
URL:
Keywords:
: 372453 (view as bug list)
Depends on:
Blocks:
 
Reported: 2017-04-04 14:19 UTC by tr.man
Modified: 2017-06-02 06:28 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
fix (540 bytes, patch)
2017-06-02 05:27 UTC, Thomas Bettler
Details

Note You need to log in before you can comment on or make changes to this bug.
Description tr.man 2017-04-04 14:19:05 UTC
Since I updated to kmymoney 4.8 I can't open my .kmy file anymore. I can start kmymoney but when I try to open the file it crashs immediately. The console shows this... 

reading file
start parsing file
startDocument
reading accounts
reading transactions
reading securities
reading currencies
reading prices
reading reports
endDocument
kmymoney: buffer.c:1017: GWEN_Buffer_AppendString: Zusicherung »buffer« nicht erfüllt.
KCrash: Application 'kmymoney' crashing...
KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit

With 4.7.2 I can open my .kmy file.
Comment 1 Thomas Baumgart 2017-04-05 06:43:54 UTC
Did you also update AqBanking and Gwenhyfar and depending on your installation the KBanking plugin which hosts the glue code between KMyMoney and AqBanking? The problem is caused way inside those libraries. Since I am using the same software here, I am a bit puzzled. It chokes in an assertion where the provided buffer is zero (whatever causes this has to be found).

Can you provide a backtrace by running KMyMoney under gdb control?
Comment 2 tr.man 2017-04-05 15:33:45 UTC
I'm not familiar with gdb but I hope this is what you are need!?  

Starting program: /usr/bin/kmymoney 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "csvexport"
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 1 offers for "Print check"
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "National orders for online banking"
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "KMyMoney OFX"
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 1 offers for "iCalendar"
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "SEPA orders for online banking"
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "csvimport"
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "KBanking"
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "Reconciliation report"
kmymoney(2522)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "Weboob"
KMyMoney csvexport plugin loaded
KMyMoney printcheck plugin loaded
kmymoney(2522)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
QFSFileEngine::open: No file name specified
onlineTask available "org.kmymoney.creditTransfer.germany" 
onlineTaskConverter available "org.kmymoney.creditTransfer.germany" ("org.kmymoney.creditTransfer.sepa") 
onlineTaskConverter available "org.kmymoney.creditTransfer.sepa" ("org.kmymoney.creditTransfer.germany") 
KMyMoney ofximport plugin loaded
KMyMoney iCalendar plugin loaded
onlineTask available "org.kmymoney.creditTransfer.sepa" 
KMyMoney csvimport plugin loaded
KMyMoney kbanking plugin loaded
KMyMoney reconciliation report plugin loaded
[New Thread 0x7fffd53df700 (LWP 2526)]
[New Thread 0x7fffcffff700 (LWP 2527)]
kmymoney(2522) KSambaSharePrivate::findSmbConf: KSambaShare: Could not find smb.conf! 
[Thread 0x7fffd53df700 (LWP 2526) exited]
reading file
start parsing file
startDocument
reading accounts
reading transactions
reading securities
reading currencies
reading prices
reading reports
endDocument
kmymoney: buffer.c:1017: GWEN_Buffer_AppendString: Zusicherung »buffer« nicht erfüllt.

Thread 1 "kmymoney" received signal SIGABRT, Aborted.
0x00007ffff1f67fdf in raise () from /lib/x86_64-linux-gnu/libc.so.6

I use debian testing and updated with aptitude so the depending packages should be updated too. libaqbanking 5.6.12-1+1b; libgwenhywfar-data 4.15.3-5
Comment 3 tr.man 2017-04-05 15:53:54 UTC
(gdb) backtrace
#0  0x00007ffff1f67fdf in raise () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007ffff1f6940a in abort () from /lib/x86_64-linux-gnu/libc.so.6
#2  0x00007ffff1f60e47 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#3  0x00007ffff1f60ef2 in __assert_fail () from /lib/x86_64-linux-gnu/libc.so.6
#4  0x00007fffdbec5d2f in GWEN_Buffer_AppendString () from /usr/lib/libgwenhywfar.so.60
#5  0x00007fffdb803661 in ?? () from /usr/lib/libaqbanking.so.35
#6  0x00007fffdc78a2ee in ?? () from /usr/lib/kde4/kmm_kbanking.so
#7  0x00007ffff6263e2a in onlineJobAdministration::canSendCreditTransfer() () from /usr/lib/libkmm_mymoney.so.4
#8  0x0000555555651dc7 in ?? ()
#9  0x0000555555658680 in ?? ()
#10 0x000055555569dcc5 in ?? ()
#11 0x00007ffff2f92660 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#12 0x00007ffff61ea808 in MyMoneyFile::attachStorage(IMyMoneyStorage*) () from /usr/lib/libkmm_mymoney.so.4
#13 0x00005555556c2378 in ?? ()
#14 0x00005555556841c3 in ?? ()
#15 0x0000555555684f6d in ?? ()
#16 0x000055555569e02d in ?? ()
#17 0x00007ffff2f92660 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#18 0x00007ffff399b672 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#19 0x00007ffff399c9d3 in QAction::activate(QAction::ActionEvent) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007ffff2f98381 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#21 0x00007ffff399ce92 in QAction::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#22 0x00007ffff4635912 in KAction::event(QEvent*) () from /usr/lib/libkdeui.so.5
#23 0x00007ffff39a154c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#24 0x00007ffff39a852c in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007ffff47201ba in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#26 0x00007ffff2f7df1d in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#27 0x00007ffff2f81a16 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#28 0x00007ffff2fae703 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#29 0x00007fffed72a7f7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007fffed72aa60 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007fffed72ab0c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007ffff2fae854 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#33 0x00007ffff3a4b5d6 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#34 0x00007ffff2f7c7ef in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#35 0x00007ffff2f7cb55 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#36 0x00007ffff2f82bd9 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#37 0x000055555563a95d in ?? ()
#38 0x0000555555637a82 in ?? ()
#39 0x00007ffff1f552b1 in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#40 0x000055555563a0ca in _start ()
Comment 4 Thomas Bettler 2017-05-23 18:34:01 UTC
Probably dup of #372453 ?
Comment 5 tr.man 2017-05-24 14:32:59 UTC
Yes, disabling kbanking plugin solves the issue for me. Thanks. So I have to wait at version 5...
Comment 6 Thomas Bettler 2017-05-24 15:03:05 UTC
Even updating to kmymoney 5 (git master) didn't help.
However I finally managed to solve my issue by deleting ~/.banking and ~/.aqbanking
It appears that >=kmymoney-4.8 is unable to deal with part of that config.
Comment 7 Thomas Baumgart 2017-05-26 18:53:18 UTC
Very strange, this could also be a problem in upstream AqBanking then. Do you have a backup of the data you deleted?
Comment 8 tr.man 2017-05-28 21:48:09 UTC
So I deleted ~/.aqbanking too and after I added my bank access data again it works. Thanks @Thomas Bettler.
Comment 9 Thomas Bettler 2017-06-02 05:27:41 UTC
Created attachment 105839 [details]
fix

I backtraced my issue and Martin Preuss helped me with this patch.
Probably this might fixes your issue?
Comment 10 Thomas Baumgart 2017-06-02 06:28:44 UTC
*** Bug 372453 has been marked as a duplicate of this bug. ***