浏览代码

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));