/*
-** LCLint - annotation-assisted static program checker
-** Copyright (C) 1994-2001 University of Virginia,
+** Splint - annotation-assisted static program checker
+** Copyright (C) 1994-2003 University of Virginia,
** Massachusetts Institute of Technology
**
** This program is free software; you can redistribute it and/or modify it
** the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
** MA 02111-1307, USA.
**
-** For information on lclint: lclint-request@cs.virginia.edu
-** To report a bug: lclint-bug@cs.virginia.edu
-** For more information: http://lclint.cs.virginia.edu
+** For information on splint: info@splint.org
+** To report a bug: splint-bug@splint.org
+** For more information: http://www.splint.org
*/
/*
** fileLib.c
*/
-# include "lclintMacros.nf"
+# include "splintMacros.nf"
# include "basic.h"
-# include "portab.h"
+# include "osd.h"
bool
fileLib_isCExtension (cstring ext)
/*@noaccess cstring@*/
}
-# ifndef NOLCL
/*@only@*/ cstring fileLib_removePath (cstring s)
{
/*@access cstring@*/
else return (mstring_copy (t + 1));
/*@noaccess cstring@*/
}
-# endif
/*@only@*/ cstring
fileLib_removePathFree (/*@only@*/ cstring s)
if (strrchr (s, '.') == (char *) 0)
{
- /* <<< was mstring_concatFree1 --- bug detected by lclint >>> */
+ /* <<< was mstring_concatFree1 --- bug detected by splint >>> */
return (cstring_concat (s, suffix));
}
else
{
if (cstring_equalPrefixLit (s, "./"))
{
- return cstring_copySegment (s, 2, cstring_length (s) - 1);
+ cstring res = cstring_copySegment (s, 2, cstring_length (s) - 1);
+ cstring_free (s);
+ return res;
}
-
-
- return cstring_copy (s);
+ return s;
}