Bug 275777 - Crash on OFX Direct Connect
Summary: Crash on OFX Direct Connect
Status: RESOLVED FIXED
Alias: None
Product: kmymoney
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: KMyMoney Devel Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-16 02:34 UTC by Mike Wolfe
Modified: 2011-06-17 12:42 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Wolfe 2011-06-16 02:34:12 UTC
Application: kmymoney (4.5.95-svn1236941)
KDE Platform Version: 4.4.5 (KDE 4.4.5) (Compiled from sources)
Qt Version: 4.6.3
Operating System: Linux 2.6.32-5-686 i686
Distribution: Debian GNU/Linux 6.0.1 (squeeze)

-- Information about the crash:
Select "Update all accounts", and KMyMoney crashes before it is able to import the first set of data.  This worked as of the June 11th, 2011.

The crash can be reproduced every time.

 -- Backtrace:
Application: KMyMoney (kmymoney), signal: Segmentation fault
[Current thread is 1 (Thread 0xb4505710 (LWP 17885))]

Thread 2 (Thread 0xb125ab70 (LWP 17886)):
#0  0xb78b9424 in __kernel_vsyscall ()
#1  0xb6a41482 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:179
#2  0xb6302f3f in QWaitConditionPrivate::wait (this=0xada0154, mutex=0xada0150, time=30000) at thread/qwaitcondition_unix.cpp:85
#3  QWaitCondition::wait (this=0xada0154, mutex=0xada0150, time=30000) at thread/qwaitcondition_unix.cpp:159
#4  0xb62f6f6b in QThreadPoolThread::run (this=0xaa04110) at concurrent/qthreadpool.cpp:140
#5  0xb6301fbe in QThreadPrivate::start (arg=0xaa04110) at thread/qthread_unix.cpp:248
#6  0xb6a3c955 in start_thread (arg=0xb125ab70) at pthread_create.c:300
#7  0xb55c2e7e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb4505710 (LWP 17885)):
[KCrash Handler]
#6  QBasicAtomicInt::operator!= (this=0xbdada8c, str=...) at ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:75
#7  QString::append (this=0xbdada8c, str=...) at tools/qstring.cpp:1455
#8  0xb149ac3d in QString::operator+= (data=..., pv=0xac73a68) at /usr/include/qt4/QtCore/qstring.h:435
#9  OfxImporterPlugin::ofxTransactionCallback (data=..., pv=0xac73a68) at /home/wolfemi1/svn/kmymoney/kmymoney/plugins/ofximport/ofximporterplugin.cpp:257
#10 0xb14617d5 in LibofxContext::transactionCallback (this=0xbc18a90, data=...) at context.cpp:73
#11 0xb146bc98 in OfxTransactionContainer::gen_event (this=0xbdb65a8) at ofx_container_transaction.cpp:76
#12 0xb1467d48 in OfxMainContainer::gen_event (this=0xbdad6a0) at ofx_container_main.cpp:175
#13 0xb1479bf9 in OFXApplication::endElement (this=0xbc4a798, event=...) at ofx_sgml.cpp:251
#14 0xb133b8f2 in OpenSP::GenericEventHandler::endElement (this=0xbfa780f8, event=0xbc9e4a8) at GenericEventHandler.cxx:155
#15 0xb13ae360 in OpenSP::Parser::acceptEndTag (this=0xbc4aa08, event=0xbc9e4a8) at parseInstance.cxx:1152
#16 0xb13b177c in OpenSP::Parser::doContent (this=0xbc4aa08) at parseInstance.cxx:162
#17 0xb1354e28 in OpenSP::Parser::parseAll (this=0xbc4aa08, handler=..., cancelPtr=0xbc35fdc) at Parser.cxx:254
#18 0xb137b61d in OpenSP::SgmlParser::parseAll (this=0xbc35fd4, handler=..., cancelPtr=0xbc35fdc) at SgmlParser.cxx:46
#19 0xb1357f89 in OpenSP::ParserApp::parseAll (this=0xbc48098, parser=..., eh=..., cancelPtr=0xbc35fdc) at ParserApp.cxx:97
#20 0xb1359732 in OpenSP::ParserEventGenerator::run (this=0xbc35fd0, app=...) at ParserEventGeneratorKit.cxx:194
#21 0xb14790c1 in ofx_proc_sgml (libofx_context=0xbc18a90, argc=3, argv=0xbfa79478) at ofx_sgml.cpp:364
#22 0xb14647e5 in ofx_proc_file (ctx=0xbc18a90, p_filename=0xbc03a88 "/tmp/kde-wolfemi1/kmymoneyB17885.tmp") at ofx_preproc.cpp:261
#23 0xb14613f7 in libofx_proc_file (p_libofx_context=0xbc18a90, p_filename=0xbc03a88 "/tmp/kde-wolfemi1/kmymoneyB17885.tmp", p_file_type=AUTODETECT) at file_preproc.cpp:90
#24 0xb149a602 in OfxImporterPlugin::import (this=0xac73a68, filename=...) at /home/wolfemi1/svn/kmymoney/kmymoney/plugins/ofximport/ofximporterplugin.cpp:186
#25 0xb1497da4 in OfxImporterPlugin::slotImportFile (this=0xac73a68, url=...) at /home/wolfemi1/svn/kmymoney/kmymoney/plugins/ofximport/ofximporterplugin.cpp:704
#26 0xb1498bf2 in OfxImporterPlugin::qt_metacall (this=0xac73a68, _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0xbfa79808)
    at /home/wolfemi1/svn/kmymoney/build/kmymoney/plugins/ofximport/ofximporterplugin.moc:81
#27 0xb64037aa in QMetaObject::metacall (object=0xac73a68, cl=3058782056, idx=5, argv=0xbfa79808) at kernel/qmetaobject.cpp:237
#28 0xb64121bb in QMetaObject::activate (sender=0xbbf84e0, m=0xb14c65b0, local_signal_index=0, argv=0xbfa79808) at kernel/qobject.cpp:3295
#29 0xb14a4993 in KOfxDirectConnectDlg::statementReady (this=0xbbf84e0, _t1=...) at /home/wolfemi1/svn/kmymoney/build/kmymoney/plugins/ofximport/dialogs/kofxdirectconnectdlg.moc:95
#30 0xb14a5649 in KOfxDirectConnectDlg::slotOfxFinished (this=0xbbf84e0) at /home/wolfemi1/svn/kmymoney/kmymoney/plugins/ofximport/dialogs/kofxdirectconnectdlg.cpp:211
#31 0xb14a5b7f in KOfxDirectConnectDlg::qt_metacall (this=0xbbf84e0, _c=QMetaObject::InvokeMetaMethod, _id=37, _a=0xbfa799d8)
    at /home/wolfemi1/svn/kmymoney/build/kmymoney/plugins/ofximport/dialogs/kofxdirectconnectdlg.moc:81
#32 0xb64037aa in QMetaObject::metacall (object=0xbbf84e0, cl=3058782056, idx=37, argv=0xbfa799d8) at kernel/qmetaobject.cpp:237
#33 0xb64121bb in QMetaObject::activate (sender=0xbbf86a8, m=0xb6766ec8, local_signal_index=3, argv=0xbfa799d8) at kernel/qobject.cpp:3295
#34 0xb65f9d43 in KJob::result (this=0xbbf86a8, _t1=0xbbf86a8) at ./kjob.moc:194
#35 0xb65fa0a8 in KJob::emitResult (this=0xbbf86a8) at ../../kdecore/jobs/kjob.cpp:312
#36 0xb687ed30 in KIO::SimpleJob::slotFinished (this=0xbbf86a8) at ../../kio/kio/job.cpp:517
#37 0xb687f260 in KIO::TransferJob::slotFinished (this=0xbbf86a8) at ../../kio/kio/job.cpp:1097
#38 0xb687cb93 in KIO::TransferJob::qt_metacall (this=0xbbf86a8, _c=QMetaObject::InvokeMetaMethod, _id=47, _a=0xbfa79c6c) at ./jobclasses.moc:367
#39 0xb64037aa in QMetaObject::metacall (object=0xbbf86a8, cl=3058782056, idx=47, argv=0xbfa79c6c) at kernel/qmetaobject.cpp:237
#40 0xb64121bb in QMetaObject::activate (sender=0xbbfeb48, m=0xb6a2df64, local_signal_index=4, argv=0x0) at kernel/qobject.cpp:3295
#41 0xb694a4b7 in KIO::SlaveInterface::finished (this=0xbbfeb48) at ./slaveinterface.moc:171
#42 0xb694d7dd in KIO::SlaveInterface::dispatch (this=0xbbfeb48, _cmd=104, rawdata=...) at ../../kio/kio/slaveinterface.cpp:175
#43 0xb694a973 in KIO::SlaveInterface::dispatch (this=0xbbfeb48) at ../../kio/kio/slaveinterface.cpp:91
#44 0xb693de48 in KIO::Slave::gotInput (this=0xbbfeb48) at ../../kio/kio/slave.cpp:324
#45 0xb693e053 in KIO::Slave::qt_metacall (this=0xbbfeb48, _c=QMetaObject::InvokeMetaMethod, _id=30, _a=0xbfa79f7c) at ./slave.moc:82
#46 0xb64037aa in QMetaObject::metacall (object=0xbbfeb48, cl=3058782056, idx=30, argv=0xbfa79f7c) at kernel/qmetaobject.cpp:237
#47 0xb64121bb in QMetaObject::activate (sender=0xa63b350, m=0xb6a2a840, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3295
#48 0xb6846cc7 in KIO::Connection::readyRead (this=0xa63b350) at ./connection.moc:92
#49 0xb684906e in KIO::ConnectionPrivate::dequeue (this=0xbc08960) at ../../kio/kio/connection.cpp:82
#50 0xb684919e in KIO::Connection::qt_metacall (this=0xa63b350, _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0xbaad760) at ./connection.moc:79
#51 0xb64037aa in QMetaObject::metacall (object=0xa63b350, cl=3058782056, idx=5, argv=0xbaad760) at kernel/qmetaobject.cpp:237
#52 0xb640dd36 in QMetaCallEvent::placeMetaCall (this=0xbc32580, object=0xa63b350) at kernel/qobject.cpp:561
#53 0xb640edfe in QObject::event (this=0xa63b350, e=0xbc32580) at kernel/qobject.cpp:1248
#54 0xb58ce5cc in QApplicationPrivate::notify_helper (this=0xa32f338, receiver=0xa63b350, e=0xbc32580) at kernel/qapplication.cpp:4302
#55 0xb58d515e in QApplication::notify (this=0xa32f290, receiver=0xa63b350, e=0xbc32580) at kernel/qapplication.cpp:3706
#56 0xb6e03c0a in KApplication::notify (this=0xa32f290, receiver=0xa63b350, event=0xbc32580) at ../../kdeui/kernel/kapplication.cpp:302
#57 0xb63fe4cb in QCoreApplication::notifyInternal (this=0xa32f290, receiver=0xa63b350, event=0xbc32580) at kernel/qcoreapplication.cpp:726
#58 0xb6401f2c in QCoreApplication::sendEvent (receiver=0x0, event_type=0, data=0xa313f68) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#59 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0xa313f68) at kernel/qcoreapplication.cpp:1367
#60 0xb64020ad in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1260
#61 0xb642a57f in QCoreApplication::sendPostedEvents (s=0xa331710) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#62 postEventSourceDispatch (s=0xa331710) at kernel/qeventdispatcher_glib.cpp:276
#63 0xb4d76305 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#64 0xb4d79fe8 in ?? () from /lib/libglib-2.0.so.0
#65 0xb4d7a1c8 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#66 0xb642a075 in QEventDispatcherGlib::processEvents (this=0xa313c28, flags=...) at kernel/qeventdispatcher_glib.cpp:412
#67 0xb598ced5 in QGuiEventDispatcherGlib::processEvents (this=0xa313c28, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#68 0xb63fcae9 in QEventLoop::processEvents (this=0xbfa7a830, flags=) at kernel/qeventloop.cpp:149
#69 0xb63fcf3a in QEventLoop::exec (this=0xbfa7a830, flags=...) at kernel/qeventloop.cpp:201
#70 0xb5e0b723 in QDialog::exec (this=0xbbf84e0) at dialogs/qdialog.cpp:546
#71 0xb1497b8b in OfxImporterPlugin::updateAccount (this=0xac73a68, acc=..., moreAccounts=true) at /home/wolfemi1/svn/kmymoney/kmymoney/plugins/ofximport/ofximporterplugin.cpp:690
#72 0x080b1a6e in KMyMoneyApp::slotAccountUpdateOnlineAll (this=0xa3d0e88) at /home/wolfemi1/svn/kmymoney/kmymoney/kmymoney.cpp:6888
#73 0x080defb5 in KMyMoneyApp::qt_metacall (this=0xa3d0e88, _c=QMetaObject::InvokeMetaMethod, _id=103, _a=0xbfa7ace8) at /home/wolfemi1/svn/kmymoney/build/kmymoney/kmymoney.moc:506
#74 0xb64037aa in QMetaObject::metacall (object=0xa3d0e88, cl=3058782056, idx=149, argv=0xbfa7ace8) at kernel/qmetaobject.cpp:237
#75 0xb64121bb in QMetaObject::activate (sender=0xa4c8220, m=0xb61f5a38, local_signal_index=1, argv=0xbfa7ace8) at kernel/qobject.cpp:3295
#76 0xb58c7cc9 in QAction::triggered (this=0xa4c8220, _t1=false) at .moc/release-shared/moc_qaction.cpp:263
#77 0xb58c9ebc in QAction::activate (this=0xa4c8220, event=QAction::Trigger) at kernel/qaction.cpp:1255
#78 0xb5dba8e2 in QAction::trigger (this=0xb6514f7c) at ../../include/QtGui/../../src/gui/kernel/qaction.h:218
#79 QToolButton::nextCheckState (this=0xb6514f7c) at widgets/qtoolbutton.cpp:1147
#80 0xb5cd72e3 in QAbstractButtonPrivate::click (this=0xa52e1b0) at widgets/qabstractbutton.cpp:528
#81 0xb5cd75de in QAbstractButton::mouseReleaseEvent (this=0xa52e0f0, e=0xbfa7b514) at widgets/qabstractbutton.cpp:1121
#82 0xb5dbadac in QToolButton::mouseReleaseEvent (this=0xa52e0f0, e=0xbfa7b514) at widgets/qtoolbutton.cpp:721
#83 0xb592c7c8 in QWidget::event (this=0xa52e0f0, event=0xbfa7b514) at kernel/qwidget.cpp:8044
#84 0xb5cd637e in QAbstractButton::event (this=0xa52e0f0, e=0xb6514f7c) at widgets/qabstractbutton.cpp:1080
#85 0xb5dbd8da in QToolButton::event (this=0xa52e0f0, event=0xbfa7b514) at widgets/qtoolbutton.cpp:1163
#86 0xb58ce5cc in QApplicationPrivate::notify_helper (this=0xa32f338, receiver=0xa52e0f0, e=0xbfa7b514) at kernel/qapplication.cpp:4302
#87 0xb58d5af7 in QApplication::notify (this=0xa32f290, receiver=0xa52e0f0, e=0xbfa7b514) at kernel/qapplication.cpp:3867
#88 0xb6e03c0a in KApplication::notify (this=0xa32f290, receiver=0xa52e0f0, event=0xbfa7b514) at ../../kdeui/kernel/kapplication.cpp:302
#89 0xb63fe4cb in QCoreApplication::notifyInternal (this=0xa32f290, receiver=0xa52e0f0, event=0xbfa7b514) at kernel/qcoreapplication.cpp:726
#90 0xb58d4a52 in QCoreApplication::sendEvent (receiver=0xa52e0f0, event=0xbfa7b514, alienWidget=0xa52e0f0, nativeWidget=0xa524d40, buttonDown=0xb6216998, lastMouseReceiver=..., spontaneous=true)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#91 QApplicationPrivate::sendMouseEvent (receiver=0xa52e0f0, event=0xbfa7b514, alienWidget=0xa52e0f0, nativeWidget=0xa524d40, buttonDown=0xb6216998, lastMouseReceiver=..., spontaneous=true)
    at kernel/qapplication.cpp:2967
#92 0xb595fd4c in QETWidget::translateMouseEvent (this=0xa524d40, event=0xbfa7b960) at kernel/qapplication_x11.cpp:4380
#93 0xb595f253 in QApplication::x11ProcessEvent (this=0xa32f290, event=0xbfa7b960) at kernel/qapplication_x11.cpp:3391
#94 0xb598d372 in x11EventSourceDispatch (s=0xa332568, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#95 0xb4d76305 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#96 0xb4d79fe8 in ?? () from /lib/libglib-2.0.so.0
#97 0xb4d7a1c8 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#98 0xb642a075 in QEventDispatcherGlib::processEvents (this=0xa313c28, flags=...) at kernel/qeventdispatcher_glib.cpp:412
#99 0xb598ced5 in QGuiEventDispatcherGlib::processEvents (this=0xa313c28, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#100 0xb63fcae9 in QEventLoop::processEvents (this=0xbfa7bc54, flags=) at kernel/qeventloop.cpp:149
#101 0xb63fcf3a in QEventLoop::exec (this=0xbfa7bc54, flags=...) at kernel/qeventloop.cpp:201
#102 0xb640216f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1003
#103 0xb58ce667 in QApplication::exec () at kernel/qapplication.cpp:3581
#104 0x0808c000 in runKMyMoney (a=<value optimized out>, splash=<value optimized out>) at /home/wolfemi1/svn/kmymoney/kmymoney/main.cpp:282
#105 0x0808e2ff in main (argc=1, argv=0xbfa7c174) at /home/wolfemi1/svn/kmymoney/kmymoney/main.cpp:181

Reported using DrKonqi
Comment 1 Thomas Baumgart 2011-06-16 16:32:12 UTC
SVN commit 1237002 by tbaumgart:

Subscripts are absolutely nonsense in this case. What got me thinking that this could possibly work?

BUG: 275777

 M  +9 -9      ofximporterplugin.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1237002
Comment 2 Mike Wolfe 2011-06-17 01:48:59 UTC
There's a different problem now.  When I do an OFX Direct Connect 
import, I get "new" transactions added for each of the downloaded 
transactions that I've already cleared/reconciled.  This has the net 
effect of putting duplicates of every transaction in the last 30-60 days 
for each account.

-Mike


On 6/16/2011 9:32 AM, Thomas Baumgart wrote:
> https://bugs.kde.org/show_bug.cgi?id=275777
>
>
> Thomas Baumgart<thb@net-bembel.de>  changed:
>
>             What    |Removed                     |Added
> ----------------------------------------------------------------------------
>               Status|UNCONFIRMED                 |RESOLVED
>           Resolution|                            |FIXED
>
>
>
>
> --- Comment #1 from Thomas Baumgart<thb net-bembel de>   2011-06-16 16:32:12 ---
> SVN commit 1237002 by tbaumgart:
>
> Subscripts are absolutely nonsense in this case. What got me thinking that this
> could possibly work?
>
> BUG: 275777
>
>   M  +9 -9      ofximporterplugin.cpp
>
>
> WebSVN link: http://websvn.kde.org/?view=rev&revision=1237002
>
Comment 3 Thomas Baumgart 2011-06-17 12:42:24 UTC
If this persists, can you please open a new bug. It is unrelated to this one.