diff options
author | Ted Gould <ted@canonical.com> | 2009-02-12 14:03:52 -0600 |
---|---|---|
committer | Ted Gould <ted@canonical.com> | 2009-02-12 14:03:52 -0600 |
commit | 1a8b895c2815ad2055fbd579df4f6f53189f702c (patch) | |
tree | dad67126ef39eb930c19bc0213916ff231e7e0be /libindicate | |
parent | 52cd253079f2d50f0b14e4369f0604fd1ff6ab64 (diff) | |
download | libayatana-indicator-1a8b895c2815ad2055fbd579df4f6f53189f702c.tar.gz libayatana-indicator-1a8b895c2815ad2055fbd579df4f6f53189f702c.tar.bz2 libayatana-indicator-1a8b895c2815ad2055fbd579df4f6f53189f702c.zip |
Changing the icon data to be base64 encoded, should have done that originally, how silly.
Diffstat (limited to 'libindicate')
-rw-r--r-- | libindicate/listener.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libindicate/listener.c b/libindicate/listener.c index c4b1882..b704236 100644 --- a/libindicate/listener.c +++ b/libindicate/listener.c @@ -687,10 +687,14 @@ get_property_cb (DBusGProxy *proxy, char * OUT_value, GError *error, gpointer us } case PROPERTY_TYPE_ICON: { indicate_listener_get_property_icon_cb cb = (indicate_listener_get_property_icon_cb)get_property_data->cb; + + gsize length = 0; + guchar * icondata = g_base64_decode(OUT_value, &length); - GInputStream * input = g_memory_input_stream_new_from_data(OUT_value, strlen(OUT_value) - 1, NULL); + GInputStream * input = g_memory_input_stream_new_from_data(icondata, length, NULL); if (input == NULL) { g_warning("Cound not create input stream from icon property data"); + g_free(icondata); break; } @@ -711,6 +715,7 @@ get_property_cb (DBusGProxy *proxy, char * OUT_value, GError *error, gpointer us g_warning("Unable to close input stream: %s", error->message); g_error_free(error); } + g_free(icondata); break; } case PROPERTY_TYPE_TIME: { |