diff --git a/TODO b/TODO index be9543c..acb8339 100644 --- a/TODO +++ b/TODO @@ -4,7 +4,6 @@ With "micro-" prefix tail expr uniq -seq od split date diff --git a/src/coreutils/basename/basename.c b/src/coreutils/basename/basename.c index db7b729..80387b8 100644 --- a/src/coreutils/basename/basename.c +++ b/src/coreutils/basename/basename.c @@ -4,15 +4,7 @@ #include #include -void remove_suffix(char *base, const char *suffix) { - char *ptr = base + strlen(base) - strlen(suffix); - if (!strcmp(ptr, suffix)) - *ptr = '\0'; -} - int main(int argc, char **argv) { - char *suffix = NULL; - char *base = NULL; int opt; while ((opt = getopt(argc, argv, "")) != -1) { @@ -23,12 +15,17 @@ int main(int argc, char **argv) { argv += optind; argc -= optind; + char *suffix = NULL; if (argc == 2) suffix = argv[1]; - base = basename(argv[0]); - if (suffix) - remove_suffix(base, suffix); + char *base = basename(argv[0]); + if (suffix) { + char *ptr = base + strlen(base) - strlen(suffix); + if (!strcmp(ptr, suffix)) + *ptr = '\0'; + } + puts(base); return 0; diff --git a/src/coreutils/seq/seq.c b/src/coreutils/seq/seq.c index 88f7da6..57a57d8 100644 --- a/src/coreutils/seq/seq.c +++ b/src/coreutils/seq/seq.c @@ -47,12 +47,12 @@ int main(int argc, char **argv) { if (start <= last && n >= 0) { for (double i = start; i <= last; i += n) - printf("%.f\n", i); + printf("%g\n", i); } else if (n <= 0) for (double i = start; i >= last; i += n) - printf("%.f\n", i); + printf("%g\n", i); return 0; }