diff options
Diffstat (limited to 'src/modules/sparkler/particle.c')
-rw-r--r-- | src/modules/sparkler/particle.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/modules/sparkler/particle.c b/src/modules/sparkler/particle.c index 76d0c70..a3184ea 100644 --- a/src/modules/sparkler/particle.c +++ b/src/modules/sparkler/particle.c @@ -1,8 +1,14 @@ +#include <stdarg.h> + #include "particle.h" /* convert a particle to a new type */ -void particle_convert(particles_t *particles, const particles_conf_t *conf, particle_t *p, particle_props_t *props, particle_ops_t *ops) +void particle_convert(particles_t *particles, const particles_conf_t *conf, particle_t *p, particle_props_t *props, particle_ops_t *ops, unsigned n_params, ...) { + va_list ap; + + va_start(ap, n_params); + particle_cleanup(particles, conf, p); if (props) { *p->props = *props; @@ -10,5 +16,7 @@ void particle_convert(particles_t *particles, const particles_conf_t *conf, part if (ops) { p->ops = ops; } - particle_init(particles, conf, p); + particle_init(particles, conf, p, n_params, ap); + + va_end(ap); } |