Re: [Libreoffice] sc_unoapi failure

2012-01-24 Thread Kohei Yoshida
On Mon, 2012-01-23 at 13:01 +0100, Eike Rathke wrote:
 Hi Stephan,
 
 On Monday, 2012-01-23 11:44:43 +0100, Stephan Bergmann wrote:
 
  On 01/23/2012 11:38 AM, Stephan Bergmann wrote:
  The Linux-RHEL6-x86_64@14-with-check tinderbox is consistently failing
  with a crash in sc_unoapi in all the builds since the one whose failure
  mail is at the end of this mail. I made a valgrind run of sc_unoapi (on
  a different machine than the tinderbox), and it indeed indicates two
  problems:
 
 Thanks for the pointers, I'm investigating.

One thing that comes to mind is our recent rework on ScColumn's cell
storage.  Especially in ScColumn::Delete(), before and after the rework
the logic of removing the cell from the array of cells may have changed.

The following part

pNoteCell-Delete();
--nCount;
memmove( pItems[nIndex], pItems[nIndex + 1], (nCount - nIndex) * 
sizeof(ColEntry) );
pItems[nCount].nRow = 0;
pItems[nCount].pCell = NULL;

was what was in 3.5.  The following

pNoteCell-Delete();
maItems.erase(maItems.end() - 1);

is what we have on master.  Clearly it's not correct to always pop from
the last element on cell deletion...  I should've spotted this during
review.  This is a disadvantage of reviewing a large patch. :-/

Maybe that's what's causing the crash?

Kohei

-- 
Kohei Yoshida, LibreOffice hacker, Calc

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] sc_unoapi failure

2012-01-23 Thread Eike Rathke
Hi Stephan,

On Monday, 2012-01-23 11:44:43 +0100, Stephan Bergmann wrote:

 On 01/23/2012 11:38 AM, Stephan Bergmann wrote:
 The Linux-RHEL6-x86_64@14-with-check tinderbox is consistently failing
 with a crash in sc_unoapi in all the builds since the one whose failure
 mail is at the end of this mail. I made a valgrind run of sc_unoapi (on
 a different machine than the tinderbox), and it indeed indicates two
 problems:

Thanks for the pointers, I'm investigating.

  Eike

-- 
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3  9E96 2F1A D073 293C 05FD


pgp9f48BQD0U7.pgp
Description: PGP signature
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] sc_unoapi failure

2012-01-23 Thread Kohei Yoshida
On Mon, 2012-01-23 at 11:51 -0500, Kohei Yoshida wrote:

 maItems.erase(maItems.end() - 1);

Thanking a bit further, maybe changing that to

maItems.erase(maItems.begin() + nIndex);

should fix the crash?

-- 
Kohei Yoshida, LibreOffice hacker, Calc

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] sc_unoapi failure

2012-01-23 Thread Eike Rathke
Hi Kohei,

On Monday, 2012-01-23 11:55:15 -0500, Kohei Yoshida wrote:

  maItems.erase(maItems.end() - 1);
 
 Thanking a bit further, maybe changing that to
 
 maItems.erase(maItems.begin() + nIndex);
 
 should fix the crash?

It did, muchas gracias :-)

  Eike

-- 
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3  9E96 2F1A D073 293C 05FD


pgpQULtMIBXqg.pgp
Description: PGP signature
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice