mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-17 17:20:29 +02:00
make C system primitives throw exceptions
This commit is contained in:
parent
cb0016401f
commit
02b754d3a6
10 changed files with 415 additions and 454 deletions
|
@ -76,7 +76,7 @@ scm_system(cmd)
|
|||
#endif
|
||||
|
||||
extern char *getenv();
|
||||
SCM_PROC (s_sys_getenv, "%getenv", 1, 0, 0, scm_sys_getenv);
|
||||
SCM_PROC (s_sys_getenv, "getenv", 1, 0, 0, scm_sys_getenv);
|
||||
#ifdef __STDC__
|
||||
SCM
|
||||
scm_sys_getenv(SCM nam)
|
||||
|
@ -92,7 +92,7 @@ scm_sys_getenv(nam)
|
|||
nam = scm_makfromstr (SCM_ROCHARS (nam), SCM_ROLENGTH (nam), 0);
|
||||
val = getenv(SCM_CHARS(nam));
|
||||
if (!val)
|
||||
return SCM_BOOL_F;
|
||||
SCM_SYSERROR (s_sys_getenv);
|
||||
return scm_makfromstr(val, (scm_sizet)strlen(val), 0);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue