Commit graph

236 commits

Author SHA1 Message Date
Miklos Vajna
9ed7c1065c common, kit, test, wsd: these parameters are copied for each invocation ...
... but passing by const ref is enough
2018-08-13 09:26:15 +02:00
Jan Holesovsky
ac7d67f43e Fix networking in the chroot.
The needed files were not copied, and consequently the hostname
resolution did not work in the chroot.

Change-Id: Id3dccc4f70cd1deeddb83c8e672f240e06748e34
2018-08-03 05:22:03 +02:00
Tamás Zolnai
c2a5f6acb0 Store number of tiles sent to kit for rendering
and use that info also to avoid sending to much tiles on the network.

Change-Id: Iab2d7af64693047a3c1cfe9f73de80a7100bbc13
2018-07-24 20:52:53 +02:00
Tor Lillqvist
a8b41b0cbb Log also when retrying the saveAs
Although, at least for me, after calling LOK's saveAs with an
intentionally bogus file extension 'file:///user/docs/u0.frobozz'
retrying with 'file:///user/docs/u0.frobozz.odt' does not work either.

Actually, I am not sure how useful this retry feature is as it is now.
If the user tries to save as some unsupported format, why can we
assume that maybe they want to save in some other format instead, and
possibly overwrite an existing file? Maybe the retry should be done
only if the file name to saveAs was without extension? But that was
already discussed in gerrit, I see.

Change-Id: I8bd4fbf241cb492d9654ae893af4baaf28b6b3a0
2018-07-11 12:15:26 +03:00
Michael Meeks
7e6e81eb46 Implement client websocket masking.
Disable this for easy strace debugging and a bit of perf. to the forkit.

Change-Id: Ia330582817481410d26df50db5eb42b4692ad01c
2018-06-15 14:54:19 +01:00
Ashod Nakashian
b9db83518b wsd: warn when we have no kits and we are not exiting just yet
Change-Id: I8c19dcea3eb900a989aebac7ef96793af31bdce8
Reviewed-on: https://gerrit.libreoffice.org/55576
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2018-06-14 17:05:46 +02:00
Miklos Vajna
d718b1c054 kit: let alphaBlend() take an std::vector<char> instead of raw pointer
So that it's more obvious that the two for loops don't read past the end
of the vector.

Change-Id: I49752c1bc316b6d73568ab334b07727ef60bdce5
2018-05-28 09:12:30 +02:00
Miklos Vajna
8f4c348be3 kit: let getPixmap() return an std::vector<char> instead of raw pointer
So the callers can know not only the address of the pixmap, but also the
size of it.

Change-Id: I3aecc33cb354f5878364b11398c276fcabd3103e
2018-05-25 09:11:54 +02:00
Miklos Vajna
51631b4e22 kit: remove unused using declarations
Change-Id: Ide76d327b3b064180aa4eaa28f13827d665edaa5
2018-05-23 09:14:04 +02:00
Michael Meeks
c5cef26fb6 Shutdown kit process if connection dies.
Change-Id: I34e627a03a9859ccd3ae9f9925fe6ab080697b72
2018-05-18 16:06:03 +01:00
Jan Holesovsky
6c31b7793c Post the message to the poll thread.
Change-Id: Ibd28090a420b5396b64fdfe676bef8cf06991116
2018-05-18 15:16:40 +02:00
Jan Holesovsky
6996139e5f Use correct path in the client websockets.
Change-Id: Ie0bf6646ff3f6e6cf99b505143a416c86a3a33b8
2018-05-18 15:16:40 +02:00
Jan Holesovsky
98ed24257b Move the functionality from connectToMonitor() to SocketPoll.
Change-Id: Iab2ac09638323f5e59f7a2ea0d880f52989ad64d
2018-05-18 15:16:40 +02:00
Jan Holesovsky
35ec3649bb Change Kit to use the new client websocket code.
Change-Id: Ib4e62ea618da5bd8992b51165b0d7ee955c61637
2018-05-18 15:16:40 +02:00
Jan Holesovsky
62df2c114f Revert "ChildSession: use NoFileSync as default during convert-to as well"
This reverts commit 684d730221.

Change-Id: I4500e09f678f889ee5ea35cb0f36896de1e11824
2018-05-10 09:51:38 +02:00
Jan Holesovsky
7f3c4b9dd8 Revert "kit: use NoFileSync flag for save"
Turned out this might corrupt .ods files...

This reverts commit d0d87401c1.

Change-Id: I251de8c7d450fffb3b13a3c8eccf3921eddb9f80
2018-05-10 09:51:36 +02:00
Miklos Vajna
7e9ba2e8c6 tdf#117077 kit: opt-in to embed images in HTML export
Changing the default in core.git has various up and downsides, so just
opt in for embedding here.

Change-Id: I3f8013800e3fdf759fcb09bce848e8754c8aa44c
2018-04-27 14:32:32 +02:00
Miklos Vajna
cb761748ed Avoid unnecessary copy-initialization
These are copy-constructed from a const reference but are only used as
const reference; make them a const reference.

Change-Id: Id193905b65224c2db4aab88999a92e60d3af3fdf
2018-04-17 09:13:54 +02:00
Michael Meeks
03bbe52665 Ensure the forkit does not have lingering threads after preinit.
Change-Id: I216a03a0ada628189355ebfd4016bf6033430eef
2018-04-16 20:04:23 +01:00
Tamás Zolnai
ffd7151443 Writer: View jumps to cursor position even if it is moved by an other view.
Need to get the viewid which moved our visible cursor, so we can check
whether it positioned changed by the owner of the cursor or not.

Change-Id: Ie7b1fafc8d8f11fba0c0b0d5f02d755e15284514
Reviewed-on: https://gerrit.libreoffice.org/52571
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
2018-04-10 17:00:21 +02:00
Marco Cecchetti
89f37b5dd5 calc: drop down button marker
Change-Id: Ic069ad40e6749f43709760e7f4f0d96b39d5a4ce
Reviewed-on: https://gerrit.libreoffice.org/51598
Reviewed-by: Marco Cecchetti <mrcekets@gmail.com>
Tested-by: Marco Cecchetti <mrcekets@gmail.com>
2018-04-03 21:42:27 +02:00
Marco Cecchetti
d887b08d60 calc: added support for hidden sheets and validation of cell content
Change-Id: I5db971b8826de7d5be2f88354925cd107082da77
Reviewed-on: https://gerrit.libreoffice.org/49112
Reviewed-by: Marco Cecchetti <mrcekets@gmail.com>
Tested-by: Marco Cecchetti <mrcekets@gmail.com>
2018-04-03 21:41:22 +02:00
Tor Lillqvist
e9ea5e8bc7 Python is also a special snowflake
Change-Id: I1689f992494e1abe50c45b1ae975b76b00e1b080
2018-03-28 20:17:32 +03:00
Michael Meeks
ad21717498 Avoid copying most code into the chroot jail.
Last lingering bits are the xpdfimport import support and
some horrors required for NSS.

This requires a reasonably new core.

Change-Id: I2e08b841668722af0e3b947cf2b06687cca73b53
2018-03-28 16:38:10 +01:00
Tor Lillqvist
630d8d736c We want notifications from vnd.sun.star.script: thingies, too
Change-Id: Ic407bcc1a2534854812c2732cc262f859d4adfe5
2018-03-28 12:28:13 +03:00
Tor Lillqvist
bb4c1a7fa7 Don't filter out all scripts, just Java and JavaScript ones
Change-Id: I3054a3f36ae1777b162fb5a1b9a456f1bce9248b
Reviewed-on: https://gerrit.libreoffice.org/51991
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Tor Lillqvist <tml@collabora.com>
2018-03-28 11:18:43 +02:00
Miklos Vajna
684d730221 ChildSession: use NoFileSync as default during convert-to as well
This already worked for normal save, but not for convert-to.

Depends on core.git commit 0518bb5c3a98d973c3675fdd4cb8c52a669a3507
(desktop lok: handle NoFileSync in saveAs(), 2018-03-26).

Change-Id: Iec1a92fba2094f3954cc1a4ed6ee3372076fddc5
2018-03-27 09:20:50 +02:00
Michael Meeks
8f134aa1a9 Allow running without seccomp and capabilities.
There are some significant security trade-offs here which are now
at least configurable.

Change-Id: I1d879d69e91392f4ccf5db250a2277f53df60db7
2018-03-19 20:46:17 +00:00
Michael Meeks
6803ee4087 Use a hard random /tmp directory for document intermediates.
Requires a lok tweak to reset the tmpdir globals on init.

Change-Id: I602705f20fa016ef415088be8d1ada6d465d2a8d
2018-03-15 11:01:51 +00:00
Miklos Vajna
b6e1a4e281 kit: avoid manual management for Watermark::_pixmap
A simple std::vector is enough here and results in simpler code.

Change-Id: I7e6ad268aca13c4efb445c7918a3afd14e0ed146
2018-03-14 09:04:36 +01:00
Pranav Kant
c73026cdf9 postExtTextInputEvent -> postWindowExtTextInputEvent
Change-Id: If5612bffac612ca7f52c8eec242e5ad9984cd669
2018-02-27 19:16:17 +05:30
Ashod Nakashian
1c4b458158 wsd: send valid empty JSON response
Change-Id: I066c22dd0ccc64cb6a40b1ff260269b1bac2de37
Reviewed-on: https://gerrit.libreoffice.org/50149
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2018-02-23 16:55:23 +01:00
Pranav Kant
fc4d6aeeb9 ime: Don't eat space
Encode/decode so that ' ' as payload of compositionupdate event doesn't
get lost.

Change-Id: Ia31abe85f1cf19f8f286c9069097bdc72297e664
2018-02-21 21:29:50 +05:30
Pranav Kant
6d4f02ac2a Adapt to IME API changes; better reuse of Map's key handler
Change-Id: I670243ea155ac698c694531d3fc16a574f418bf4
2018-02-14 23:50:51 +05:30
Ashod Nakashian
b834545e79 kit: makeRenderParams now static
Change-Id: I1c79991a73044a91ed9f8389e23ccffd8b2bcbce
Reviewed-on: https://gerrit.libreoffice.org/49572
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2018-02-11 22:17:02 +01:00
Ashod Nakashian
2562d8919a ut: log the test name for easier traceability
Change-Id: Icbcbb36857b748c2ac2d0d36a5c4c23609f5453a
Reviewed-on: https://gerrit.libreoffice.org/49568
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2018-02-11 19:22:14 +01:00
Pranav Kant
ad1da235d3 IME support
Dialogs still need to be adapted to this. Only works for documents as of
now.

Change-Id: I0fb1114e279a9e563943f3f65dd5a577523e9841
2018-02-08 14:16:34 +05:30
Miklos Vajna
e76485d8b9 kit: spell out non-trivial autos to improve readability
Change-Id: I69b025b08a69c8780d40b39074d7d7abb12cc3af
2018-02-07 10:18:12 +01:00
Samuel Mehrbrodt
00dc0658d3 Missing capabilities: Add hint to check mount options
Change-Id: I946df0082b385b2eaaad9c23b9e5e7ac508f64aa
2018-01-31 11:45:03 +01:00
Samuel Mehrbrodt
e89584f933 Show info instead of error when linking is not possible
we still try to copy the file after this and fail if that doesn't work.

Change-Id: Ie37022b2454e71f4b1a92217e01e56e58070448b
Reviewed-on: https://gerrit.libreoffice.org/48907
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2018-01-30 14:33:51 +01:00
Michael Meeks
fbc28b91b3 Avoid copying code into the chroot if LINK_NO_CODE is set.
Change-Id: Ibba7dfa87c779b4d809cc2ac53d0802bba1c37ef
2018-01-29 15:12:05 +00:00
Pranav Kant
1d22f7bc54 kit: start spamming the logs when linking/copying is slowww
This is sometimes the case in docker when the link operation 'copies up'
things from lower layers to the working docker container's layer. In
such cases, let the admin know.

Change-Id: Ib72b67304a292c3832838379cc76bcb4a7268cb3
Reviewed-on: https://gerrit.libreoffice.org/48710
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
2018-01-26 16:40:56 +01:00
Pranav Kant
c16d198560 Print humanized bytes in the logs
Change-Id: I2ebdea0c3a360be1573ae13fa9cbe6f432436f29
2018-01-26 20:03:22 +05:30
Henry Castro
90cd7791fa kit: remove unused debug code
Change-Id: Ibd69a2b451be0a075759524acff5f0e9fc820d05
2018-01-20 16:41:13 -04:00
Tor Lillqvist
eb2e62ebcd Fix misleading trace output: There is nothing called CallbackWorker::callback
Change-Id: I951d4a7706e0009b5a7266c86ea5b66a29242448
2018-01-17 12:35:38 +02:00
Miklos Vajna
d0d87401c1 kit: use NoFileSync flag for save
What LibreOffice sees as a save destination is just a temporary output
from the outside, so there is no point in doing fsync for that file.

This depends on core.git e90a16d71cdcfbd785401613a2e5a29cb1167acf (sfx2
store: handle NoFileSync for Save (not SaveAs), 2018-01-15).
2018-01-16 09:59:27 +01:00
Tor Lillqvist
457ec5b2b2 Use strdup() instead of fragile malloc+strncpy pairs...
...with manually counted string literal lengths even.

Change-Id: If11c65be25953b710a16d11e790d1b6d40119287
2018-01-10 16:09:41 +02:00
Tor Lillqvist
217636ed44 Drop meaningless "loolnb" word from a comment, drop two related #if 0 blocks
"loolnb" used to mean the concept of using non-blocking sockets back
when that was experimental proof-of-concept work in progress, but that
work has been merged in long ago and there is no neeed for the term
any longer.

Change-Id: I4c49b625fe8be8892b82115eaaa47bcba0f29500
Reviewed-on: https://gerrit.libreoffice.org/47699
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
2018-01-10 13:01:26 +01:00
Ashod Nakashian
95af839fd9 wsd: trace first child's startup activity
To help debug early failure, log the first
child's statup at trace-level.

Change-Id: I8a6c8fe535bbc971174c0d950a2243460f81a2c7
Reviewed-on: https://gerrit.libreoffice.org/47628
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
2018-01-09 13:06:48 +01:00
Ashod Nakashian
94781ec6d9 wsd: log at trace level until first child is forked
Change-Id: I1b995b4714738f3bffd6dac58cf90ee6f1a32898
Reviewed-on: https://gerrit.libreoffice.org/47565
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2018-01-08 05:52:39 +01:00