but they don't go through the delta mechanism, so move the assert
to the delta path, the other path is ok wrt gt 256x256
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I2ba4d8affb7645349540f3a5de31d1802f04c53d
so if core is compiled with a cairo using rgba the pixels can
be sent without need to reorder in server or client
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iaf0410f1eaa605b9ce2716625f6c968bca523ccb
We want to keep pre-loaded, and invalidated tiles around so that
we have something to render in lots of cases, particularly for
other parts, and slides. However - we need to know that it is
invalid so we can on-demand fetch something better.
It is very important that this invalid state doesn't race with
tile arrivals ie. in a banal way:
invalidate, req, invalidate, req, tile, invalidate, req, tile
it is unclear whether the latest tile is still invalid; similarly,
if we request(req) a tile and there is no change to it we get no
response.
To disambiguate this, use the monotonic wid to check we are in-sync.
Re-factor:
setup debug tile layer more pro-active.y
rename HasContent to NeedsFetch to be more explicit.
Remove:
previous _invalidCount that was perhaps a similar idea.
previous .loaded concept.
previous _pruneTiles concept - now it seems we can be
confident in cached tiles from other slides and sheets.
Change-Id: Ibc6d3b6050e756ace91a9bd53d3e4efe12b023cf
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
We now warn when we fail to use mknod
to create the random devices and have
stricter requirements to mounting
character-devices. Specifically,
we explicitly only allow mounting
the random devices.
Change-Id: Ib0dc300dedc40942ea52426af2b267f6a81fbeb8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
This stopped working well a long time ago, and is already disabled
on the coolwsd side, so dung out the rest of the code & docs on this.
Change-Id: I2e0b73fe9780e16c3cc74ae3a38ae6b04434717a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
this should presumably be checking caps_none not caps and is a cnp
error
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I46f381fbec31b3e9c311f1becf0c536c192788fd
In some cases we may not have permission to create devices.
This happen on nodev systems and some containers. In
those cases, we gracefully fallback to bind-mounting.
Ideally, we would like to reduce the number of bind-mount
cases we do per document, which i why mknod is preferred.
Cleaning up works without modification because the
random devices are mounted in /tmp (in the chroot),
which itself is bind-mounted. So removing it is
sufficient.
Change-Id: If9a4f0a511273952ead95d6c6855ca2becaf757f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
UnitBase::isUnitTesting() and UnitWSD::isUnitTesting() to avoid
calling methods that crash on mobile.
Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Ie6bc2d238ac9e475b02ceef5809c55acc129dd52
Still needed to add a bunch of #if !MOBILAPP to disable all of the
Online server's unit testing classes so that the iOS app won't crash
when opening a document.
TODO: the iOS app will not accept text input at all. Is some code
unexpectedly consuming message data sent over the mobile fake socket?
Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Ie874ee8e452188a7b4cdf6d5f87708e5ed9b0235
Given that all messages that can have "ver=" in them will also have
"nviewid=", "oldwid=" and "wid=" then the "id=" search is always
successful and this loop doesn't achieve anything. Disable this for now
and later either drop canceltiles or repair it to do something
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I085bd18f05561df3a542eb14ceb4744b228f4621
A new section about accessibility has been appended to coolwsd.xml
config file
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I086abdf73646639283eb655ae60f200fb64e495a
Added a debug option (triggerable using the about debug menu) that
allows you to dump tiles as they come in
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: If5939b816c1e3598e50c2db4971710524f855909
Make sure that the logging subsystem is
already initialized before starting
unit-tests.
Change-Id: I2ce3ffdb2d3b0094ae7ed496d7cacfc02af89c21
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
Normally, we do a fuzzy-match for the keys
in JSON (presumably, there has been typos
and minor differences in the spelling of
keys in the past).
However, this can be wrong if there are
two rather similar keys. In that case,
we should always prefer the exact match.
Also, the exact match is faster, since
it's a map lookup (logarithmic) rather
than a linear search with Levenshtein
distance algorithm on each entry,
which is quadratic.
Change-Id: If88d13a305a0c67cc00c3f3f22c7dc472666a1ff
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
This merges multiple implementations of
assertCorrectThread and simplifies its
usage.
Change-Id: I7be5dea62c6046fb0412d7f885fcbcc4b66e3fd9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
Also, don't set webView.configuration.userContentController to nil as it
generates a "nil not allowed" compiler warning.
Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Ibb49228a65f102fa6d97d4e5affafae8ad528c0d
Historically, isUpToDate was created and used
in jail setup. But since in other cases we
might also need to compare files, we break
it into two functions. A new member called
isIdenticalTo, which simply does the comparison
and returns the result, and isUpToDate, which
calls isIdenticalTo and logs the result, as
expected by the jail management.
Change-Id: I6581970ad3e97e3fc0728055e6b57647baedf968
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
This is needed to correct overload
resolution of these operators.
Change-Id: I02c0859674efe112102a8d3833bfb0a30b1a6574
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
This is needed for correct resolution of these
overloads when we add more that are otherwise
ambiguous.
Change-Id: I6e442b661445f49502fca9271ed6a11278c78d61
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
This avoids removing the jails of other running coolwsd that share
the same jails/ directory, such as unit-tests, cypress tests etc.
Assert on fatal system error to help catch this during test builds.
Remove old unit-test specific approach, and generalize it, since
apparently we did a recursive cleanup of other people's jails anyway.
Remove over-complicated recursive approach, for a rather simpler
one-level scheme. Avoid following symlinks too for safety.
Remove obsolete lo_jail_subpath setting.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I371f8c0e22f64fb2befb4b58f72cefa39567f3b5