Unverified Commit 52edad5c authored by K900's avatar K900 Committed by GitHub
Browse files

Merge pull request #302756 from K900/the-sycoca-thing

kdePackages.kservice: handle sycoca disappearing better
parents 1cab9f80 3f2aac32
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -2,10 +2,12 @@
mkKdeDerivation {
  pname = "kservice";

  # FIXME(later): upstream
  patches = [
    # follow symlinks when generating sycoca
    # FIXME(later): upstream
    ./qdiriterator-follow-symlinks.patch
    # explode less when sycoca is deleted
    ./handle-sycoca-deletion.patch
  ];
  meta.mainProgram = "kbuildsycoca6";
}
+14 −0
Original line number Diff line number Diff line
diff --git a/src/sycoca/ksycoca.cpp b/src/sycoca/ksycoca.cpp
index 981342e6..5940f65f 100644
--- a/src/sycoca/ksycoca.cpp
+++ b/src/sycoca/ksycoca.cpp
@@ -218,6 +218,10 @@ KSycoca::KSycoca()
         connect(d->m_fileWatcher.get(), &KDirWatch::dirty, this, [this]() {
             d->slotDatabaseChanged();
         });
+        // NIXPKGS: we sometimes delete sycoca externally
+        connect(d->m_fileWatcher.get(), &KDirWatch::deleted, this, [this]() {
+            d->slotDatabaseChanged();
+        });
     }
 }