logo

utils-std

Collection of commonly available Unix tools git clone https://anongit.hacktivis.me/git/utils-std.git/

strip_lastelem.c (548B)


  1. // utils-std: Collection of commonly available Unix tools
  2. // SPDX-FileCopyrightText: 2017 Haelwenn (lanodan) Monnier <contact+utils@hacktivis.me>
  3. // SPDX-License-Identifier: MPL-2.0
  4. #include "./strip_lastelem.h"
  5. #include <string.h>
  6. // "/foo/bar/" -> "/foo/"
  7. // "/foo/bar" -> "/foo/"
  8. // "/" -> ""
  9. void
  10. strip_lastelem(char *parent)
  11. {
  12. size_t i = strlen(parent);
  13. if(i == 0)
  14. return;
  15. else
  16. i--;
  17. while(i > 0 && parent[i] == '/')
  18. parent[i--] = '\0';
  19. while(i > 0 && parent[i] != '/')
  20. parent[i--] = '\0';
  21. if(i == 0) parent[i--] = '\0';
  22. }