DEBUG ("exec plugin: Child %i exited with status %i.",
pid, status);
- plugin_notification_meta_free (n);
+ plugin_notification_meta_free (n->meta);
+ n->meta = NULL;
sfree (arg);
pthread_exit ((void *) 0);
return (NULL);
}
if (0 != av2notification_meta (aTHX_ (AV *)SvRV (*tmp), &n->meta)) {
- plugin_notification_meta_free (n);
+ plugin_notification_meta_free (n->meta);
+ n->meta = NULL;
return -1;
}
break;
return -1;
ret = plugin_dispatch_notification (&n);
- plugin_notification_meta_free (&n);
+ plugin_notification_meta_free (n.meta);
return ret;
} /* static int pplugin_dispatch_notification (HV *) */
return (0);
} /* int plugin_notification_meta_copy */
-int plugin_notification_meta_free (notification_t *n)
+int plugin_notification_meta_free (notification_meta_t *n)
{
notification_meta_t *this;
notification_meta_t *next;
return (-1);
}
- this = n->meta;
- n->meta = NULL;
+ this = n;
while (this != NULL)
{
next = this->next;
int plugin_notification_meta_copy (notification_t *dst,
const notification_t *src);
-int plugin_notification_meta_free (notification_t *n);
+int plugin_notification_meta_free (notification_meta_t *n);
#endif /* PLUGIN_H */
plugin_dispatch_notification (&n);
- plugin_notification_meta_free (&n);
+ plugin_notification_meta_free (n.meta);
return (0);
} /* }}} int ut_report_state */