beos-zealot / OpenSumIt

Sum-It is a native spreadsheet for BeOS.
http://dev.osdrawer.net/projects/sum-it
8 stars 7 forks source link

Data->Find feature crashes on some spreadsheets #22

Open beos-zealot opened 10 years ago

beos-zealot commented 10 years ago

Creator: Kevin Field URL: http://sourceforge.net/p/sum-it/bugs/7/

I have a fairly simple spreadsheet created in Sum-It with 80 columns and 64 rows. Most of the columns are unpopulated except for the first row. I'm not sure I can share it so I'm trying to reproduce the bug with a simpler example, but what happens is:

1) I press alt+F 2) I type a word in the find input (which can exist in the spreadsheet or not) 3) I press enter to find (or click the find button)

Sum-It immediately crashes. Attached is the save report. It behaves identically with this spreadsheet or if I copy all the data into a fresh spreadsheet.

This is on Haiku nightly hrev46756 with Sum-It as installed through HaikuDepot, which says that it's Sum-It 0.2beta-1.

beos-zealot commented 10 years ago

Attachement: Sum-It-713-debug-30-01-2014-13-48-30.report Contents:

Debug information for team /boot/system/apps/Sum-It (713): CPU(s): 1x AMD Sempron 64 Memory: 509.94 MiB total, 251.77 MiB used Haiku revision: hrev46756 Jan 25 2014 00:36:26 (BePC)

Active Threads: thread 713: Sum-It (main) thread 717: w>Clipboard thread 719: w>Find thread 728: team 713 debug task thread 722: w>analysis state: Call (getNumAvailable() == 0)

    Frame       IP          Function Name
    -----------------------------------------------
    00000000    0x62414112  commpage_syscall + 0x2
        Disassembly:
            commpage_syscall:
            0x62414110:             89e1  mov %esp, %ecx
            0x62414112:             0f34  sysenter  <--

        Frame memory:

    0x7a03afa0  0x1f5d5e1   debugger + 0x39
    0x7a03afd0  0x1f6ca54   __assert_fail + 0x4c
    0x7a03b020  0x1fdeec3   BPrivate::threadHeap::malloc(uint32) + 0x487
    0x7a03b050  0x1fdf7ff   malloc + 0x17f
    0x7a03b088  0x1f5b534   operator new(void) + 0x24
    0x7a03b288  0x27c64df   BWindow::DispatchMessage(BMessage*, BHandler*) + 0x15db
    0x7a03b2b8  0x27c7a44   BWindow::UpdateIfNeeded() + 0xdc
    0x7a03b348  0x27ab736   BTextView::_RequestDrawLines(int32, int32) + 0xde
    0x7a03b3d8  0x27a9aee   BTextView::_Refresh(int32, int32, bool) + 0x18e
    0x7a03b418  0x27a4a84   BTextView::SetText(char*, int32, text_run_array*) + 0xcc
    0x7a03b448  0x27a49a8   BTextView::SetText(char*, text_run_array*) + 0x3c
    0x7a03b598  0x10d3022   CCellView::DrawStatus(range*, bool) + 0xa6
        Variables:
        this: 0x19410d40 {
            fNames: 0x1943e208
            fBorderWidth: 49
            fBorderHeight: 16
            fBorderFontID: 1
            fSelView: 0x1943c420
            fProgressView: 0x1943a7b0
            fContainer: 0x194231b8
            fEditBox: 0x19411ef0
            fHScrollBar: 0x194149e8
            fVScrollBar: 0x194148f0
            fCurrentCursor: 2
            fPageSetup: Invalid Argument
            fPageSetupSize: 0
            fVPageCount: 0
            fHPageCount: 0
            fShowGrid: true
            fShowBorders: true
            fEntering: false
            fPrGrid: true
            fPrBorders: true
            fOnlyTheLines: false
            fWindowActive: false
            fDragIsAcceptable: false
            fFromFile: true
            fFindInFormulas: true
            fIgnoreCase: true
            fWrap: true
            fAutoRecalc: true
            fShowFormulas: false
            fDragACopy: false
            fSuppressHighlight: false
            fDisplayZero: false
            fNew: false
            fWhatToFind: NEIGHBOUR
            fReplaceWith: 
            fFOffset: 0
            fJob: 0
            fFirstGraphic: 0
        }
        selection: 0x19410e28 {
        }
        updateEditField: true
        s: helping out a neighbour
        lock {
            fLocker: 0x194231b8
            fLooper: 0
            fIsLocked: true
        }

    0x7a03b5c8  0x10cc5e3   CCellView::SetSelection(range) + 0x157
        Variables:
        this: 0x19410d40 {
            fNames: 0x1943e208
            fBorderWidth: 49
            fBorderHeight: 16
            fBorderFontID: 1
            fSelView: 0x1943c420
            fProgressView: 0x1943a7b0
            fContainer: 0x194231b8
            fEditBox: 0x19411ef0
            fHScrollBar: 0x194149e8
            fVScrollBar: 0x194148f0
            fCurrentCursor: 2
            fPageSetup: Invalid Argument
            fPageSetupSize: 0
            fVPageCount: 0
            fHPageCount: 0
            fShowGrid: true
            fShowBorders: true
            fEntering: false
            fPrGrid: true
            fPrBorders: true
            fOnlyTheLines: false
            fWindowActive: false
            fDragIsAcceptable: false
            fFromFile: true
            fFindInFormulas: true
            fIgnoreCase: true
            fWrap: true
            fAutoRecalc: true
            fShowFormulas: false
            fDragACopy: false
            fSuppressHighlight: false
            fDisplayZero: false
            fNew: false
            fWhatToFind: NEIGHBOUR
            fReplaceWith: 
            fFOffset: 0
            fJob: 0
            fFirstGraphic: 0
        }
        r {
        }
        save {
            fView: 0x19410d40
        }
        updBorders: false

    0x7a03b608  0x10b7fca   CCellView::SetSelection(cell) + 0x52
        Variables:
        this: 0x19410d40 {
            fNames: 0x1943e208
            fBorderWidth: 49
            fBorderHeight: 16
            fBorderFontID: 1
            fSelView: 0x1943c420
            fProgressView: 0x1943a7b0
            fContainer: 0x194231b8
            fEditBox: 0x19411ef0
            fHScrollBar: 0x194149e8
            fVScrollBar: 0x194148f0
            fCurrentCursor: 2
            fPageSetup: Invalid Argument
            fPageSetupSize: 0
            fVPageCount: 0
            fHPageCount: 0
            fShowGrid: true
            fShowBorders: true
            fEntering: false
            fPrGrid: true
            fPrBorders: true
            fOnlyTheLines: false
            fWindowActive: false
            fDragIsAcceptable: false
            fFromFile: true
            fFindInFormulas: true
            fIgnoreCase: true
            fWrap: true
            fAutoRecalc: true
            fShowFormulas: false
            fDragACopy: false
            fSuppressHighlight: false
            fDisplayZero: false
            fNew: false
            fWhatToFind: NEIGHBOUR
            fReplaceWith: 
            fFOffset: 0
            fJob: 0
            fFirstGraphic: 0
        }
        c {
            v: Invalid Argument
            h: Invalid Argument
        }

    0x7a03bb58  0x10b7de0   CCellView::FindNext(bool) + 0x1e8
        Variables:
        this: 0x19410d40 {
            fNames: 0x1943e208
            fBorderWidth: 49
            fBorderHeight: 16
            fBorderFontID: 1
            fSelView: 0x1943c420
            fProgressView: 0x1943a7b0
            fContainer: 0x194231b8
            fEditBox: 0x19411ef0
            fHScrollBar: 0x194149e8
            fVScrollBar: 0x194148f0
            fCurrentCursor: 2
            fPageSetup: Invalid Argument
            fPageSetupSize: 0
            fVPageCount: 0
            fHPageCount: 0
            fShowGrid: true
            fShowBorders: true
            fEntering: false
            fPrGrid: true
            fPrBorders: true
            fOnlyTheLines: false
            fWindowActive: false
            fDragIsAcceptable: false
            fFromFile: true
            fFindInFormulas: true
            fIgnoreCase: true
            fWrap: true
            fAutoRecalc: true
            fShowFormulas: false
            fDragACopy: false
            fSuppressHighlight: false
            fDisplayZero: false
            fNew: false
            fWhatToFind: NEIGHBOUR
            fReplaceWith: 
            fFOffset: 0
            fJob: 0
            fFirstGraphic: 0
        }
        wrap: true
        skip: Unavailable {
            skip[0]: 9
            skip[1]: 9
            skip[2]: 9
            skip[3]: 9
            skip[4]: 9
            skip[5]: 9
            skip[6]: 9
            skip[7]: 9
            skip[8]: 9
            skip[9]: 9
        }
        first {
            v: 1
            h: 12
        }
        next {
            v: 18
            h: 1
        }
        wrapped: false
        s: helping out a neighbour
        lock {
            fLocker: 0x194231b8
            fLooper: 0
            fIsLocked: true
        }
        offset: 14

    0x7a03bcc8  0x10b729b   CCellView::Find(BMessage*) + 0x2f7
        Variables:
        this: 0x19410d40 {
            fNames: 0x1943e208
            fBorderWidth: 49
            fBorderHeight: 16
            fBorderFontID: 1
            fSelView: 0x1943c420
            fProgressView: 0x1943a7b0
            fContainer: 0x194231b8
            fEditBox: 0x19411ef0
            fHScrollBar: 0x194149e8
            fVScrollBar: 0x194148f0
            fCurrentCursor: 2
            fPageSetup: Invalid Argument
            fPageSetupSize: 0
            fVPageCount: 0
            fHPageCount: 0
            fShowGrid: true
            fShowBorders: true
            fEntering: false
            fPrGrid: true
            fPrBorders: true
            fOnlyTheLines: false
            fWindowActive: false
            fDragIsAcceptable: false
            fFromFile: true
            fFindInFormulas: true
            fIgnoreCase: true
            fWrap: true
            fAutoRecalc: true
            fShowFormulas: false
            fDragACopy: false
            fSuppressHighlight: false
            fDisplayZero: false
            fNew: false
            fWhatToFind: NEIGHBOUR
            fReplaceWith: 
            fFOffset: 0
            fJob: 0
            fFirstGraphic: 0
        }
        msg: 0x19488998 {
            what: 1181314660
            what: neighbour
            with: 
            where: true
            wrap: true
            case: true
        }
        s: 
        b: true
        w: 0x19442160 {
            fWindowModal: 0
            fEntry: 0x1943e250
            fDirty: false
            fWaitForSave: false
            fFileMenu: 0x1942db40
            fEditMenu: 0x1942d9e0
            fFormatMenu: 0x19483b58
            fFontMenu: 0x194839f8
            fStyleMenu: 0x19483898
            fSizeMenu: 0x19483738
            fTextColorMenu: 0x194835d8
            fCellColorMenu: 0x19483478
            fDataMenu: 0x19483318
            fGraphMenu: 0x194831b8
            fWindowMenu: 0x19483058
            fHelpMenu: 0x19482ef8
            fEditBox: 0x19411ef0
            fCells: 0x19410d40
            fShowingMenus: false
            fUndoMenuItem: 0x1947fbf8
            fRedoMenuItem: 0x1947fb60
            fSavePanel: 0
        }

    0x7a03c0f8  0x10c64a3   CCellView::MessageReceived(BMessage*) + 0x2427
        Variables:
        this: 0x19410d40 {
            fNames: 0x1943e208
            fBorderWidth: 49
            fBorderHeight: 16
            fBorderFontID: 1
            fSelView: 0x1943c420
            fProgressView: 0x1943a7b0
            fContainer: 0x194231b8
            fEditBox: 0x19411ef0
            fHScrollBar: 0x194149e8
            fVScrollBar: 0x194148f0
            fCurrentCursor: 2
            fPageSetup: Invalid Argument
            fPageSetupSize: 0
            fVPageCount: 0
            fHPageCount: 0
            fShowGrid: true
            fShowBorders: true
            fEntering: false
            fPrGrid: true
            fPrBorders: true
            fOnlyTheLines: false
            fWindowActive: false
            fDragIsAcceptable: false
            fFromFile: true
            fFindInFormulas: true
            fIgnoreCase: true
            fWrap: true
            fAutoRecalc: true
            fShowFormulas: false
            fDragACopy: false
            fSuppressHighlight: false
            fDisplayZero: false
            fNew: false
            fWhatToFind: NEIGHBOUR
            fReplaceWith: 
            fFOffset: 0
            fJob: 0
            fFirstGraphic: 0
        }
        inMessage: 0x19488998 {
            what: 1181314660
            what: neighbour
            with: 
            where: true
            wrap: true
            case: true
        }
        wind: 0x19442160 {
            fWindowModal: 0
            fEntry: 0x1943e250
            fDirty: false
            fWaitForSave: false
            fFileMenu: 0x1942db40
            fEditMenu: 0x1942d9e0
            fFormatMenu: 0x19483b58
            fFontMenu: 0x194839f8
            fStyleMenu: 0x19483898
            fSizeMenu: 0x19483738
            fTextColorMenu: 0x194835d8
            fCellColorMenu: 0x19483478
            fDataMenu: 0x19483318
            fGraphMenu: 0x194831b8
            fWindowMenu: 0x19483058
            fHelpMenu: 0x19482ef8
            fEditBox: 0x19411ef0
            fCells: 0x19410d40
            fShowingMenus: false
            fUndoMenuItem: 0x1947fbf8
            fRedoMenuItem: 0x1947fb60
            fSavePanel: 0
        }
        cs {
            fFormat: 0
            fFont: 0
            fLocked: false
            fHidden: false
            fAlignment: 2
            fTBorderColor: 0
            fLBorderColor: 0
            fBBorderColor: 0
            fRBorderColor: 0
        }
        ns {
            fFormat: 0
            fFont: 0
            fLocked: false
            fHidden: false
            fAlignment: 0
            fTBorderColor: 0
            fLBorderColor: 0
            fBBorderColor: 0
            fRBorderColor: 0
        }
        cf {
            fFormatID: 0
            fDigits: 0
            fCommas: false
        }
        makesDirty: false

    0x7a03c128  0x26ea421   BLooper::DispatchMessage(BMessage*, BHandler*) + 0x59
    0x7a03c328  0x27c6874   BWindow::DispatchMessage(BMessage*, BHandler*) + 0x1970
    0x7a03c388  0x27cac9a   BWindow::task_looper() + 0x28e
    0x7a03c3b8  0x26eb8b9   BLooper::_task0_(void*) + 0x3d
    0x7a03c3e0  0x1f64691   thread_entry + 0x21
    00000000    0x62414250  commpage_thread_exit + 0

    Registers:
          eip:  0x62414114
          esp:  0x7a03af64
          ebp:  0x7a03afa0
          eax:  0x000000de
          ebx:  0x0200a1c8
          ecx:  0x7a03af64
          edx:  0x62414114
          esi:  0x01ffddd9
          edi:  0x00000000
           cs:  0x001b
           ds:  0x0023
           es:  0x0023
           fs:  0x0063
           gs:  0x0023
           ss:  0x0023

Loaded Images: ID Text Base Text End Data Base Data End Type Name

3038    0x0039d000  0x005a6000  0x005a6000  0x005f3000  lib     /boot/system/lib/libicui18n.so.48.1.1
3035    0x005f7000  0x00627000  0x00627000  0x00634000  lib     /boot/system/lib/libstdc++.r4.so
3044    0x00634000  0x00648000  0x00648000  0x0064c000  lib     /boot/system/lib/libtranslation.so
3039    0x0064d000  0x00655000  0x00655000  0x00657000  lib     /boot/system/lib/libicuio.so.48.1.1
3045    0x006bc000  0x007b3000  0x007b3000  0x007b6000  lib     /boot/system/lib/libtextencoding.so
3040    0x00a3b000  0x00a73000  0x00a73000  0x00a7a000  lib     /boot/system/lib/libicule.so.48.1.1
3034    0x00ae8000  0x00c95000  0x00c95000  0x00cf4000  lib     /boot/system/lib/libtracker.so
3041    0x00ef6000  0x00f00000  0x00f00000  0x00f03000  lib     /boot/system/lib/libiculx.so.48.1.1
3032    0x01053000  0x0115b000  0x0115b000  0x0118e000  app     /boot/system/apps/Sum-It
3031    0x019d3000  0x019f1000  0x019f1000  0x019f4000  lib     /boot/system/runtime_loader
3046    0x01db1000  0x01dc1000  0x01dc1000  0x01dc4000  lib     /boot/system/lib/libroot-addon-icu.so
3036    0x01f35000  0x02000000  0x02000000  0x0204b000  lib     /boot/system/lib/libroot.so
3043    0x0209b000  0x021d6000  0x021d6000  0x021fe000  lib     /boot/system/lib/libicuuc.so.48.1.1
3042    0x02396000  0x023b5000  0x023b5000  0x023ea000  lib     /boot/system/lib/libicutu.so.48.1.1
3033    0x025f2000  0x02889000  0x02889000  0x02912000  lib     /boot/system/lib/libbe.so
3037    0x02a4d000  0x03be8000  0x03be8000  0x03bee000  lib     /boot/system/lib/libicudata.so.48.1.1
3030    0x62414000  0x6241c000  0x00000000  0x00000000  system  commpage

Areas: ID Base End Size (KiB) Protection Locking Name

10266   0x00302000  0x00303000           4  rw-S        full            _rld_debug_
10283   0x0039d000  0x005a6000        2084  r-x         full            libicui18n.so.48.1.1_seg0ro
10284   0x005a6000  0x005f2000         304  rw-         full            libicui18n.so.48.1.1_seg1rw
10285   0x005f2000  0x005f3000           4  rw-         full            libicui18n.so.48.1.1_seg2rw
10275   0x005f7000  0x00627000         192  r-x         full            libstdc++.r4.so_seg0ro
10276   0x00627000  0x00632000          44  rw-         full            libstdc++.r4.so_seg1rw
10277   0x00632000  0x00634000           8  rw-         full            libstdc++.r4.so_seg2rw
10298   0x00634000  0x00648000          80  r-x         full            libtranslation.so_seg0ro
10299   0x00648000  0x0064c000          16  rw-         full            libtranslation.so_seg1rw
10286   0x0064d000  0x00655000          32  r-x         full            libicuio.so.48.1.1_seg0ro
10287   0x00655000  0x00657000           8  rw-         full            libicuio.so.48.1.1_seg1rw
10265   0x00667000  0x00677000          64  rw-         full            rld heap
10300   0x006bc000  0x007b3000         988  r-x         full            libtextencoding.so_seg0ro
10301   0x007b3000  0x007b6000          12  rw-         full            libtextencoding.so_seg1rw
10288   0x00a3b000  0x00a73000         224  r-x         full            libicule.so.48.1.1_seg0ro
10289   0x00a73000  0x00a7a000          28  rw-         full            libicule.so.48.1.1_seg1rw
10272   0x00ae8000  0x00c95000        1716  r-x         full            libtracker.so_seg0ro
10273   0x00c95000  0x00cf2000         372  rw-         full            libtracker.so_seg1rw
10274   0x00cf2000  0x00cf4000           8  rw-         full            libtracker.so_seg2rw
10290   0x00ef6000  0x00f00000          40  r-x         full            libiculx.so.48.1.1_seg0ro
10291   0x00f00000  0x00f03000          12  rw-         full            libiculx.so.48.1.1_seg1rw
10267   0x01053000  0x0115b000        1056  r-x         full            Sum-It_seg0ro
10268   0x0115b000  0x0118e000         204  rw-         full            Sum-It_seg1rw
10262   0x019d3000  0x019f1000         120  r-x         full            runtime_loader_seg0ro
10263   0x019f1000  0x019f2000           4  rw-         full            runtime_loader_seg1rw
10264   0x019f2000  0x019f4000           8  rw-         full            runtime_loader_bss1
10303   0x01db1000  0x01dc1000          64  r-x         full            libroot-addon-icu.so_seg0ro
10304   0x01dc1000  0x01dc4000          12  rw-         full            libroot-addon-icu.so_seg1rw
10278   0x01f35000  0x02000000         812  r-x         full            libroot.so_seg0ro
10279   0x02000000  0x02013000          76  rw-         full            libroot.so_seg1rw
10280   0x02013000  0x0204b000         224  rw-         full            libroot.so_seg2rw
10295   0x0209b000  0x021d6000        1260  r-x         full            libicuuc.so.48.1.1_seg0ro
10296   0x021d6000  0x021fd000         156  rw-         full            libicuuc.so.48.1.1_seg1rw
10297   0x021fd000  0x021fe000           4  rw-         full            libicuuc.so.48.1.1_seg2rw
10292   0x02396000  0x023b5000         124  r-x         full            libicutu.so.48.1.1_seg0ro
10293   0x023b5000  0x023b8000          12  rw-         full            libicutu.so.48.1.1_seg1rw
10294   0x023b8000  0x023ea000         200  rw-         full            libicutu.so.48.1.1_seg2rw
10269   0x025f2000  0x02889000        2652  r-x         full            libbe.so_seg0ro
10270   0x02889000  0x02911000         544  rw-         full            libbe.so_seg1rw
10271   0x02911000  0x02912000           4  rw-         full            libbe.so_seg2rw
10281   0x02a4d000  0x03be8000       18028  r-x         full            libicudata.so.48.1.1_seg0ro
10282   0x03be8000  0x03bee000          24  rw-         full            libicudata.so.48.1.1_seg1rw
10302   0x193fb000  0x194eb000         960  rw-         full            heap
10258   0x618e7000  0x618eb000          16  rw-         full            user area
10261   0x62414000  0x6241c000          32  r-xSk       full            commpage
10311   0x6241c000  0x6241d000           4  rw-S        full            server_memory
10321   0x703dd000  0x70422000         276  rw-s        full            w>Find_719_stack
10260   0x70e48000  0x71e49000       16388  rw-s        full            Sum-It_713_stack
10313   0x71e49000  0x71e69000         128  rw-S        full            server_memory
10327   0x79ff9000  0x7a03e000         276  rw-s        full            w>analysis_722_stack
10317   0x7a31e000  0x7a363000         276  rw-s        full            w>Clipboard_717_stack

Protection Flags: r - read, w - write, x - execute, s - stack, o - overcommit, c - cloneable, S - shared, k - kernel

Semaphores: ID Count Last Holder Name

5944        0             0 some BBlockCache lock
5945        0             0 Catalog
5946        0             0 some BLocker
5947        0             0 some BLocker
5948        0             0 token space
5949        0             0 BLooperList lock
5950        0           727 AppServerLink_sLock
5951        0             0 LocaleRosterData
5952        0             0 some BLocker
5953        0             0 Catalog
5954        0             0 Catalog
5955        0             0 PeriodicUpdatePoses
5956        0             0 Light Lock
5957        0             0 Light Lock
5958        0             0 undo
5959        0             0 some BLocker
5960        0             0 some BLocker
5961        1             0 wrapper
5962        0             0 some BLocker
5963        0             0 some BLocker
5964        0             0 style_table_lock
5965        0             0 BMessageQueue Lock
5966        0             0 AppLooperPort
5978        0             0 screen list
5979        0             0 clipboard
5980        0             0 width buffer
5981        0             0 font lock
5982        0             0 BMessageQueue Lock
5983        0             0 Clipboard
5992        0             0 BMessageQueue Lock
5993        0             0 Find
6002        0             0 BMessageQueue Lock
6003        0           722 Sum-It
6009        0             0 some BLocker
6010        0             0 some BLocker
6014        0             0 font lock
6015        0             0 font list
6027        0             0 tool tip manager