blob: 72e6f35a809492ced8a3f076c6a9e30f80daa239 [file] [log] [blame]
// Copyright 2013 The Flutter 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 <Foundation/Foundation.h>
#include "flutter/fml/file.h"
namespace fml {
namespace paths {
std::pair<bool, std::string> GetExecutableDirectoryPath() {
@autoreleasepool {
return {true, GetDirectoryName([NSBundle mainBundle].executablePath.UTF8String)};
}
}
fml::UniqueFD GetCachesDirectory() {
@autoreleasepool {
auto items = [[NSFileManager defaultManager] URLsForDirectory:NSCachesDirectory
inDomains:NSUserDomainMask];
if (items.count == 0) {
return {};
}
return OpenDirectory(items[0].fileSystemRepresentation, false, FilePermission::kRead);
}
}
} // namespace paths
} // namespace fml