Преглед на файлове

LaunchServer: Do not provide file handlers for special files

With this change, LaunchServer will always return an empty list of file
handlers for special files e.g. sockets and devices. Before this change,
TextEditor was always returned as a default handler for these files.
Tetsui Ohkubo преди 4 години
родител
ревизия
1479ee3f3e
променени са 1 файла, в които са добавени 3 реда и са изтрити 0 реда
  1. 3 0
      Userland/Services/LaunchServer/Launcher.cpp

+ 3 - 0
Userland/Services/LaunchServer/Launcher.cpp

@@ -266,6 +266,9 @@ void Launcher::for_each_handler_for_path(const String& path, Function<bool(const
         return;
     }
 
+    if (!S_ISREG(st.st_mode) && !S_ISLNK(st.st_mode))
+        return;
+
     if ((st.st_mode & S_IFMT) == S_IFREG && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)))
         f(get_handler_for_executable(Handler::Type::Application, path));