summaryrefslogtreecommitdiff
path: root/Userland/Utilities/du.cpp
diff options
context:
space:
mode:
authorAli Mohammad Pur <ali.mpfard@gmail.com>2023-02-21 15:14:41 +0330
committerAli Mohammad Pur <Ali.mpfard@gmail.com>2023-02-28 15:52:24 +0330
commitdb886fe18bad881c1e1064780937c75e92e52b5f (patch)
tree40c8bdaed6f64580483ecc7d7b09bc29db6d7366 /Userland/Utilities/du.cpp
parentb2b851b3615c1dbd8e344c8f7bcee7a833c67bee (diff)
downloadserenity-db886fe18bad881c1e1064780937c75e92e52b5f.zip
Userland+AK: Stop using getopt() for ArgsParser
This commit moves the implementation of getopt into AK, and converts its API to understand and use StringView instead of char*. Everything else is caught in the crossfire of making Option::accept_value() take a StringView instead of a char const*. With this, we must now pass a Span<StringView> to ArgsParser::parse(), applications using LibMain are unaffected, but anything not using that or taking its own argc/argv has to construct a Vector<StringView> for this method.
Diffstat (limited to 'Userland/Utilities/du.cpp')
-rw-r--r--Userland/Utilities/du.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/Userland/Utilities/du.cpp b/Userland/Utilities/du.cpp
index 19cac716a6..2f3fc14066 100644
--- a/Userland/Utilities/du.cpp
+++ b/Userland/Utilities/du.cpp
@@ -66,8 +66,7 @@ ErrorOr<void> parse_args(Main::Arguments arguments, Vector<DeprecatedString>& fi
"time",
0,
"time-type",
- [&du_option](auto const* option_ptr) {
- StringView option { option_ptr, strlen(option_ptr) };
+ [&du_option](StringView option) {
if (option == "mtime"sv || option == "modification"sv)
du_option.time_type = DuOption::TimeType::Modification;
else if (option == "ctime"sv || option == "status"sv || option == "use"sv)
@@ -87,7 +86,7 @@ ErrorOr<void> parse_args(Main::Arguments arguments, Vector<DeprecatedString>& fi
nullptr,
'k',
nullptr,
- [&du_option](auto const*) {
+ [&du_option](StringView) {
du_option.block_size = 1024;
return true;
}