ibrcommon: remove basename
authorRosen Penev <rosenp@gmail.com>
Sun, 14 Apr 2024 23:44:08 +0000 (16:44 -0700)
committerRosen Penev <rosenp@gmail.com>
Fri, 19 Apr 2024 21:18:45 +0000 (14:18 -0700)
Can be replaced with regular C++.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
libs/ibrcommon/Makefile
libs/ibrcommon/patches/001-fix-build-with-musl.patch

index b1adfd39fd8cbc804a66b8bd1565b22a8481d0df..2b6f4c2ebe502ca60fbc8c1632173e72ee16ee76 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=ibrcommon
 PKG_VERSION:=1.0.1
-PKG_RELEASE:=9
+PKG_RELEASE:=10
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=http://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases
index c7b9a8c35856bb0cef1d56031696dc7425ecd1ee..bee392d0d9fb86731b27ec39e3c1430272addb93 100644 (file)
@@ -1,21 +1,33 @@
 --- a/ibrcommon/data/File.cpp
 +++ b/ibrcommon/data/File.cpp
-@@ -35,9 +35,7 @@
+@@ -35,10 +35,6 @@
  #include <cerrno>
  #include <fstream>
  
 -#if !defined(HAVE_FEATURES_H) || defined(ANDROID)
- #include <libgen.h>
+-#include <libgen.h>
 -#endif
+-
  #ifdef __WIN32__
  #include <io.h>
-@@ -226,7 +224,7 @@ namespace ibrcommon
+ #define FILE_DELIMITER_CHAR '\\'
+@@ -225,14 +221,11 @@ namespace ibrcommon
        std::string File::getBasename() const
        {
- #if !defined(ANDROID) && defined(HAVE_FEATURES_H)
+-#if !defined(ANDROID) && defined(HAVE_FEATURES_H)
 -              return std::string(basename(_path.c_str()));
-+              return std::string(basename((char *)_path.c_str()));
- #else
-               char path[_path.length()+1];
-               ::memcpy(&path, _path.c_str(), _path.length()+1);
+-#else
+-              char path[_path.length()+1];
+-              ::memcpy(&path, _path.c_str(), _path.length()+1);
+-
+-              return std::string(basename(path));
+-#endif
++              size_t found = _path.find_last_of('/');
++              if (found != std::string::npos)
++                      return _path.substr(found + 1);
++              else
++                      return _path;
+       }
+       File File::get(const std::string &filename) const