Some issues with project plugin ?
Alexander Neundorf
neundorf at kde.org
Wed Feb 8 22:49:27 GMT 2023
On Sonntag, 5. Februar 2023 23:01:13 CET Alexander Neundorf wrote:
> Hi,
>
> On Mittwoch, 25. Januar 2023 11:07:20 CET Christoph Cullmann (cullmann.io)
>
> wrote:
> > On 2023-01-25 00:52, Alexander Neundorf wrote:
> ...
>
> > > I could check QFileInfo::isAbsolute(), but the comment says that's too
> > > slow.
> > > If nobody else is faster, I'll do something in the next days.
> >
> > If we only do that for the case that the user did explicit file
> > specification
> > in the .kateproject, speed should be no issue, that is only relevant for
> > the git/...
> > cases that generate file lists.
>
> if the project is generated by cmake, the explicit file list can also be
> long.
>
> But, as far as I can see, in "list" mode, the file paths are made absolute
> in KateProjectWorker::findFiles() before handed to
> KateProjectWorker::loadFilesEntry():
> https://invent.kde.org/utilities/kate/-/blob/master/addons/project/
> kateprojectworker.cpp#L418
>
> The list of files can contain a mix of relative and absolute paths, also
> absolute paths outside the project directory, so I think kate has to check
> for every entry whether it is relative or absolute.
>
> Using QFileInfo.isAbsolute() it's a one-line fix in line 328 https://
> invent.kde.org/utilities/kate/-/blob/master/addons/project/
> kateprojectworker.cpp#L320
> , which makes the "list" mode work correctly (instead of not at all as far
> as I can see).
>
> Shall I really add something like
> bool quickIsAbsolute(QString path) {
> return ((path[0] == '/') || ((path[1] == ':') && (path[2] == '/')));
> }
> ?
>
> (do the paths under Windows actually use forward or backward slashes ?)
Ok, I got a small patch here using QFileInfo (but it still uses only one
QFileInfo per entry, not an additional one), it's a few lines patch.
Shall I do the full create fork - merge request - flow for that ?
Alex
More information about the KWrite-Devel
mailing list