| iMatix home page | << | < | > | >> |
SFL Version 2.11 |
#include "sflfile.h" char * default_extension ( char *dest, const char *src, const char *ext)
Copies src to dest and adds ext if necessary. Returns dest. Dest must be large enough for a fully-formatted filename; define it as char [FILE_NAME_MAX + 1]. The ext argument can start with or without a dot. If ext is null or empty, does nothing.
{ int len, i; char *ptr; ASSERT (dest); ASSERT (src); if (dest != src) /* Copy src to dest if not same */ strcpy (dest, src); if (ext != NULL && *ext != 0) { len = strlen (dest); for (i = len - 1, ptr = dest + i; i >= 0; i--, ptr--) if (*ptr == '\\' || *ptr == '/' || *ptr == '.') break; if (i < 0 || *ptr != '.') { if (*ext != '.') { dest [len++] = '.'; dest [len] = '\0'; } strcat (dest + len, ext); } } return (dest); }
| << | < | > | >> | Copyright © 1996-2000 iMatix Corporation |