Bug 234797 - Crash on Importing Ill-Formed QIF File
Summary: Crash on Importing Ill-Formed QIF File
Status: RESOLVED FIXED
Alias: None
Product: kmymoney
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: KMyMoney Devel Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-04-19 13:03 UTC by allan
Modified: 2010-04-30 11:12 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description allan 2010-04-19 13:03:22 UTC
Application that crashed: kmymoney
Version of the application: 3.97.2
KDE Version: 4.3.5 (KDE 4.3.5) "release 0"
Qt Version: 4.5.3
Operating System: Linux 2.6.31.12-0.2-desktop i686
Distribution: "openSUSE 11.2 (i586)"

What I was doing when the application crashed:
Having accidentally created an ill-formed investment QIF file, when I attempted to import it, KMM crashed.  I'd gone through the import wizard, selected the date format and the account, when the crash occured.

The file format was as follows - 

!Type:Invst
D04/04/2010
Nreinvdiv
Ymyaccountnamehere
M
^
D04/01/2010
Nreinvdiv
Ymyaccountnamehere
M
^

Obviously, very incomplete



 -- Backtrace:
Application: KMyMoney (kmymoney), signal: Floating point exception
[KCrash Handler]
#6  0xb524cfdb in __moddi3 () from /lib/libgcc_s.so.1
#7  0xb773618d in MyMoneyMoney::convert (this=0xbfe267b8, _denom=1000000, how=RndRound) at /home/aga/bin/kmymoney-3.97.2/kmymoney/mymoney/mymoneymoney.cpp:653
#8  0x084bc1cc in MyMoneyStatementReader::processTransactionEntry (this=0x965ef10, t_in=...) at /home/aga/bin/kmymoney-3.97.2/kmymoney/converter/mymoneystatementreader.cpp:638
#9  0x084bdb45 in MyMoneyStatementReader::import (this=0x965ef10, s=..., messages=...) at /home/aga/bin/kmymoney-3.97.2/kmymoney/converter/mymoneystatementreader.cpp:316
#10 0x080bac41 in KMyMoneyApp::slotStatementImport (this=0x87b6da0, s=...) at /home/aga/bin/kmymoney-3.97.2/kmymoney/kmymoney.cpp:2247
#11 0x08494d1e in MyMoneyQifReader::finishImport (this=0x9721260) at /home/aga/bin/kmymoney-3.97.2/kmymoney/converter/mymoneyqifreader.cpp:549
#12 0x080d732d in KMyMoneyApp::slotQifImportFinished (this=0x87b6da0) at /home/aga/bin/kmymoney-3.97.2/kmymoney/kmymoney.cpp:2058
#13 0x080e0e54 in KMyMoneyApp::qt_metacall (this=0x87b6da0, _c=InvokeMetaMethod, _id=28, _a=0xbfe2716c) at /home/aga/bin/kmymoney-3.97.2/build/kmymoney/kmymoney.moc:412
#14 0xb5e71864 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4
#15 0xb5e72585 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#16 0x08493fb7 in MyMoneyQifReader::importFinished (this=0x9721260) at /home/aga/bin/kmymoney-3.97.2/build/kmymoney/converter/mymoneyqifreader.moc:93
#17 0x084abb7a in MyMoneyQifReader::slotProcessData (this=0x9721260) at /home/aga/bin/kmymoney-3.97.2/kmymoney/converter/mymoneyqifreader.cpp:398
#18 0x084abe23 in MyMoneyQifReader::qt_metacall (this=0x9721260, _c=InvokeMetaMethod, _id=8, _a=0xbfe2732c) at /home/aga/bin/kmymoney-3.97.2/build/kmymoney/converter/mymoneyqifreader.moc:81
#19 0xb5e71864 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4
#20 0xb5e72585 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#21 0xb5e76b25 in ?? () from /usr/lib/libQtCore.so.4
#22 0xb5e76c5c in ?? () from /usr/lib/libQtCore.so.4
#23 0xb5e6b51b in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#24 0xb54a18fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#25 0xb54a934e in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#26 0xb6a18521 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#27 0xb5e5b32e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#28 0xb5e8a356 in ?? () from /usr/lib/libQtCore.so.4
#29 0xb5e87325 in ?? () from /usr/lib/libQtCore.so.4
#30 0xb49514c2 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#31 0xb4954d98 in ?? () from /usr/lib/libglib-2.0.so.0
#32 0xb4954ebe in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#33 0xb5e87011 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#34 0xb554329a in ?? () from /usr/lib/libQtGui.so.4
#35 0xb5e5998d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#36 0xb5e59dd9 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#37 0xb5e5c270 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#38 0xb54a1774 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#39 0x08091767 in main (argc=1, argv=0xbfe27ee4) at /home/aga/bin/kmymoney-3.97.2/kmymoney/main.cpp:277

Reported using DrKonqi
Comment 1 Thomas Baumgart 2010-04-30 11:12:25 UTC
SVN commit 1121068 by tbaumgart:

Don't allow import of investment transactions that don't have a share amount. This used to end in a div by zero when calculating the price.

BUG: 234797

 M  +4 -0      mymoneystatementreader.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1121068