fix ico handler to actually decode to bitmap when called via get_internal
svn path=/trunk/netsurf/; revision=12980
This commit is contained in:
parent
c22373e000
commit
33af42360f
|
@ -906,6 +906,9 @@ static nserror browser_window_favicon_callback(hlcache_handle *c,
|
||||||
bw->current_favicon = c;
|
bw->current_favicon = c;
|
||||||
bw->loading_favicon = NULL;
|
bw->loading_favicon = NULL;
|
||||||
|
|
||||||
|
LOG(("Content ended up with mime type of '%s'",
|
||||||
|
lwc_string_data((content_get_mime_type(c)))));
|
||||||
|
|
||||||
/* content_get_bitmap on the hlcache_handle should give
|
/* content_get_bitmap on the hlcache_handle should give
|
||||||
* us the favicon bitmap at this point
|
* us the favicon bitmap at this point
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -2006,8 +2006,10 @@ void gui_window_set_icon(struct gui_window *_g, hlcache_handle *icon)
|
||||||
|
|
||||||
if (icon_bitmap != NULL) {
|
if (icon_bitmap != NULL) {
|
||||||
GdkPixbuf *pb = gtk_bitmap_get_primary(icon_bitmap);
|
GdkPixbuf *pb = gtk_bitmap_get_primary(icon_bitmap);
|
||||||
if (pb != NULL && gdk_pixbuf_get_width(pb) > 0 &&
|
|
||||||
gdk_pixbuf_get_height(pb) > 0) {
|
if ((pb != NULL) &&
|
||||||
|
(gdk_pixbuf_get_width(pb) > 0) &&
|
||||||
|
(gdk_pixbuf_get_height(pb) > 0)) {
|
||||||
pb = gdk_pixbuf_scale_simple(pb, 16, 16, GDK_INTERP_HYPER);
|
pb = gdk_pixbuf_scale_simple(pb, 16, 16, GDK_INTERP_HYPER);
|
||||||
iconImage = GTK_IMAGE(gtk_image_new_from_pixbuf(pb));
|
iconImage = GTK_IMAGE(gtk_image_new_from_pixbuf(pb));
|
||||||
}
|
}
|
||||||
|
|
|
@ -215,6 +215,13 @@ static nserror nsico_clone(const struct content *old, struct content **newc)
|
||||||
static void *nsico_get_internal(const struct content *c, void *context)
|
static void *nsico_get_internal(const struct content *c, void *context)
|
||||||
{
|
{
|
||||||
nsico_content *ico = (nsico_content *) c;
|
nsico_content *ico = (nsico_content *) c;
|
||||||
|
struct bmp_image *bmp = ico_find(ico->ico, 255, 255);
|
||||||
|
|
||||||
|
if (!bmp->decoded)
|
||||||
|
if (bmp_decode(bmp) != BMP_OK)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
ico->bitmap = bmp->bitmap;
|
||||||
|
|
||||||
return ico->bitmap;
|
return ico->bitmap;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue