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

--- Comment #2 from Lionel Elie Mamane <[email protected]> 2012-05-15 09:41:13 
PDT ---
There's something wrong in how the window is populated in function
dbaccess::ORowSetCache::fill (file dbaccess/source/core/api/RowSetCache.cxx),
but I don't think that the problem is in that function; it is basically a loop
of

    for(; _bCheck && _aIter != _aEnd; _aIter++, _nPos++)
    {
        m_pCacheSet->fillValueRow(*_aIter, _nPos);
        _bCheck = m_pCacheSet->next();
    }

Note that the *first* execution of this loop gives correct data; this shows
e.g. if you scroll back to the *first* row in the table, that first row is
displayed correctly.

Subsequent executions of the loop are fucked up and fill in wrong data (from
another row than expected).

I followed the call of fillValueRow, it executes correctly but with wrong data.
It seems to me that m_pCacheSet is not positioned correctly, that's it. This
would mean the bug is in the call to m_pCacheSet->next(). The latter is
basically a delegation to m_xDriverSet->next(), so the problem must be there. 

Ah, this is an OKeySet... Looking at OKeySet::next()... Yup, I think I nailed
it.

Testing...

-- 
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