The arguments pointer is eaten by its use in destination function
and it is unusable next time. The separate copy has to be used for each call.
evc_link_inc_refcnt(link); /*prevents dispose of the link*/
link->taken++; /*prevents delete of the link from the hub*/
do{
- link->propagate(link, args);
+ va_list args_copy;
+ va_copy(args_copy, args);
+ link->propagate(link, args_copy);
+ va_end(args_copy);
if(link->src.hub == hub){ /*check for correct hub relation*/
next=link;