Seems like mCursor.close() has already happened, but activity is paused and resumed before it could be finished.
Only place I can see this happen is in cancelProduct() (and quickDeleteProduct(), which means cancelProduct() then), which means checkDoNotKeepOnPauseBasedOnTextLength() and subsequently checkDoNotKeepOnPause().
Seems like mCursor.close() has already happened, but activity is paused and resumed before it could be finished.
Only place I can see this happen is in cancelProduct() (and quickDeleteProd uct(), which means cancelProduct() then), which means checkDoNotKeepO nPauseBasedOnTe xtLength( ) and subsequently checkDoNotKeepO nPause( ).