1
0
mirror of https://github.com/adtools/clib2.git synced 2025-12-08 14:59:05 +00:00

- unsetenv() now returns a status value.

- Corrected the function prototype for wcspbrk().

- Added function prototypes for mbrtowc_l(), wcscoll_l(), wcscspn() and wcsrchr().


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15196 87f5fb63-7c3d-0410-a384-fd976d0f7a62
This commit is contained in:
Olaf Barthel
2008-04-30 14:34:03 +00:00
parent f100199861
commit 0b19424148
4 changed files with 31 additions and 7 deletions

View File

@ -1,3 +1,10 @@
- unsetenv() now returns a status value.
- Corrected the function prototype for wcspbrk().
- Added function prototypes for mbrtowc_l(), wcscoll_l(), wcscspn() and wcsrchr().
c.lib 1.203 (28.4.2008)
- Added 68k stubs to amiga_rexxvars.c for the OS4 build to use. The new code now

View File

@ -1,5 +1,5 @@
/*
* $Id: stdlib.h,v 1.18 2006-11-13 09:51:53 obarthel Exp $
* $Id: stdlib.h,v 1.19 2008-04-30 14:34:03 obarthel Exp $
*
* :ts=4
*
@ -195,7 +195,7 @@ extern int rand_r(unsigned int * seed);
extern int setenv(const char *name, const char *value, int overwrite);
extern int putenv(const char *string);
extern void unsetenv(const char *name);
extern int unsetenv(const char *name);
extern char * mktemp(char * name_template);
extern int mkstemp(char *name_template);
extern char * mkdtemp(char *name_template);

View File

@ -1,5 +1,5 @@
/*
* $Id: wchar.h,v 1.7 2006-01-08 12:06:14 obarthel Exp $
* $Id: wchar.h,v 1.8 2008-04-30 14:34:03 obarthel Exp $
*
* :ts=4
*
@ -97,7 +97,7 @@ extern wchar_t * wcsncpy(wchar_t *dest, const wchar_t *src, size_t n);
extern size_t wcslen(const wchar_t *s);
extern wchar_t * wcschr(const wchar_t *s, wchar_t c);
extern size_t wcsspn(const wchar_t *s, const wchar_t *set);
extern wchar_t wcspbrk(const wchar_t *s, const wchar_t *set);
extern wchar_t *wcspbrk(const wchar_t *s, const wchar_t *set);
extern wchar_t *wcstok(wchar_t *str, const wchar_t *set);
extern wchar_t *wcsstr(const wchar_t *src, const wchar_t *sub);
@ -179,6 +179,11 @@ extern size_t wcsftime(wchar_t *s, size_t maxsize, const wchar_t *format, const
extern long long wcstoll(const wchar_t *str, wchar_t **ptr, int base);
extern unsigned long long wcstoull(const wchar_t *str, wchar_t **ptr, int base);
extern size_t mbrtowc_l(wchar_t *restrict pwc, const char *restrict s, size_t n, mbstate_t *restrict ps, locale_t loc);
extern int wcscoll_l(const wchar_t *ws1, const wchar_t *ws2, locale_t loc);
extern size_t wcscspn(const wchar_t *ws1, const wchar_t *ws2);
extern wchar_t * wcsrchr(const wchar_t *ws, wchar_t wc);
#endif /* __STDC_VERSION__ && __STDC_VERSION__ >= 199901L */
/****************************************************************************/

View File

@ -1,5 +1,5 @@
/*
* $Id: stdlib_unsetenv.c,v 1.8 2006-09-25 14:51:15 obarthel Exp $
* $Id: stdlib_unsetenv.c,v 1.9 2008-04-30 14:34:03 obarthel Exp $
*
* :ts=4
*
@ -53,10 +53,12 @@
/****************************************************************************/
void
int
unsetenv(const char *name)
{
char * name_copy = NULL;
int result = -1;
LONG status;
size_t i;
if(__check_abort_enabled)
@ -91,11 +93,21 @@ unsetenv(const char *name)
}
PROFILE_OFF();
DeleteVar((STRPTR)name,0);
status = DeleteVar((STRPTR)name,0);
PROFILE_ON();
if(status == DOSFALSE)
{
__set_errno(__translate_access_io_error_to_errno(IoErr()));
goto out;
}
result = 0;
out:
if(name_copy != NULL)
free(name_copy);
return(result);
}