1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-16 20:05:07 +00:00

LibFileSystem: Replace PATH_MAX usage with heap allocation

This commit is contained in:
Sergey Bugaev 2023-09-03 17:48:13 +03:00 committed by Andrew Kaster
parent 4825919bcf
commit ae10d085ba

View file

@ -6,6 +6,7 @@
*/ */
#include <AK/LexicalPath.h> #include <AK/LexicalPath.h>
#include <AK/ScopeGuard.h>
#include <LibCore/DirIterator.h> #include <LibCore/DirIterator.h>
#include <LibCore/System.h> #include <LibCore/System.h>
#include <LibFileSystem/FileSystem.h> #include <LibFileSystem/FileSystem.h>
@ -47,9 +48,9 @@ ErrorOr<String> real_path(StringView path)
if (path.is_null()) if (path.is_null())
return Error::from_errno(ENOENT); return Error::from_errno(ENOENT);
char buffer[PATH_MAX];
DeprecatedString dep_path = path; DeprecatedString dep_path = path;
auto* real_path = realpath(dep_path.characters(), buffer); char* real_path = realpath(dep_path.characters(), nullptr);
ScopeGuard free_path = [real_path]() { free(real_path); };
if (!real_path) if (!real_path)
return Error::from_syscall("realpath"sv, -errno); return Error::from_syscall("realpath"sv, -errno);