On Saturday 31 of March 2012, Arnaud Versini wrote: > Hi, > > This patch prevent and fix memory issue in SwWW8ImplReader.
Did you base your patch just on your valgrind findings, or do you have also some other base for these changes, such as something in the .doc spec? You are right that reading of some of the sprm's is broken, but looking at the first problem with the test document in Read_UL(), it is called with nId = 0x246D, which is sprmPFContextualSpacing, and the .doc spec for that one says it's 1 byte, while e.g. nId = 0xA413, sprmPDyaBefore, is 2 bytes according to the spec. So as far as I understand it, somebody was a bit lazy and lumped together two slightly different things, which should otherwise be read differently, and the proper fix would be to always read the exact size depending on the nId. On the other hand, looking at the end of WW8AttributeOutput::FormatULSpace(), we apparently do write sprmPFContextualSpacing as 2 bytes, which seems wrong. So could you please explain why you decided to fix the problem this way? -- Lubos Lunak [email protected] _______________________________________________ LibreOffice mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice
