Patch for includepathresolver.cpp

David Nolden david.nolden.kdevelop at art-master.de
Wed May 27 16:57:48 UTC 2009


I also see a remaining issue with this code that might make it randomly fail. 
It is used from multiple background threads at the same time, and the 
QDir::setCurrentDirectory isn't needed any more and is probably anyway the one 
basic problem. The working-directory should be applied by using the 
QFileInfo(QDir dir, QString file) constructor, if one was given.

Am Mittwoch 27 Mai 2009 18:22:20 schrieb Christoph Bartoschek:
> 1. How to handle the errors that occur during such operations. For example
> if one do not has the permission to modify the files. In my opinion a
> global section of the Problems Tab is the correct place. How to add it
> there? The user should not be bothered with such problems during his work
> but the problems should not be ignored. They should be part of a logfile or
> something similar. Is there a logging mechanism for kdevelop for optimized
> runs? I think that kDebug is not an option here.
Are you sure this actually works correctly? The problem is, that this isn't 
needed in all cases. The include-path resolver also gives a command to "make" 
that tells it to internally mark the specific files at updated. This just 
doesn't work when "make" redirects its call to other commands, thus the 
touching.

Not sure whether this is really that important that the user should be 
informed about it. Isn't this essentially just debugging info?

> 2. KDevelop has several places where the same file can appear twice
> becauses of symlinks. Shouldn't one use only one instance for each file?
> For example I have three entries of the same file in QuickOpen because I
> have two links to it within my project. Sometimes I have the impression
> this hinders the code completion. If the canonical file path is within the
> project directory the solution is to use the canonical file path. Otherwise
> the path should be relative to the project root. It might be hard to decide
> which path is the best one.
I haven't investigated this issue. I'm not sure how it should ideally be.

Greetings, David





More information about the KDevelop-devel mailing list