Commit graph

60 commits

Author SHA1 Message Date
Ivailo Monev
0d26e2c479 kioslave: add the filename even if it is dot from file slave
passes tests

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-04 16:18:30 +03:00
Ivailo Monev
089c0ac111 kioslave: do not add trailing slash if there is one from file slave when listing
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-04 04:46:39 +03:00
Ivailo Monev
3a8f3163bf kioslave: remove now unused stat() buffer
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-04 03:49:05 +03:00
Ivailo Monev
4ea318b347 kioslave: do not add the filename if it is dot in file slave
KFileItem was doing that magic prior to
c18bacba12

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-03 23:47:47 +03:00
Ivailo Monev
c18bacba12 kio: make KIO::UDSEntry::UDS_URL required/mandatory
if the slaves do not know what URL is being stat()-ed, listed, etc. then
what? this may make the URL different than the one originally requested (as
it should be) in case of redirection(s) for example

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-31 16:30:03 +03:00
Ivailo Monev
559411bd09 generic: optimize MIME type detection
KRun already had such optimization in place for example, that makes the
file slave kinda special tho as it will determine MIME type only from mode
but the goal is to not even spin a job and a slave for local files

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-04 21:26:18 +03:00
Ivailo Monev
817b7a4aab kdecore: rework KMimeType
more accurate probing then before, notably by probing the file content
from the file slave (only the name was checked before because the
filepath was not a full path in some cases and the file could not be
open)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-04 20:14:53 +03:00
Ivailo Monev
ee4c56ad5e kioslave: use the full path to determine the MIME type in file slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-04 04:14:15 +03:00
Ivailo Monev
f34328e051 kioslave: update comment in file slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-04 04:08:44 +03:00
Ivailo Monev
e273741fdb kio: drop MIME type feature of slaves
the specialized one, stat() does it now because emitting MIME type while
also emitting data (in or out) interrupts the data flow

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-03 05:26:56 +03:00
Ivailo Monev
b5b73968c3 kioslave: initialize variable in FileProtocol::put()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-03 01:06:22 +03:00
Ivailo Monev
d4fb98cc28 generic: KIO protocols classification optimization
unfortunate as it is the class for getting protocol information is not
part of kio library so generic..

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-14 09:54:36 +03:00
Ivailo Monev
7139774873 kioslave: fix file slave runtime warning
prior to cf6ac06d91 the slave was simply
exiting but that is no longer the case

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-19 20:20:15 +03:00
Ivailo Monev
00400ef6de kioslave: correct close() result check in FileProtocol::put()
close() is not documented to return positive integer, it returns either
zero or -1

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-19 19:35:42 +03:00
Ivailo Monev
5545cb7e2f kio: remove unused KProtocolManager::supportsOpening() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-31 20:35:46 +00:00
Ivailo Monev
938ac263ab kioslave: remove unused QVarLengthArray header inclusion
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-30 18:20:53 +00:00
Ivailo Monev
9f05a33ee6 generic: build fix
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-23 14:08:10 +03:00
Ivailo Monev
cf6ac06d91 kioslave: return on put() error instead of exiting the slave
if the slave is not a forked process that would exit the program executing
the put job

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-21 21:54:38 +03:00
Ivailo Monev
aee73d3abb kioslave: fix removal of .part files on file put
_dest is never set to something

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-21 21:46:20 +03:00
Ivailo Monev
ba1d5268ee kioslave: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-21 21:24:38 +03:00
Ivailo Monev
387022831a kioslave: remove redundant FileProtocol::createUDSEntry() argument
true is always passed

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-21 21:12:55 +03:00
Ivailo Monev
9fe6a221cc kio: include config-acl header in file_unix source file
for the HAVE_POSIX_ACL definition

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-21 20:50:59 +03:00
Ivailo Monev
9c4bc997c4 kioslave: replace FileProtocol::isExtendedACL() method with its body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-21 20:27:19 +03:00
Ivailo Monev
c2ba59db1e kioslave: remove unused QProcess header inclusion
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-21 20:06:31 +03:00
Ivailo Monev
bb8ac83d00 kioslave: mark FileProtocol reimplementations as final
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-21 20:05:23 +03:00
Ivailo Monev
5613e5483c generic: remove redundant build varibles
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 20:25:52 +03:00
Ivailo Monev
986a303ff6 kio: KAutoMount and KAutoUnmount rewrite to use org.kde.SolidUiServer interface
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 22:05:16 +03:00
Ivailo Monev
d9eca4f771 kio: remove unused KIO::FileJob class and random access I/O API
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-05 23:06:32 +03:00
Ivailo Monev
4cb8afa14d generic: remove unused KIO protocol input/output information
KIO slaves are either helper (e.g. vnc/rdp), not source (e.g. thumbnail
which is also helper in a way) or have listing capability (e.g. file
which is filesystem type)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 02:46:51 +02:00
Ivailo Monev
5e7a19f6f7 generic: store KIO slaves listing capability as boolean
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 00:57:27 +02:00
Ivailo Monev
bc067dbdfa kio: drop support for putting slaves on hold
with klauncher no longer responsible for KIO slave the next step is to
make them plugins and the feature to put them on hold will be of no value
because QLibrary reuses library/plugin instances and creating a new
slave object will be cheap

in other words the performance will be similar to that of KFileMetaInfo
for which I also wrote the plugins myself - they are pretty quick
compared to what strigi was doing and with more flexible configuration
interface but it took some effort to get there

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-06 04:22:23 +02:00
Ivailo Monev
704ef230d5 generic: make use of KUser and KUserGroup
eventually KUser and KUserGroup will use getpwnam_r(), getgrnam_r(), etc. for thread safety

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-10 21:05:19 +03:00
Ivailo Monev
29a8459798 generic: remove checks for system headers that should be present
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-23 15:42:09 +03:00
Ivailo Monev
db065bad02 kioslave: zero-initialize the readlink() buffer in FileProtocol::createUDSEntry()
fixes possible crash in case readlink() fails

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-06-04 20:16:54 +03:00
Ivailo Monev
025dae464b generic: remove smb and nfs slave leftovers, default to sftp for remote protocol
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-06-03 14:58:53 +03:00
Ivailo Monev
c5c68413f7 kioslave: correct KDE_rename() return value check in file slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-19 04:12:46 +03:00
Ivailo Monev
52a1066d5f kioslave: remove unused readLogFile() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-23 03:48:41 +02:00
Ivailo Monev
05cf194176 kioslave: avoid temporaries in file slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-23 03:32:46 +02:00
Ivailo Monev
1993db291c kioslave: mount/unmount actions reimplementation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-09-02 05:42:21 +03:00
Ivailo Monev
dd07d6844b kdecore: remove perror() debug stream function [ci reset]
TODO: use qt_error_string() instead of strerror() for thread-safety

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-08-08 21:55:18 +03:00
Ivailo Monev
07522192c3 generic: avoid global static KStandardDirs instance access
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-06-15 05:25:34 +03:00
Ivailo Monev
22adbbe45b kioslave: avoid sendfile64()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-06-10 06:26:34 +03:00
Ivailo Monev
41660c168b kioslave: remove LFS support assert
fixes build on i386 Linux

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-06-09 01:59:00 +03:00
Ivailo Monev
31ee051ff4 generic: remove some compatibility bits
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-02-27 08:58:02 +02:00
Ivailo Monev
004f2cabc2 kioslave: indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-02-22 11:23:14 +02:00
Ivailo Monev
1afeeb7503 generic: introduce KStandardDirs::findRootExe() and use it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-02-16 22:09:23 +02:00
Ivailo Monev
2cd9559a3e generic: Hurd build fixes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-02-01 05:08:38 +02:00
Ivailo Monev
803bea264a generic: drop support for operating systems Katie does not support
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-10-26 16:34:16 +02:00
Ivailo Monev
5d2d39e853 generic: drop support for operating systems Katie does not support
replace internal definitions with Q_OS_<OS> alternatives checks while at it

Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2020-02-25 04:48:18 +02:00
Ivailo Monev
1e26bf4a5d generic: build system cleanups
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-09-03 00:05:54 +00:00