Changeset 5752:ec433a3a02b8 in roaraudio
- Timestamp:
- 11/16/12 13:45:29 (11 years ago)
- Branch:
- default
- Phase:
- public
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
ChangeLog
r5747 r5752 9 9 * Allow RAT builds on systems with full linkage. 10 10 * Provide a more common interface for path config. 11 * Improved env API. 11 12 12 13 v. 1.0beta7 - Tue Oct 23 2012 23:28 CEST -
include/libroar/env.h
r5381 r5752 40 40 41 41 int roar_env_set(struct roar_keyval * keyval); 42 const char * roar_env_get(const char * key); 42 43 const char * roar_env_get_home(int level); 43 int roar_env_get_home_r(int level, char * str, size_t len) ;44 int roar_env_get_home_r(int level, char * str, size_t len) _LIBROAR_ATTR_DEPRECATED; 44 45 45 46 int roar_env_render_path_r(char * out, size_t len, const char * inpath); -
libroar/env.c
r5381 r5752 37 37 38 38 int roar_env_set(struct roar_keyval * keyval) { 39 #if defined(ROAR_HAVE_PUTENV) && !defined(ROAR_HAVE_SETENV) 40 size_t len; 41 char * str; 42 #endif 43 44 if ( keyval == NULL || keyval->key == NULL ) { 45 roar_err_set(ROAR_ERROR_FAULT); 46 return -1; 47 } 48 39 49 #ifdef ROAR_HAVE_SETENV 40 50 return setenv(keyval->key, keyval->value, 1); 41 51 #elif defined(ROAR_HAVE_PUTENV) 42 size_t len;43 char * str;44 45 52 len = strlen(keyval->key) + strlen(keyval->value) + 2; 46 53 … … 54 61 return putenv(str) == 0 ? 0 : -1; 55 62 #else 63 roar_strap(ROAR_TRAP_GROUP_LIBROAR, "env_set.not-implemented"); 64 roar_err_set(ROAR_ERROR_NOSYS); 56 65 return -1; 57 66 #endif 67 } 68 69 const char * roar_env_get(const char * key) { 70 const char * ret; 71 72 if ( key == NULL ) { 73 roar_err_set(ROAR_ERROR_FAULT); 74 return NULL; 75 } 76 77 roar_err_clear_all(); 78 ret = getenv(key); 79 roar_err_update(); 80 81 if ( ret == NULL && roar_error == ROAR_ERROR_NONE ) 82 roar_err_set(ROAR_ERROR_NOENT); 83 84 return ret; 58 85 } 59 86
Note: See TracChangeset
for help on using the changeset viewer.