Files
engine/fml/platform/linux/paths_linux.cc
T

26 lines
663 B
C++

// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "flutter/fml/paths.h"
#include <unistd.h>
#include "lib/ftl/files/path.h"
namespace fml {
namespace paths {
std::pair<bool, std::string> GetExecutableDirectoryPath() {
const int path_size = 255;
char path[path_size] = {0};
auto read_size = ::readlink("/proc/self/exe", path, path_size);
if (read_size == -1) {
return {false, ""};
}
return {true, files::GetDirectoryName(std::string{path, static_cast<size_t>(read_size)})};
}
} // namespace paths
} // namespace fml