https://bugs.freedesktop.org/show_bug.cgi?id=50372

             Bug #: 50372
           Summary: BASE SIGABRT: dereference a past-the-end iterator
    Classification: Unclassified
           Product: LibreOffice
           Version: LibO Master
          Platform: Other
        OS/Version: Linux (All)
            Status: UNCONFIRMED
          Severity: normal
          Priority: medium
         Component: Database
        AssignedTo: [email protected]
        ReportedBy: [email protected]


Created attachment 62126
  --> https://bugs.freedesktop.org/attachment.cgi?id=62126
error message and backtrace

At the stage described in bug 47520 comment 3
<https://bugs.freedesktop.org/show_bug.cgi?id=47520#c3> step 7, the
program issues message "attempt to dereference a past-the-end
iterator" and aborts.  The attached typescript shows the failure and
gdb backtrace.


I have built from master commit d015384, pulled 2012-05-20, configured
as ...
    --disable-mozilla
    --enable-symbols
    --enable-dbgutil
    --enable-crashdump
    --disable-build-mozilla
    --without-system-postgresql
    --enable-debug
and running on ubuntu-natty (11.04).


Working backward in the code and gdb, I observe ...

(*) The dereference happens in OKeySet::refreshRow(), KeySet.cxx line
    1338.  At this point, m_aKeyIter equals m_aKeyMap.end().  The
    error message is true.

(*) m_aKeyIter became equal to m_aKeyMap.end() when
    OKeySet::refreshRow(), KeySet.cxx line 1348 increamented the
    iterator before the recursive call to OKeySet::refreshRow().
    After line 1349 erases the previously addressed element of
    m_aKeyMap, m_aKeyMap.size() is 2.


A couple of simple-minded hacks to the code ( early return from
recursive call to OKeySet::refreshRow(); decrementing instead of
incrementing the pointer before the recursive call ) merely defer the
crash to later in execution.  Guidance welcome.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs

Reply via email to