projects
/
gnulib.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
xalloc.h now uses inline, so includers need to configure this.
[gnulib.git]
/
lib
/
dirname.c
diff --git
a/lib/dirname.c
b/lib/dirname.c
index
109eccc
..
815192a
100644
(file)
--- a/
lib/dirname.c
+++ b/
lib/dirname.c
@@
-1,5
+1,5
@@
/* dirname.c -- return all but the last element in a path
/* dirname.c -- return all but the last element in a path
- Copyright
1990, 1998, 2000, 2001
Free Software Foundation, Inc.
+ Copyright
(C) 1990, 1998, 2000, 2001, 2003
Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@
-19,11
+19,9
@@
# include <config.h>
#endif
# include <config.h>
#endif
-#if STDC_HEADERS || HAVE_STRING_H
-# include <string.h>
-#endif
-
#include "dirname.h"
#include "dirname.h"
+
+#include <string.h>
#include "xalloc.h"
/* Return the length of `dirname (PATH)', or zero if PATH is
#include "xalloc.h"
/* Return the length of `dirname (PATH)', or zero if PATH is
@@
-53,7
+51,7
@@
char *
dir_name (char const *path)
{
size_t length = dir_len (path);
dir_name (char const *path)
{
size_t length = dir_len (path);
- int append_dot = (length == FILESYSTEM_PREFIX_LEN (
new
path));
+ int append_dot = (length == FILESYSTEM_PREFIX_LEN (path));
char *newpath = xmalloc (length + append_dot + 1);
memcpy (newpath, path, length);
if (append_dot)
char *newpath = xmalloc (length + append_dot + 1);
memcpy (newpath, path, length);
if (append_dot)
@@
-67,9
+65,13
@@
dir_name (char const *path)
Run the test like this (expect no output):
gcc -DHAVE_CONFIG_H -DTEST_DIRNAME -I.. -O -Wall \
Run the test like this (expect no output):
gcc -DHAVE_CONFIG_H -DTEST_DIRNAME -I.. -O -Wall \
- basename.c dirname.c xmalloc.c
+ basename.c dirname.c xmalloc.c
error.c
sed -n '/^BEGIN-DATA$/,/^END-DATA$/p' dirname.c|grep -v DATA|./a.out
sed -n '/^BEGIN-DATA$/,/^END-DATA$/p' dirname.c|grep -v DATA|./a.out
+If it's been built on a DOS or Windows platforms, run another test like
+this (again, expect no output):
+ sed -n '/^BEGIN-DOS-DATA$/,/^END-DOS-DATA$/p' dirname.c|grep -v DATA|./a.out
+
BEGIN-DATA
foo//// .
bar/foo//// bar
BEGIN-DATA
foo//// .
bar/foo//// bar
@@
-79,16
+81,28
@@
foo/ .
a .
END-DATA
a .
END-DATA
+BEGIN-DOS-DATA
+c:///// c:/
+c:/ c:/
+c:/. c:/
+c:foo c:.
+c:foo/bar c:foo
+END-DOS-DATA
+
*/
# define MAX_BUFF_LEN 1024
# include <stdio.h>
*/
# define MAX_BUFF_LEN 1024
# include <stdio.h>
+char *program_name;
+
int
int
-main ()
+main (
int argc, char *argv[]
)
{
char buff[MAX_BUFF_LEN + 1];
{
char buff[MAX_BUFF_LEN + 1];
+ program_name = argv[0];
+
buff[MAX_BUFF_LEN] = 0;
while (fgets (buff, MAX_BUFF_LEN, stdin) && buff[0])
{
buff[MAX_BUFF_LEN] = 0;
while (fgets (buff, MAX_BUFF_LEN, stdin) && buff[0])
{