Update of bug #67602 (group groff):

                  Status:             In Progress => Fixed
             Open/Closed:                    Open => Closed
         Planned Release:                    None => 1.24.0

    _______________________________________________________

Follow-up Comment #7:


commit c17c329f34f8fc3e00139115bd66953238447580
Author: G. Branden Robinson <[email protected]>
Date:   Mon Oct 20 15:34:18 2025 -0500

    [gropdf]: Fix Savannah #67602 (hella bad perf).
    
    * tmac/pdf.tmac: Fix performance regression in PDF bookmark lookups,
      using O(1) lookup method instead of one that is formally O(n) but
      probably O(n^2) in practice as the number of bookmarks in a document
      increases.
    
      (pdf:lookup): Finagle a constant-time lookup for PDF bookmarks, which
      are stored as string names.  Drop linear lookup by bookmark number,
      comparing value of each numbered bookmark's "tag" to the given macro
      argument.  Instead, assign value of first argument to new string
      `pdf:lookup-target`.  Use GNU troff's `als` aliasing facility to make
      new string `pdf:lookup-result` an alias of `pdf:lookup-target`.
      Remove `pdf:lookup-target` before returning, leaving
      `pdf:lookup-result` defined for benefit of callers.
    
      (pdf*href): Assign value of `pdf:lookup-result` string instead of
      vanished `pdf:lookup-value` to string `PDFHREF.DESC`.
    
    Fixes <https://savannah.gnu.org/bugs/?67602>.  Thanks to Deri James for
    the report; he noted a major regression in PDF production time with the
    non-constant lookup time when generating Alex Colomar's collected Linux
    man-pages document.  For me, this takes generation time down from about
    40 minutes to about 30 seconds.  Problem introduced by me in commit
    aa43ffcfb8, 16 March 2024, but not immediately exposed--that took some
    more work on PDF bookmark hyperlinking.




    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?67602>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to