Status report: consultancy team, week 12, 2024


  • ofz#67495 out of memory
  • work on a read-only NumberFormatting mode for threaded formula calc
  • add a new fuzzer for calc’s html import, sc-html
  • tdf#159258 prototype using drawinglayer primitives to create a
    group that optionally shows/hides depending on if presentation
    mode or not for placeholders
  • work on a read-only NumberFormatting mode for threaded formula calc
  • fix profiling script for haproxy case
  • work on a read-only NumberFormatting mode for threaded formula calc
  • merge read-only NumberFormatting mode for threaded formula calc
  • backport watchdog support to 23.05
  • fix new oss-fuzz finds from sc-html
  • various OFZz
  • investigate options for atomic inc/dec bottleneck
    • trying to clone pCode on interpreter init, and then just use
      non-atomic inc/dec is very slow
    • on the other hand it looks that
      a) tokens passed to interpret should end up in the same ref count
      at the end of the process as they were are the start.
      Maybe inc/dec could be totally elided for those tokens.
      b) there are “temp” tokens which are only pushed to
      the interpreters thread local stack, presumably these
      could use basic inc/dec and not atomic ones



Impress: Font size changes in textbox when editing PPTX

  • Written reference documents, which have scaled text boxes (each scaling level) and a bitmap created from the text box overlapping the text box
    • this is useful to see if the text box scaling matches the MSO text box rendering
    • with this I also figured out how MSO scales
      • it’s seems to be simple (unless there is some condition I’m not aware of)
      • it always uses 14 different font and spacing scaling combinations
      • adapted those in scaling algorithm
  • Moved scaling into editeng
    • we check if the size exceeds the expected size of the text box and if it does, we increase the level (so it creates more space)
    • we loop this in ImpEditEng::FormatDoc until we get a good fit
    • works nicely in “viewing” mode
    • still an issue in “edit” mode
    • starting non-scaled and only adjust to a scaled size after a text change
    • figuring out the issue with this
    • another issue is when we create more space in edit mode, so we could increase the size, but currently we do not
  • Comparing to reference documents the new algorithm now matches much better to the one in MSO
    • should also be faster in certain cases
    • there are still ways to improve this and make it even faster


Worked on: