Mercurial > geeqie
comparison src/pan-item.c @ 138:71e1ebee420e
replaced gchar* path with FileData *fd
author | nadvornik |
---|---|
date | Tue, 11 Sep 2007 20:06:29 +0000 |
parents | de64a683d5d0 |
children | f6e307c7bad6 |
comparison
equal
deleted
inserted
replaced
137:be3328a58875 | 138:71e1ebee420e |
---|---|
23 void pan_item_free(PanItem *pi) | 23 void pan_item_free(PanItem *pi) |
24 { | 24 { |
25 if (!pi) return; | 25 if (!pi) return; |
26 | 26 |
27 if (pi->pixbuf) g_object_unref(pi->pixbuf); | 27 if (pi->pixbuf) g_object_unref(pi->pixbuf); |
28 if (pi->fd) file_data_free(pi->fd); | 28 if (pi->fd) file_data_unref(pi->fd); |
29 g_free(pi->text); | 29 g_free(pi->text); |
30 g_free(pi->key); | 30 g_free(pi->key); |
31 g_free(pi->data); | 31 g_free(pi->data); |
32 | 32 |
33 g_free(pi); | 33 g_free(pi); |
605 | 605 |
606 work = pw->cache_list; | 606 work = pw->cache_list; |
607 while (work) | 607 while (work) |
608 { | 608 { |
609 PanCacheData *pc; | 609 PanCacheData *pc; |
610 gchar *path; | |
611 | 610 |
612 pc = work->data; | 611 pc = work->data; |
613 work = work->next; | 612 work = work->next; |
614 | 613 |
615 path = ((FileData *)pc)->path; | |
616 | |
617 if (pc->cd && pc->cd->dimensions && | 614 if (pc->cd && pc->cd->dimensions && |
618 path && strcmp(path, pi->fd->path) == 0) | 615 pc->fd && pc->fd == pi->fd) |
619 { | 616 { |
620 pi->width = MAX(1, pc->cd->width * pw->image_size / 100); | 617 pi->width = MAX(1, pc->cd->width * pw->image_size / 100); |
621 pi->height = MAX(1, pc->cd->height * pw->image_size / 100); | 618 pi->height = MAX(1, pc->cd->height * pw->image_size / 100); |
622 | 619 |
623 pw->cache_list = g_list_remove(pw->cache_list, pc); | 620 pw->cache_list = g_list_remove(pw->cache_list, pc); |
624 cache_sim_data_free(pc->cd); | 621 cache_sim_data_free(pc->cd); |
625 file_data_free((FileData *)pc); | 622 file_data_unref(pc->fd); |
623 g_free(pc); | |
626 return; | 624 return; |
627 } | 625 } |
628 } | 626 } |
629 } | 627 } |
630 | 628 |