Age | Commit message (Collapse) | Author | Files | Lines |
|
This is a follow-up to:
- a5a603aa83fbc6604952bd6bf9795ceed61978e9
- b93b2b974e003a2e6b8cf9852b7e7e4fb126fff0
- 5a7288901fad8bd833357f1672213bce8273ab3c
avoiding breakage on gcc48 for CentOS6 baseline (which has no full
c++14 support yet)
Change-Id: I9654b057f792103e6934f19b97dc0d3c84d77852
|
|
Started to assert with ef8427d12a63127a2eb867637699343d630545dd
because a bookmark was created on the wrong node but this never worked.
Change-Id: Ife01a3c8041b4c7d08b2d749dde77ced388f7215
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96556
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 4de190d55900387bc07971bac84f7cd52e329146)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96578
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit 7866336f1ce3d5b686847e98a218e6b4d4ca9db5)
|
|
There were 2 problems:
* due to the first bookmark portion, the line got an additional 55 twips
of its descent added to its height in SwLineLayout::CalcLine().
* when called from SwTextFrame::CalcHeightOfLastLine(),
SwLineLayout::MaxAscentDescent() is supposed to ignore FlyInCnt
portions, but it didn't ignore the bookmark portion which had the same
height, hence the resulting line spacing was 855 instead of 0 and the
upper margin of the next paragraph increased similarly.
(regression from 4ce8120f1e53f7b81e653b01d141643013bc69ab)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95438
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 97d77b670d1c2e5dd045130427c42a6b74d55889)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95423
Tested-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 4927143b6652ce2d19e6f476923112f0ab7fc273)
Change-Id: I52b154a48c5d712b7e3e323d2e3e08f37bf1afd1
|
|
This m_pPrevious pointer is a bad idea, should just use
FindPrevPortion() to find it, which shouldn't take that long to iterate
all the portions in the current line.
(regression from 4ce8120f1e53f7b81e653b01d141643013bc69ab)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91622
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
(cherry picked from commit f68749054f36f070310e70e2dbf0a11c496539c0)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95415
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit deee67c566811189ee66d5766d0c9fc644a0120b)
Change-Id: Ibb5f2bb28d959958547ed27c51e5084cc746d642
|
|
FLY_AT_FLY shape is anchored on SwStartNode of fly section.
(regression from ef8427d12a63127a2eb867637699343d630545dd)
Change-Id: I4fe70237c060cc810af82657bc5791e7024db8f5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91336
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 71ed878556422068041025668876fb3300c128df)
|
|
Maybe it looks better without.
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88039
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit c0b7fe8281319146c4a2e36e203cfd65633ce3bd)
Change-Id: Id603fbef361574cafbe2ec9f625ac54fea27a0f6
|
|
Add a new SwBookmarkPortion, derived from SwControlCharPortion.
There is no character for the bookmark in the text so the portion has
length of 0, which makes things quite a bit more tricky.
Formatting:
* SwBookmarkPortion is created last in WhichFirstPortion().
* In an empty paragraph the SwTextFrame::FormatEmpty() must be disabled.
* If there's a bookmark at the end of a paragraph,
SwTextFormatter::CalcAscent() must use the font of the previous
character, not the paragraph font, because that could grow the line
if it's higher.
* The SwMultiPortion complicates matters, because it uses a nested
SwTextFormatInfo and thus we need some extra steps to prevent
duplicate SwBookmarkPortions; this is particluarly a problem for
rotated text portions.
- SwTextFormatter::BuildPortions() must advance the outer
SwTextFormatInfo's bookmark position because BuildMultiPortion() has
already created the SwBookmarkPortion.
- If a SwBookmarkPortion is at the start of a SwMultiPortion, it will
be created before the SwMultiPortion but must be painted inside the
SwMultiPortion because its font is going to be initialised as inside
the SwMultiPortion (e.g. it will be rotated) so its position must
also be adapted to be inside, and only
SwTextPainter::PaintMultiPortion() does the setup for that; add a
hack to move it in SwTextFormatter::BuildMultiPortion().
Painting:
* Using the original font seems rather difficult, hard to predict what
some character is going to look like, and how it scales if the size is
increased; use OpenSymbol instead. Unfortunately OpenSymbol doesn't
have a good glyph that could be used for both the end of a bookmark
and start of another bookmark at the same position.
* SwLinePortion::PrePaint() wants to avoid moving the portion
half-outside the frame but often it looks better that way (previously
it was misaligned, now it's half-outside).
* Not sure if it makes sense to draw a field shading in
SwTextPaintInfo::DrawViewOpt() too; let's try it out, but dependent on
the same IsViewMetaChars() setting as the bookmark character itself,
not on the field shading setting.
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87364
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
Tested-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 4ce8120f1e53f7b81e653b01d141643013bc69ab)
Change-Id: I1ab94afb417221e278dbb3afd6c978a05fc78497
|
|
The sign was flipped for the 90° case, resulting in painting too far
up the page, ever since this was added in
293ed704cf15107049578c2e6e5ed00dcac2d4fb.
In SwControlCharPortion::Paint() rotation wasn't handled at all.
Change-Id: I83a7eef8b2f6126e070d8c48f75378b6cf6d50e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87707
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 8029179e35fcda5867769d4ca6f7ee32bca3e9bc)
|
|
Change-Id: Id088e3f73e6bda3c6b11d421a52c59c67446f8a2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87706
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit ac443862c6b9599ae5776767c4a169c37e47477e)
|
|
Always create the portion, not just when the IsViewMetaChars is active.
This has the advantage that nothing has to be invalidated when toggling,
and the disadvantage that kerning at bookmark positions will never
happen.
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87363
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 2817f07fdd942cea6574043971534bf089b527ce)
Change-Id: I78943f337eef5c64cff33f6df6ff1a10acb1b8bc
|
|
Add a list of bookmark positions in the text frame to SwScriptInfo.
Initialising this turned out to be more complicated than expected.
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87202
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 46e04a712e97f9095ef4da7f0e52f50cf2bfbb32)
Change-Id: I1738186b057b0eece80177097a03826365107589
|
|
Invalidate the text frames when a bookmark is inserted or deleted; also
when MarkManager::repositionMark() changes the positions.
The other calls of SetMarkPos()/SetOtherMarkPos() look like they're all
from code that corrects positions after text insertions or deletions so
no additional invalidate should be necessary there.
It turns out that one WW8 document in sw_filters_test wants to insert
a bookmark on a SwGrfNode; check for that in makeMark().
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87157
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit ef8427d12a63127a2eb867637699343d630545dd)
Change-Id: I293e6da9042bea5992cb27091b9cff77e5c7961d
|
|
Change-Id: I7cc0dfa2b129d69d49b555495d77c2c710689e94
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88586
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
(cherry picked from commit 4a5c627e61dc1bd67106a18319eabecb50b79658)
Without the WriterCommands/UI changes.
Change-Id: Ib1d28f96bd1c4a87ef644a376cefa2cf5c7e6728
Conflicts:
officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
sw/sdi/_textsh.sdi
sw/sdi/swriter.sdi
|
|
Change-Id: Ifb9f757111a6fcbb283d2350ed2ccd42de19d5df
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88585
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
(cherry picked from commit 087d9191ab642e4b00afb71571d83ffe04589769)
Without the WriterCommands string/UI changes.
Change-Id: I8f8a88bf7624438923b5f611549c703e304763b5
Conflicts:
officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
sw/inc/cmdid.h
sw/sdi/_textsh.sdi
sw/sdi/swriter.sdi
sw/source/uibase/shells/textsh1.cxx
|
|
... as is already done for PASTE, so the user doesn't wonder why it
doesn't work.
Change-Id: I4c967fdf46bc76f0930d665cf84ca27ef92c00d6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91142
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit b6fb2719170d1d96fc60305d73663ddd81d887e5)
|
|
While processing the key input, an additional if statement for the
paste command (Ctrl+V) is added.
Change-Id: If205589256855422ac93f8a5ed8a1ee394ca9310
Reviewed-on: https://gerrit.libreoffice.org/58360
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
(cherry picked from commit 66838c2418df4d016be0da0ef1c7e54934c03421)
|
|
The text placeholder field becomes totally nonfunctional, the other
placeholder fields allow inserting but are then not deleted; just ignore
protection for placeholder fields.
Change-Id: Ic478a32d616464bfe7f24fc851c1998b5e01a23b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91140
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 3fc68fdc6f4ef04091db2fd46499a10396c3a4f2)
|
|
If the ProtectBookmarks bit is set, don't allow bookmark
changes, neither via the bookmark dialog nor the navigator.
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87361
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit cb5d18871b46ef4f7bc47eb4d71df5374d712575)
Omit new strings for backport to 6.1 branch, was only shown as
disabled context menu item anyway.
Change-Id: I035faaf3871c7107dd1aac38c4e6867291827346
|
|
If SwWrtShell::DelRight()/DelLeft() are called without an active
selection, they select 1 character to the right/left, but then they
don't check if the selection is read-only, so then SwEditShell::Delete()
calls HasReadonlySel() and silently returns.
Pop up the dialog in this case too, for consistency.
Change-Id: I3d72f136f4d132de3f8a6f3cc2aab493ced95a28
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88055
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 0788ab19869aa2ae5f7fbef9e3c13ceb641f80ee)
|
|
SwPaM::HasReadonlySel() checks PROTECT_BOOKMARKS / PROTECT_FIELDS
setting and checks if bookmarks or fields are selected for deletion.
This should already be called by the UI code in all the right places,
for the other content protection features, and cause a dialog to pop
up.
What's not ideal about this is that it's impossible to delete a
character immediately before or after a point bookmark because that
would delete the point bookmark too.
The bookmark check is done by extracting a function out of
MarkManager::deleteMarks() so both will use the same logic.
The problem of DelContentIndex() duplicating that logic remains...
Apparently the status bar at the bottom already displays "read-only"
for such a selection.
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87778
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 9e7b5c74b484fcfd3317db56745b26b10897047d)
Change-Id: Id87999198a03ba847ef0eff5651fef3bd2517fae
|
|
On second thought, let's have 2 settings because there might be some
use-case for protecting one but not the other.
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87777
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 249b10c22f4a35672a7388d34b2ded1b76054dac)
Change-Id: If8442b64adeeed80b25c8b69f607f2d4993786e4
|
|
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87360
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit a5cd4d39f09c3658c2b7cfff4ab6a74449d4f0c0)
Change-Id: I8dac403ddea59026b5f52c132c8accc1bd0ada92
|
|
This is the unit test for commit
5cee586a97a11c23dd252accc42099bd5e9b4187 ("sw: fix moving of
at-page anchored flys to different page"). Originally the error
was just triggered by toggling "View -> Field Names". Luckily
it's also triggered by adding some text to page four, so no need
for some UI test.
Change-Id: I3a63b50dd898788607c3d24a848d8f43ae966377
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87776
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 5fed8bb5f6f65963fed27f96de3be14dff830d38)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87847
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit 4db184ea279a2974679b05eaa8ca52ec087f68af)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87983
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
The document has a paragraph with 4 as-character anchored flys depicting
Zirbenholz; due to their size and an additional fly that is anchored at
the paragraph, there are 3 lines that do not fit onto a single page.
This situation causes a loop that proceeds like this:
text frame 80 is the follow of text frame 21.
when formatting 80:
the 1 line violates the widow rule (>=2) and PREP_WIDOWS is sent to
21, invalidating its FrameAreaSize
80 validates its FrameAreaSize
when formatting 21:
PREP_WIDOWS_ORPHANS sent to 21
CalcPreps() sees IsPrepWidows() and sets a huge height and calls
SetWidow(true)
SwTextFrame::WouldFit() sees IsWidow() true and resets it false
SwTextFrame::WouldFit() sees IsWidow() false and a huge but
insufficiently huge height
21 validates its FrameAreaSize
CalcPreps() sees IsPrepAdjust()
FindBreak() calls TruncLines() and because of as-char fly
invalidates FrameAreaSize of 80
The loop is most easily reproduced by printing via the API; it's
possible to get a loop when loading the document in the UI, but
typically the UI remains responsive even though the layout never
finishes.
As it happens, before commit ee299664940139f6f9543592ece3b3c0210b59f4
"SalInstance::DoYield: Don't drop SolarMutex when accessing user event
queue" the loop on printing via API was broken by releasing SolarMutex;
the result, however, was incorrect, with the last line of Zirbenholz
that should be on the second page missing in the PDF.
This loop is presumably a regression from commit
f2e3655255db4032738849cd4b77ce67a6e2c984 "Avoid
-fsanitize=signed-integer-overflow", which changed a magic number in
SwTextFrame::CalcPreps(), but didn't adapt the poorly documented
corresponding magic numbers in SwTextFrame::WouldFit(); in LO 5.1.6.2
the CPU is idle after loading the document.
Change-Id: Ib6563c21edb68945c14a61b51ba34f0ee3f2544a
Reviewed-on: https://gerrit.libreoffice.org/85623
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 68a5afaaabd0c75bba3439cfdff90fb75d1cdd3f)
|
|
...after f2e3655255db4032738849cd4b77ce67a6e2c984 "Avoid
-fsanitize=signed-integer-overflow" had already reduced it from using LONG_MAX
to TWIPS_MAX/2 in the past. This time, avoid the computation of
> const sal_uInt64 nCurrentDist = sal_Int64(aDiff.getX()) * sal_Int64(aDiff.getX()) + sal_Int64(aDiff.getY()) * sal_Int64(aDiff.getY()); // opt: no sqrt
in GetFrameOfModify (sw/source/core/layout/frmtool.cxx) from overflowing (where
aDiff.getY() derives from nTmp and can be close to it in magnitude, so computing
its square would overflow on platforms where TWIPS_MAX is a large sal_Int64
value).
(The "empirically shown to be large enough in practice" in the comment is a
successful `make check` on Linux 64-bit with UBSan.)
Change-Id: Ic7f058bd6853ff04ccb50a150509e98f850d12d2
Reviewed-on: https://gerrit.libreoffice.org/74801
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
Tested-by: Jenkins
(cherry picked from commit 8723ac4e20eda87a82393f2f6c7d28ece8514238)
|
|
Reviewed-on: https://gerrit.libreoffice.org/81892
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Conflicts:
sw/qa/extras/ooxmlexport/ooxmlexport14.cxx
Change-Id: I6390344b72b0148cff8e0ed5150d7abfc9490a2a
Reviewed-on: https://gerrit.libreoffice.org/84793
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
a) treat shared/Scripts equivalently to document scripts
This doesn't automatically warn/block running those scripts when used in a
freshly loaded document on its own however
because DocumentMacroMode::checkMacrosOnLoading will see at...
if ( m_xData->m_rDocumentAccess.documentStorageHasMacros() || hasMacroLibrary() )
that the document contains no macros and flip the allow macros flag to true so
that potentially new uses of macros added by the user during the edit are
allowed to run
b) so, add an additional flag to indicate existence of use of macros in a document
c) for odf import, set it when a script:event-listener tag is encountered
d) for html import when registerScriptEvents or SwFormatINetFormat::SetMacroTable is called
e) for doc import when Read_F_Macro or StoreMacroCmds is called as well for good measure
f) for xls import when registerScriptEvent or ScMacroInfo::SetMacro is called
g) for oox import when VbaProject::attachMacros is called
Reviewed-on: https://gerrit.libreoffice.org/77387
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
(cherry picked from commit 35fe064a67b54b0680b4845477c9b8751edda160)
Change-Id: Ic1203d8ec7dfc217aa217135033ae9db2888e19b
|
|
Change-Id: Ib652174148e6997c1aabe0251a62612f28243d6e
Reviewed-on: https://gerrit.libreoffice.org/67200
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Tested-by: Szymon Kłos <szymon.klos@collabora.com>
(cherry picked from commit a4ac1a93b540ae22dd317d88b5c3da8a7678db24)
Reviewed-on: https://gerrit.libreoffice.org/80554
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Catch exceptions and hide progress dialog.
Reviewed-on: https://gerrit.libreoffice.org/65815
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Tested-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/72280
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Tested-by: Jenkins
(cherry picked from commit 4bba6c122c3bb3468bccd69d53d70d00fd00bdcc)
Change-Id: Ie63c8d7e001c90f40cf7504fd8248a6742e9d244
Reviewed-on: https://gerrit.libreoffice.org/80553
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
The failing assert reproducing scenario is the steps in
https://bugs.documentfoundation.org/show_bug.cgi?id=116543#c0
rMergeDescriptor.nMergeType == DBMGR_MERGE_PRINTER;
rMergeDescriptor.bPrefixIsFilename is true;
rMergeDescriptor.sPrefix is empty.
The failing assert is unrelated to the crash in tdf#116543.
It looks like the assertion was incorrect; assert on empty
prefix instead.
Change-Id: Ibeedb90a9fac810124283fc06aa756777fa04720
Reviewed-on: https://gerrit.libreoffice.org/56863
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/80552
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
The problem is that some flys are anchored at a page with Y pos 35k and
are moved to a page with Y pos 17k, while retaining
mbFrameAreaPositionValid=true and their existing Y position.
The flys will never be painted or even invalidated again because their
position is off-page.
This is somehow a regression from commit
0b53f794ffb2550288610b9488f11fd21ab85aae - without the new mutation of
an empty-page to a normal page due to at-page flys by resetting
m_bEmptyPage in SwPageFrame::UpdateAttr_() on it the problem didn't
happen.
Due to the above commit, the page 3 is not an empty-page any more as it
has 2 flys anchored on it; previously those flys were moved (only in the
layout, not in the model!) to page 4 by some funny code in
SwRootFrame::AssertPageFlys(), which at first glance seems like an
improvement.
Change-Id: Ia071931b26e64245f90233232dd2ac0d64365ce6
Reviewed-on: https://gerrit.libreoffice.org/75009
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
(cherry picked from commit 5cee586a97a11c23dd252accc42099bd5e9b4187)
Reviewed-on: https://gerrit.libreoffice.org/75049
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
The problem is that when loading from a stream, there is no BaseURL and
also no storage for the document.
Due to the lack of BaseURL, the sfx2::createBaseURI() throws and loading
RDF metadata fails, which also pops up an annoying warning dialog.
Try to handle this in a similar way than a newly created document (see
GetDMA()), by using the vnd.sun.star.tdoc scheme URL for the document;
this however currently requires that the document has a XStorage, which
is also not the case here.
So add another UNO method to tdoc UCP's tdoc_ucp::ContentProvider,
to split out the creation of the tdoc schema URL from the creation of
the ucb Content, to get rid of the XStorage requirement.
Change-Id: Ica62743f9d21db0b1464b70db1a62ebc61989ef8
Reviewed-on: https://gerrit.libreoffice.org/67882
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
(cherry picked from commit 0a5ca5768f56db481dd3b947b3dddaab7ed96450)
Reviewed-on: https://gerrit.libreoffice.org/69101
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit 98b99ef61c6d725962cdbaa05ff90c9d1aa72d57)
Reviewed-on: https://gerrit.libreoffice.org/75963
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Move the fix from 6d0ea082889c89eb8b408779f2de08da7441ff54 to
SwFlyFrame::DestroyImpl() so we unregister every SwFlyFrame.
==1550==ERROR: AddressSanitizer: heap-use-after-free on address 0x615000383f56 at pc 0x7efcd70d5ab9 bp 0x7ffeb7ac7c40 sp 0x7ffeb7ac7c38
WRITE of size 1 at 0x615000383f56 thread T0
0 SwAnchoredObject::SetTmpConsiderWrapInfluence(bool) sw/source/core/layout/anchoredobject.cxx:743:32
1 SwObjsMarkedAsTmpConsiderWrapInfluence::Clear() sw/source/core/layout/objstmpconsiderwrapinfl.cxx:53:23
2 SwLayouter::ClearObjsTmpConsiderWrapInfluence(SwDoc const&) sw/source/core/layout/layouter.cxx:387:84
3 sw::DocumentLayoutManager::ClearSwLayouterEntries() sw/source/core/doc/DocumentLayoutManager.cxx:497:5
4 sw::DocumentStateManager::SetModified() sw/source/core/doc/DocumentStateManager.cxx:45:39
5 sw::DocumentContentOperationsManager::DeleteRangeImplImpl(SwPaM&) sw/source/core/doc/DocumentContentOperationsManager.cxx:3942:36
0x615000383f56 is located 342 bytes inside of 504-byte region [0x615000383e00,0x615000383ff8)
freed by thread T0 here:
1 SwFlyAtContentFrame::~SwFlyAtContentFrame() sw/source/core/inc/flyfrms.hxx:159:7
2 SwFrame::DestroyFrame(SwFrame*) sw/source/core/layout/ssfrm.cxx:389:9
3 SwFrameFormat::DelFrames() sw/source/core/layout/atrfrm.cxx:2624:17
4 SwUndoFlyBase::DelFly(SwDoc*) sw/source/core/undo/undobj1.cxx:161:19
5 SwUndoDelLayFormat::SwUndoDelLayFormat(SwFrameFormat*) sw/source/core/undo/undobj1.cxx:403:5
6 SwHistoryTextFlyCnt::SwHistoryTextFlyCnt(SwFrameFormat*) sw/source/core/undo/rolbck.cxx:538:20
7 SwHistory::Add(SwFlyFrameFormat&, unsigned short&) sw/source/core/undo/rolbck.cxx:1083:50
8 SwUndoSaveContent::DelContentIndex(SwPosition const&, SwPosition const&, DelContentType) sw/source/core/undo/undobj.cxx:1020:39
9 SwUndoDelete::SwUndoDelete(SwPaM&, bool, bool) sw/source/core/undo/undel.cxx:229:9
11 sw::DocumentContentOperationsManager::DeleteRangeImplImpl(SwPaM&) sw/source/core/doc/DocumentContentOperationsManager.cxx:3939:55
Change-Id: Ia0c28c9d5792615cbb566e502374efd0f4056daf
Reviewed-on: https://gerrit.libreoffice.org/75857
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
(cherry picked from commit dea72ef111ee8a0b1b178f8cd48757514d5ca831)
Reviewed-on: https://gerrit.libreoffice.org/75941
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
(cherry picked from commit 4b9324b93dcbd72c8c8949309d45790dd8f7d5fd)
Reviewed-on: https://gerrit.libreoffice.org/76306
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Reviewed-on: https://gerrit.libreoffice.org/73643
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
(cherry picked from commit b518882de8213ef71a8003f95fbdf7689069c06d)
Conflicts:
sw/source/core/text/porfld.cxx
sw/source/core/unocore/unosett.cxx
Change-Id: I04b524784df4ef453d8b1feec13b62f183a17e23
Reviewed-on: https://gerrit.libreoffice.org/73860
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit 87c418a98650ab6e4a62a0b4b72e02fee358dced)
|
|
Change-Id: I78db5b1989dee9ab10d670f26d08237335ffcc29
|
|
Revert "tdf#114306 fix crash caused by special document 2"
This reverts commit d30eefb677b446886f7b5bab6de93d489ba63529.
Revert "tdf#114306 fix crash caused by special document"
This reverts commit e4400f4c4e267f8528df3a7d5a09623c888bd10c.
Revert "tdf#114306 fix unexpected page break in row-spanned table"
This reverts commit 18765b9fa739337d2d891513f6e2fb7c3ce23b50
Change-Id: Ifff799616f12ee428a3f923f6510b20059f5bc71
Reviewed-on: https://gerrit.libreoffice.org/69848
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|
|
By error the ClipRegion's geometry was replaced by it's
BoundRect expanded to PixelBounds. If the ClipRegion
is not a rectangle, this will create wrong results. To
do both - extend to PixelBounds and have the original
geometry included - use the PolyPolygon topology as
needed (see comment in code for details)
Reviewed-on: https://gerrit.libreoffice.org/70146
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
(cherry picked from commit 362c1cf2bd580f6dc8bf27bdcd79174111bc1b5c)
Conflicts:
sw/source/core/doc/notxtfrm.cxx
Change-Id: If3f75223144eba8eb23909a7c701ad544346099b
Reviewed-on: https://gerrit.libreoffice.org/70158
Tested-by: Xisco Faulí <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
See http://bugs.documentfoundation.org/attachment.cgi?id=149585
+ https://bugs.documentfoundation.org/show_bug.cgi?id=123705#c4
Change-Id: I3c6fb0a1ac46a62c75bb9daeaded1633889416eb
Reviewed-on: https://gerrit.libreoffice.org/68398
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
(cherry picked from commit 42398e3860aafd6468688eda6c0da942323b7f82)
Reviewed-on: https://gerrit.libreoffice.org/68614
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: Ib241edd07e4c6781d80db274f73146bda310d8c0
Reviewed-on: https://gerrit.libreoffice.org/69827
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit e47a5543f4b8c9e317d1e43af8c0e5a732e461fd)
Reviewed-on: https://gerrit.libreoffice.org/69903
|
|
Change-Id: Ie14600e9f9a1e1c4e99c7a872f5d677453481888
Reviewed-on: https://gerrit.libreoffice.org/69666
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
(cherry picked from commit ac7ce7a64ef903bad1476f5635a7b2a1e951a7a3)
Reviewed-on: https://gerrit.libreoffice.org/69694
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
width kashidas"
This reverts commit c45b23377bb2fe44c26f1287ff38495344e4ca50.
This commit breaks Kashida justification when a document is first opened (the
kashida justification will be disabled and spaces will be used untill the text
is changed). Probably it is checking for width of Kashida glyph too early. Also
I'm not sure what the reverted commit was trying to fix since we already do
kashida justification in fonts that has non-zero width Kashida and it has been
the case for a long time.
This does not fix the original issue in the document attched with the bug
report, but if fixes kashida not being applied when opening the document.
Change-Id: Ic95859bca94fa792793e3223d2adb465bc6d880f
Reviewed-on: https://gerrit.libreoffice.org/69509
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
(cherry picked from commit 0a8e9cc5c1782f1cd50ef338ec2aa4f6776a4c0e)
Reviewed-on: https://gerrit.libreoffice.org/69519
Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
|
|
See bt https://bugs.documentfoundation.org/attachment.cgi?id=149389
It seems the method from cui/numpages.cxx takes more things into account
At least, it doesn't crash for the attachment of this tracker
Change-Id: I05ca0b019ac483890bea4acdbb695d73b660e638
Reviewed-on: https://gerrit.libreoffice.org/68033
Tested-by: Jenkins
(cherry picked from commit 684fcf2fce915f3e3e553c67fb57bdbfc8f159d5)
Reviewed-on: https://gerrit.libreoffice.org/68843
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
(cherry picked from commit 7f2322afea3b25bc45f438b8ae9d4977ac378c1c)
Reviewed-on: https://gerrit.libreoffice.org/69172
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
SwXMLImport::SetConfigurationSettings() needs to handle only those
settings for which the default is different vs. old OOo/LO versions;
DisableOffPagePositioning however defaults to false, so we can just rely
on that default. The inverted bDisableOffPagePositioning check is
wrong.
(regression from fe3d5766fa3c42f6cf8d1ea47af820e0b1c1cf48)
Change-Id: I300fa597f58b586b49089bb555a00a6923862abe
Reviewed-on: https://gerrit.libreoffice.org/68801
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
(cherry picked from commit 8f3df3a5a1570eea4d931f737c474df8601377ec)
Reviewed-on: https://gerrit.libreoffice.org/69037
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Commit 56b2cf0c10d9caa01ebae1d80465e342d046a85c introduced a "feature"
which would hide an empty line after a table and only make it visible
when the cursor is in it.
So when loading an ODF doc, only enable this feature for which have the
CollapseEmptyCellPara setting set.
Change-Id: Ib4dfbbe8d45eb57547c51c7eee2f81331fc5300e
Reviewed-on: https://gerrit.libreoffice.org/68742
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
(cherry picked from commit 0d2da0acfaa610c690bce552c0ed5df62d4c35cb)
Reviewed-on: https://gerrit.libreoffice.org/68790
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|
|
Extra style is causing editing problem near footnote/endnote
references. This behavior is a side effect of
eaa9cf6a3069fba3d82c046f0041bfb537d9e648, allowing emission
of these "technical" styles.
Change-Id: I1885b92814746e7b5cd19f3ddd7bc22eb691615e
Reviewed-on: https://gerrit.libreoffice.org/68304
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit 691ca4e1a3e510d54894a1e7df7fa4ad9f9cba11)
Reviewed-on: https://gerrit.libreoffice.org/68583
|
|
Remove the Background tabpage in "Border/Background" dialog accessed
from Border and Background menu item in Header/Footer drop-down list
and replace it with the tabpages "Area" and "Transparency" of the dialog
accessed from Page Style > Header > "More.." button.
The old dialog does not have the tabpages "Area" and "Transparency".
In simpler words, the patch is to match both the dialogs
when accessed in two different ways.
Change-Id: Ib84435854389360eba41aecb8578a9a67a92ca1e
Reviewed-on: https://gerrit.libreoffice.org/67483
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
(cherry picked from commit 55042cb54fea5f7ad777c03af9bf8197127b6736)
Reviewed-on: https://gerrit.libreoffice.org/68546
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|
|
See tdf#123378 for the problem caused by this.
I have a fix at https://gerrit.libreoffice.org/#/c/67754/
but I prefer to revert the fix on 6-1 branch since this is the last
release in this series and I'm not sure if the fix has other side effects.
This reverts commit d9f02548f29678b8b7fc3a6c714ab144bd728005.
Change-Id: If9298b9cafaf6984ce25ba78b2c7a79171567840
Reviewed-on: https://gerrit.libreoffice.org/67755
Tested-by: Xisco Faulí <xiscofauli@libreoffice.org>
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
Change-Id: I2a2a189ee727a51aeef5601b39bb288d813fc8f3
Reviewed-on: https://gerrit.libreoffice.org/52610
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit c04c6c487e20730391cfc29dfe66b4558b7b4efb)
Reviewed-on: https://gerrit.libreoffice.org/67708
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
(cherry picked from commit 08c98b7aba639e0d246f3662d7950885f8a81432)
Reviewed-on: https://gerrit.libreoffice.org/67723
|
|
Change-Id: I416e3fcffe7da549ffd3b82cb912d78d1ca02339
Reviewed-on: https://gerrit.libreoffice.org/67684
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
one RemoveDrawObjFromPage is already null-deref protected,
do the same for the other
Change-Id: Ica5bb2df4a8dbffd8397df76b673adab75bb7aef
Reviewed-on: https://gerrit.libreoffice.org/67457
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|