On Fri, Oct 25, 2019 at 09:51:33AM +0200, Paul B Mahol wrote:
> On 10/25/19, Limin Wang <lance.lmw...@gmail.com> wrote:
> > On Wed, Oct 23, 2019 at 06:07:24PM +0200, Paul B Mahol wrote:
> >> Why?
> >>
> > Sorry,  I  haven't get your question, you mean why to use system
> > standard c lib API?
> 
> What are gains?

Our implementation haven't handle some corner case, one example is
the check for trailing slash characters.The system library interface
is widely used by most applications, and bugs should be less.

> 
> >
> >> On 10/23/19, lance.lmw...@gmail.com <lance.lmw...@gmail.com> wrote:
> >> > From: Limin Wang <lance.lmw...@gmail.com>
> >> >
> >> > Signed-off-by: Limin Wang <lance.lmw...@gmail.com>
> >> > ---
> >> >  configure            |  4 ++++
> >> >  libavutil/avstring.c | 13 ++++++++++++-
> >> >  2 files changed, 16 insertions(+), 1 deletion(-)
> >> >
> >> > diff --git a/configure b/configure
> >> > index 8413826..5296a4c 100755
> >> > --- a/configure
> >> > +++ b/configure
> >> > @@ -2188,6 +2188,8 @@ SYSTEM_FUNCS="
> >> >      clock_gettime
> >> >      closesocket
> >> >      CommandLineToArgvW
> >> > +    dirname
> >> > +    basename
> >> >      fcntl
> >> >      getaddrinfo
> >> >      gethrtime
> >> > @@ -5980,6 +5982,8 @@ check_func  access
> >> >  check_func_headers stdlib.h arc4random
> >> >  check_lib   clock_gettime time.h clock_gettime || check_lib
> >> > clock_gettime
> >> > time.h clock_gettime -lrt
> >> >  check_func  fcntl
> >> > +check_func_headers libgen.h dirname
> >> > +check_func_headers libgen.h basename
> >> >  check_func  fork
> >> >  check_func  gethrtime
> >> >  check_func  getopt
> >> > diff --git a/libavutil/avstring.c b/libavutil/avstring.c
> >> > index 76a13ba..66654fb 100644
> >> > --- a/libavutil/avstring.c
> >> > +++ b/libavutil/avstring.c
> >> > @@ -19,12 +19,15 @@
> >> >   * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> >> > 02110-1301
> >> > USA
> >> >   */
> >> >
> >> > +#include "config.h"
> >> >  #include <stdarg.h>
> >> >  #include <stdint.h>
> >> >  #include <stdio.h>
> >> >  #include <string.h>
> >> > +#if defined(HAVE_DIRNAME) || defined(HAVE_BASENAME)
> >> > +#include <libgen.h>
> >> > +#endif
> >> >
> >> > -#include "config.h"
> >> >  #include "common.h"
> >> >  #include "mem.h"
> >> >  #include "avassert.h"
> >> > @@ -257,6 +260,9 @@ char *av_strireplace(const char *str, const char
> >> > *from,
> >> > const char *to)
> >> >
> >> >  const char *av_basename(const char *path)
> >> >  {
> >> > +#if HAVE_BASENAME
> >> > +    return  basename((char*)path);
> >> > +#else
> >> >      char *p;
> >> >
> >> >      if (!path || *path == '\0')
> >> > @@ -274,10 +280,14 @@ const char *av_basename(const char *path)
> >> >          return path;
> >> >
> >> >      return p + 1;
> >> > +#endif
> >> >  }
> >> >
> >> >  const char *av_dirname(char *path)
> >> >  {
> >> > +#if HAVE_DIRNAME
> >> > +    return dirname(path);
> >> > +#else
> >> >      char *p = path ? strrchr(path, '/') : NULL;
> >> >
> >> >  #if HAVE_DOS_PATHS
> >> > @@ -295,6 +305,7 @@ const char *av_dirname(char *path)
> >> >      *p = '\0';
> >> >
> >> >      return path;
> >> > +#endif
> >> >  }
> >> >
> >> >  char *av_append_path_component(const char *path, const char *component)
> >> > --
> >> > 2.6.4
> >> >
> >> > _______________________________________________
> >> > ffmpeg-devel mailing list
> >> > ffmpeg-devel@ffmpeg.org
> >> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >> >
> >> > To unsubscribe, visit link above, or email
> >> > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel@ffmpeg.org
> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> > To unsubscribe, visit link above, or email
> > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to