Changeset 2990:24fadf8a2fd3 in roaraudio
- Timestamp:
- 10/26/09 13:10:04 (15 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libroardsp/filter.c
r1587 r2990 84 84 } 85 85 86 int roardsp_filter_new (struct roardsp_filter ** filter, struct roar_stream * stream, int id) { 87 struct roardsp_filter * n; 88 int ret; 89 90 if ( filter == NULL || stream == NULL ) 91 return -1; 92 93 *filter = NULL; // just to be sure 94 95 n = roar_mm_malloc(sizeof(struct roardsp_filter)); 96 97 if ( n == NULL ) 98 return -1; 99 100 if ( (ret = roardsp_filter_init(n, stream, id)) == -1 ) { 101 roar_mm_free(n); 102 return -1; 103 } 104 105 n->flags |= ROARDSP_FFLAG_FREE; 106 107 *filter = n; 108 109 return ret; 110 } 111 86 112 int roardsp_filter_init (struct roardsp_filter * filter, struct roar_stream * stream, int id) { 87 113 struct _roardsp_filterlist * l = _roardsp_filterlist; … … 145 171 ret = filter->uninit(filter); 146 172 147 memset(filter, 0, sizeof(struct roardsp_filter)); 173 if ( filter->flags & ROARDSP_FFLAG_FREE ) { 174 roar_mm_free(filter); 175 } else { 176 memset(filter, 0, sizeof(struct roardsp_filter)); 177 } 148 178 149 179 return ret;
Note: See TracChangeset
for help on using the changeset viewer.