// Copy callbacks
if (callbacks) {
- memcpy(&p->callbacks, callbacks, sizeof(p->callbacks));
+ if (callbacks->data)
+ p->callbacks.data = callbacks->data;
- // Set default callbacks
- } else {
- // Log to syslog by default
- p->callbacks.log = pakfire_log_syslog;
+ if (callbacks->log)
+ p->callbacks.log = callbacks->log;
+
+ if (callbacks->status)
+ p->callbacks.status = callbacks->status;
+
+ if (callbacks->progress)
+ p->callbacks.progress = callbacks->progress;
}
+ // Log to syslog by default
+ if (!p->callbacks.log)
+ p->callbacks.log = pakfire_log_syslog;
+
// Set architecture
pakfire_string_set(p->arch, arch);