On Tuesday 06 of October 2020, Noel Grandin wrote: > Hi > > i.e. very large spreadsheets of up to 16 million rows. > > So I did some more investigation into this. In various places, we need to > accumulate things like row-heights and other things, numbers which, with > jumbo sheets, easily exceed 32-bits. > > HOWEVER > > All over the place, we pass these values through > sal_uLong/sal_Long/long/unsigned long. > > Which is 32-bits on Windows. Doh! > > Honestly, the only solution I can think of (and one I confidently expect us > to reject), is that we declare a flag day, and search and replace > sal_Long/sal_uLong/long/unsigned long with a 64-bit type across the ENTIRE > code base. Does it really need to be this extensive though? E.g. VCL should be more or less safe from this, I think trying any drawing with >32bit sizes is simply not going to work one way or another. Also, how realistic of a solution would be to compile with the undefined-behaviour sanitizer and make it fail on overflows as a way to get a decent enough coverage of the problematic areas? -- Luboš Luňák l.lunak@xxxxxxxxxxxxx _______________________________________________ LibreOffice mailing list LibreOffice@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/libreoffice