Duplicate entries in ksycoca4
Allen Winter
winter at kde.org
Sat Aug 25 01:00:49 BST 2007
On Wednesday 15 August 2007 3:05:11 pm Pascal Létourneau wrote:
> Hi
>
> On my system, KStandardDirs::resourceDirs("applications") returns (among
> others)
> /home/pletourn/kde/share/applications
> coming from "KDEDIR" + "share/" + "applications"
> /home/pletourn/kde/share/applications/kde4
> coming from "XDG_APPS_INSTALL_DIR"
> which cause duplicate apps entries in ksycoca4
>
> With the included patch, installdir is no longer returned when it starts with
> one of the previous canditates
>
> Is that an acceptable solution?
>
I wonder if this is why we have double and triple menu entries??
Anyone know?
-Allen
> Pascal Létourneau
>
> Index: kstandarddirs.cpp
> ===================================================================
> --- kstandarddirs.cpp (revision 700503)
> +++ kstandarddirs.cpp (working copy)
> @@ -1117,8 +1117,17 @@ QStringList KStandardDirs::resourceDirs(
>
> // make sure we find the path where it's installed
> QString installdir = installPath( type );
> - if (!installdir.isEmpty() && !candidates.contains(installdir))
> + if (!installdir.isEmpty()) {
> + bool ok = true;
> + foreach (QString s, candidates) {
> + if (installdir.startsWith(s)) {
> + ok = false;
> + break;
> + }
> + }
> + if (ok)
> candidates.append(installdir);
> + }
>
> dirs = d->absolutes.value(type);
> if (!dirs.isEmpty())
>
>
--
KDEPIM Developer
I accept PayPal payments to awinterz at earthlink.net
More information about the kde-core-devel
mailing list