Mercurial > geeqie.yaz
annotate src/collect.h @ 1674:d5c921f9bb4c
Fix a overrun
data_offset + data_length could be bigger than guint which makes the
calculation overflow to a value smaller then size.
author | mow |
---|---|
date | Sat, 18 Jul 2009 08:16:54 +0000 |
parents | 760f585d9fa0 |
children |
rev | line source |
---|---|
9 | 1 /* |
196 | 2 * Geeqie |
9 | 3 * (C) 2004 John Ellis |
1284 | 4 * Copyright (C) 2008 - 2009 The Geeqie Team |
9 | 5 * |
6 * Author: John Ellis | |
7 * | |
8 * This software is released under the GNU General Public License (GNU GPL). | |
9 * Please read the included file COPYING for more information. | |
10 * This software comes with no warranty of any kind, use at your own risk! | |
11 */ | |
12 | |
13 | |
14 #ifndef COLLECT_H | |
15 #define COLLECT_H | |
16 | |
17 | |
138 | 18 CollectInfo *collection_info_new(FileData *fd, struct stat *st, GdkPixbuf *pixbuf); |
9 | 19 |
20 void collection_info_free_thumb(CollectInfo *ci); | |
21 void collection_info_free(CollectInfo *ci); | |
22 | |
23 void collection_info_set_thumb(CollectInfo *ci, GdkPixbuf *pixbuf); | |
1420
3a9fb1b52559
Use gboolean where applicable, for the sake of consistency.
zas_
parents:
1284
diff
changeset
|
24 gboolean collection_info_load_thumb(CollectInfo *ci); |
9 | 25 |
26 void collection_list_free(GList *list); | |
27 | |
28 GList *collection_list_sort(GList *list, SortType method); | |
29 GList *collection_list_add(GList *list, CollectInfo *ci, SortType method); | |
30 GList *collection_list_insert(GList *list, CollectInfo *ci, CollectInfo *insert_ci, SortType method); | |
31 GList *collection_list_remove(GList *list, CollectInfo *ci); | |
799 | 32 CollectInfo *collection_list_find_fd(GList *list, FileData *fd); |
138 | 33 GList *collection_list_to_filelist(GList *list); |
9 | 34 |
35 CollectionData *collection_new(const gchar *path); | |
36 void collection_free(CollectionData *cd); | |
37 | |
38 void collection_ref(CollectionData *cd); | |
39 void collection_unref(CollectionData *cd); | |
40 | |
41 void collection_path_changed(CollectionData *cd); | |
42 | |
43 gint collection_to_number(CollectionData *cd); | |
44 CollectionData *collection_from_number(gint n); | |
45 | |
46 /* pass a NULL pointer to whatever you don't need | |
47 * use free_selected_list to free list, and | |
48 * g_list_free to free info_list, which is a list of | |
49 * CollectInfo pointers into CollectionData | |
50 */ | |
51 CollectionData *collection_from_dnd_data(const gchar *data, GList **list, GList **info_list); | |
52 gchar *collection_info_list_to_dnd_data(CollectionData *cd, GList *list, gint *length); | |
53 | |
54 gint collection_info_valid(CollectionData *cd, CollectInfo *info); | |
55 | |
56 CollectInfo *collection_next_by_info(CollectionData *cd, CollectInfo *info); | |
57 CollectInfo *collection_prev_by_info(CollectionData *cd, CollectInfo *info); | |
58 CollectInfo *collection_get_first(CollectionData *cd); | |
59 CollectInfo *collection_get_last(CollectionData *cd); | |
60 | |
61 void collection_set_sort_method(CollectionData *cd, SortType method); | |
1535 | 62 void collection_randomize(CollectionData *cd); |
9 | 63 void collection_set_update_info_func(CollectionData *cd, |
64 void (*func)(CollectionData *, CollectInfo *, gpointer), gpointer data); | |
65 | |
1420
3a9fb1b52559
Use gboolean where applicable, for the sake of consistency.
zas_
parents:
1284
diff
changeset
|
66 gboolean collection_add(CollectionData *cd, FileData *fd, gboolean sorted); |
3a9fb1b52559
Use gboolean where applicable, for the sake of consistency.
zas_
parents:
1284
diff
changeset
|
67 gboolean collection_add_check(CollectionData *cd, FileData *fd, gboolean sorted, gboolean must_exist); |
3a9fb1b52559
Use gboolean where applicable, for the sake of consistency.
zas_
parents:
1284
diff
changeset
|
68 gboolean collection_insert(CollectionData *cd, FileData *fd, CollectInfo *insert_ci, gboolean sorted); |
3a9fb1b52559
Use gboolean where applicable, for the sake of consistency.
zas_
parents:
1284
diff
changeset
|
69 gboolean collection_remove(CollectionData *cd, FileData *fd); |
9 | 70 void collection_remove_by_info_list(CollectionData *cd, GList *list); |
1420
3a9fb1b52559
Use gboolean where applicable, for the sake of consistency.
zas_
parents:
1284
diff
changeset
|
71 gboolean collection_rename(CollectionData *cd, FileData *fd); |
9 | 72 |
73 void collection_update_geometry(CollectionData *cd); | |
74 | |
75 CollectWindow *collection_window_new(const gchar *path); | |
76 void collection_window_close_by_collection(CollectionData *cd); | |
77 CollectWindow *collection_window_find(CollectionData *cd); | |
78 CollectWindow *collection_window_find_by_path(const gchar *path); | |
1420
3a9fb1b52559
Use gboolean where applicable, for the sake of consistency.
zas_
parents:
1284
diff
changeset
|
79 gboolean collection_window_modified_exists(void); |
9 | 80 |
81 | |
82 #endif | |
1055
1646720364cf
Adding a vim modeline to all files - patch by Klaus Ethgen
nadvornik
parents:
799
diff
changeset
|
83 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ |