Crash on opening imported transaction in ledger

Jack ostroffjh at users.sourceforge.net
Mon Jun 9 22:05:23 BST 2025


On 2025.06.09 06:21, Thomas Baumgart via KMyMoney-devel wrote:
> On Montag, 2. Juni 2025 01:47:52 CEST Jack Ostroff via KMyMoney-devel  
> wrote:
> 
> > I have an investment transaction imported by OFX, and KMM crashes  
> with
> > a Floating point exception when I try to open the account in the  
> ledger.
> >
> > [below lines manually wrapped and memos and some other fields  
> shortened
> > for readability.]
> >
> >  From the kmm-statement file for the ofx import:
> > <TRANSACTION payee="" amount="2/1" brokerageaccount="" number=""
> > action="sell" bankid="ID 20250519CA210057180306067"
> >       price="0/1" security="ALTABA INC" memo="Exchange: ALTABA INC  
> CASH
> > MERGER" reconcile="0" securityId="021ESC017"
> >       dateposted="2025-05-19" shares="0/1" fees="0/1"/>
> >
> > This imported as
> >     <TRANSACTION id="T000000000000034673" postdate="2025-05-19"
> > memo="Exchange: ALTABA INC CASH MERGER" entrydate="2025-05-31"
> > commodity="USD">
> >        <SPLITS>
> >          <SPLIT id="S0001" payee="" reconciledate="" action=""
> > reconcileflag="0" value="2/1" shares="2/1" price="0/1"
> >            memo="Exchange: ALTABA INC CASH MERGER" account="A000345"
> > number="" bankid=""/>
> >          <SPLIT id="S0002" payee="" reconciledate="" action="Buy"
> > reconcileflag="0" value="2/1" shares="0/1" price="0/1"
> >            memo="Exchange: ALTABA INC CASH MERGER" account="A000722"
> > number="" bankid="ID 20250519CA210057180306067"/>
> >        </SPLITS>
> >        <KEYVALUEPAIRS>
> >          <PAIR key="Imported" value="true"/>
> >        </KEYVALUEPAIRS>
> >      </TRANSACTION>
> >
> > "Show transaction details" shows the price in both splits as 1, not  
> 0
> >
> > Clearly this is a strange transaction, since the UI won't let me  
> create
> > a buy/sell for 0 shares.  I have no idea why Merrill Lynch calls  
> this a
> > sell, as it appears to just be some sort of dividend or other  
> payout of
> > $2.00.
> >
> > My assumption is there is a divide by zero, but I can't be sure  
> until I
> > trace through the code.  If nothing else, shouldn't this type of  
> error
> > get trapped and reported instead of crashing?	
> 
> Here's a fix to get around the division by zero problem:
> 
> https://invent.kde.org/office/kmymoney/-/commit/cb810055443cdb5a8dabeb3f87da36b826a8080f

So this has an effect on import, not once the "bad" data is already  
imported.  I deleted the original and reimported, and it does convert  
to an interest transaction.  I suppose that's the best we can do here.   
I apparently already had a category called "exchange" which I used  
instead of "interest" but that's a personal choice.  Some day I may try  
to dig at Merrill Lynch, but they have historically been totally unable  
to provide any real technical assistance related to their OFX  
activities.

Thanks for the fix.

Jack


More information about the KMyMoney-devel mailing list