X-Git-Url: https://git.librecmc.org/?p=oweals%2Fopkg-lede.git;a=blobdiff_plain;f=opkg_state.c;h=3dbd6c6b6a701066351258bc609d58097c364728;hp=ded9683c6b9ac48c6b0d1f02e79f7fbfabc594e1;hb=e2fd21015aeedba1a9936f46b185c41047ee034d;hpb=c82094c9e17afef41e49cff3eabdbdd0f6ca3a21 diff --git a/opkg_state.c b/opkg_state.c index ded9683..3dbd6c6 100644 --- a/opkg_state.c +++ b/opkg_state.c @@ -16,6 +16,22 @@ */ #include "libopkg.h" +#include "opkg_state.h" + + +static char *state_strings[] = +{ + "None", + "Downloading Package", + "Installing Package", + "Configuring Package", + "Upgrading Package", + "Removing Package", + "Downloading Repository", + "Verifying Repository Signature" +}; + + opkg_state_changed_callback opkg_cb_state; @@ -27,10 +43,19 @@ opkg_set_current_state (opkg_state_t state, const char *data) { if (opkg_state_data) free (opkg_state_data); - opkg_state_data = malloc (strlen (data)); - strcpy (opkg_state_data, data); + if (data) + { + opkg_state_data = malloc (strlen (data)); + strcpy (opkg_state_data, data); + } + else + { + opkg_state_data = NULL; + } opkg_state = state; + + printf ("opkg state set to %s: %s\n", state_strings[state], data); } void