• Miklos Vajna's avatar
    sw: make ODT export of paragraph auto-styles deterministic · eb128a7d
    Miklos Vajna yazdı
    If a complex enough document is loaded into Writer and saved as ODT,
    then the content.xml's automatic paragraph styles (P<num>) are
    re-ordered on each save, which leads to unnecessary noise.
    
    The actual random order is created during import by the time we convert
    direct formatting (e.g. from HTML import) to autostyles, as
    StylePoolImpl::maRoot stores autostyles in a map that orders autostyle
    parents based on their pointer address.
    
    This has benefits like automatic ordering of item sets and fast
    comparison, so don't change that, but extend the svl API to also track
    the name of those parents.
    
    This way by the time StylePool::createIterator() would iterate over
    those autostyles, it can order the parents by their name, so two
    import->export runs will result in the same autostyle ordering.
    
    (This appears to be the only indeterminism in content.xml for a test
    HTML input, while meta.xml and settings.xml still changes all the time.)
    
    Change-Id: I1cfcae2c664a5c5c3dee48be733046979c1593ed
    Reviewed-on: https://gerrit.libreoffice.org/69469Reviewed-by: 's avatarMiklos Vajna <vmiklos@collabora.com>
    Tested-by: Jenkins
    eb128a7d
stylepool.hxx 3.17 KB