Status report: consultancy team, week 17, 2024

Caolan

  • mtune=generic is x86_64 specific
  • fortify warnings on no-opt file
  • coverity warning in online
  • crash of 24.04 in bare docker image
    https://gerrit.libreoffice.org/c/core/+/166467
  • cid#362805 Dereference after null check
    → comment on wsd: support synchronous CheckFileInfo by Ashod · Pull Request #8775 · CollaboraOnline/online · GitHub
  • cypress debugging
  • debug invalidation.spec for a while
  • cypress debugging
    • more invalidation test improvement
  • watchdog debugging
  • I see an error message about an unsupported dwarf format which
    is a plausible reason for perf not giving useful callstacks
  • objdump --dwarf=info ~/7c194f8e504235157ca381369d8f57bc71a435.debug
    Section ‘.debug_info’ has an invalid size: 0.
  • for the .debs we take the contents of the output rpms and the
    original binaries from the rpm build and make the debs from that, so
    the dbgsym package is built from the same binaries that the rpms
    are generated from
  • but the dbgsym debuginfo binaries are “invalid size”, while
    the original unstripped binaries and the rpm debuginfo are ok
  • the ubuntu debuginfo is generated with dh_strip
  • debhelper/dh_strip at master · Debian/debhelper · GitHub
  • looks to me that this error is coming a bug like
    Making sure you're not a bot!
    with --compress-debug-sections
  • adding:
    override_dh_strip:
    ~/bin/dh_strip_nocompress
    to ./debian/rules after copying dh_strip with
    sed to remove --compress-debug-sections gives
    dbgsym packages with debuginfo that doesn’t report “invalid size”
  • more watchdog stacktrace investigation
    • but better debuginfo still doesn’t help
  • perf 4.15.18 seems to be a stinker, the collection looks good,
    but the reporting seems to be the problem
  • lets try a later perf, but one from the same 4.X series that
    likely will work on Ubuntu 18.04
  • build latest 4.20 kernel perf from source[1]
  • that seems to work in local docker image
  • transplanted to demo.eu and a sample run for an hour give
    everything with sensible callstacks, set it up to run for a day
    and auto-report
  • bisect crashtesting failures to
  • backport a tooltip exception seen debugging Anna’s thing
  • some more work to get cypress invalidation tests more reliable
  • experiment with Ret_maybenull to get unchecked return
    of SfxViewShell::Current etc seen as a compiler warning.
  • watchdog perf ran out of space over 24 hours, so some tuning of
    that still required

[1]
apt-get install flex bison libelf-dev libunwind-dev libdwarf-dev
libdw-dev binutils-dev libdwarf-dev libunwind-dev libzstd-dev
libaudit-dev libiberty-dev libslang2-dev systemtap-sdt-dev
libssl-dev libperl-dev libnuma-dev libbabeltrace-ctf-dev
wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.20.16.tar.xz
tar xf linux-4.20.16.tar.xz
cd linux-4.20.16/tools/perf
make -C .
./perf --whatever

Mike

** Exporting multiple consecutive spaces to ReqIF-XHTML
*** Hacked a bit on this
** tdf#160253
*** This one is complex
*** In fact, this just uncovered a pre-existing problem
*** Found a leftover from paragraph mark re-implementation work
** tdf#160253
*** Have a patch
** SVG rendering issues in Writer
*** They approved the estimation
*** Working on this, and “Text rendering during Draw PNG export”
** SVG rendering issues in Writer
** Text rendering during Draw PNG export
*** Working on these
** SVG rendering issues in Writer
** Text rendering during Draw PNG export
*** Working on these

Tomaz

PDF Reader - Create comments / add notes – improve slide & draw commenting

  • Added isAnnotationObject to SdrObject
    • the idea is that any object can be considered as an annotation, not
      just the AnnotationObject
    • the AnnotationObject will only replace the current pop-up comment
    • but other SdrObjects (SdrTextObj for example) will be used for PDF
      Annotations
    • the annotation functionality will be added into the SdrObject and
      SdrView core
      • some also into impress/draw code
  • Checked how MSO PowerPoint annotations work so we can be compatible
    with that
    • will add hasAnnotation or something similar to the SdrObject as well
    • all objects can have an annotation associated
    • so there are 2 concepts - SdrObject has an annotation or acts like
      an annotation
    • they are conceptually very different but not necessarily exclusive
  • Disabling selection for annotation objects, also disabling other things
    • like selection, adding to navigator,…

PDF Reader - Accessibility view – bringing checker sidebar to Online

  • Switched to this as it is a regression in 24.04
  • Managed to added the accessibility checker sidebar to online
    • not much needed to be done, but there are issues
    • the sidebar doesn’t update in online, but the update is triggered
      • online accessibility checker triggers the update
      • at that time the accessibility checker is run again and the
        content of the sidebar (a box) is removed and added again
      • in online nothing happens however - investigating why and how to fix
    • another problem is that some a11y issues text in the sidebar are
      links, which, when clicked, show you the place of the issue in the document
      • the links aren’t shown in online - they are just plain text
      • without that it is a bit hard to know where the issue is located
        in the document
      • the exact place also visually marks (blinks) in desktop - we
        probably should also mark the issue in a way, so the user knows where
        the issue is
      • (not sure blinking the location is a good thing however - better
        marking it)

Miklos

Worked on: