mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-09-20 17:58:18 +03:00
strace: Add a chdir formatter
This commit is contained in:
parent
b0efca5742
commit
ae68d1f865
Notes:
sideshowbarker
2024-07-17 18:58:53 +09:00
Author: https://github.com/alimpfard Commit: https://github.com/SerenityOS/serenity/commit/ae68d1f865 Pull-request: https://github.com/SerenityOS/serenity/pull/12435
@ -529,6 +529,15 @@ struct Formatter<struct stat> : StandardFormatter {
|
||||
};
|
||||
}
|
||||
|
||||
static void format_chdir(FormattedSyscallBuilder& builder, char const* path_p, size_t length)
|
||||
{
|
||||
auto buf = copy_from_process(path_p, length);
|
||||
if (buf.is_error())
|
||||
builder.add_arguments(buf.error());
|
||||
else
|
||||
builder.add_arguments(StringView { buf.value().data(), buf.value().size() });
|
||||
}
|
||||
|
||||
static void format_fstat(FormattedSyscallBuilder& builder, int fd, struct stat* buf_p)
|
||||
{
|
||||
auto buf = copy_from_process(buf_p);
|
||||
@ -711,6 +720,10 @@ static void format_syscall(FormattedSyscallBuilder& builder, Syscall::Function s
|
||||
format_fstat(builder, (int)arg1, (struct stat*)arg2);
|
||||
result_type = Ssize;
|
||||
break;
|
||||
case SC_chdir:
|
||||
format_chdir(builder, (char const*)arg1, (size_t)arg2);
|
||||
result_type = Int;
|
||||
break;
|
||||
case SC_get_process_name:
|
||||
format_get_process_name(builder, (char*)arg1, (size_t)arg2);
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user