summaryrefslogtreecommitdiff
path: root/plugins/dex/format.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/dex/format.c')
-rwxr-xr-xplugins/dex/format.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/plugins/dex/format.c b/plugins/dex/format.c
index 371684f..1fa5a7d 100755
--- a/plugins/dex/format.c
+++ b/plugins/dex/format.c
@@ -657,9 +657,20 @@ size_t g_dex_format_count_classes(const GDexFormat *format)
GDexClass *g_dex_format_get_class(const GDexFormat *format, size_t index)
{
- /* TODO : ref() */
+ GDexClass *result; /* Classe trouvée à retourner */
- return format->classes[index];
+ assert(index < format->header.class_defs_size);
+
+ if (index < format->header.class_defs_size)
+ {
+ result = format->classes[index];
+ g_object_ref(G_OBJECT(result));
+ }
+
+ else
+ result = NULL;
+
+ return result;
}