diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2010-11-14 16:30:10 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2010-11-14 16:30:10 (GMT) |
commit | 4fd2ebd6ef0875b5d7d632db735d0510e19d4570 (patch) | |
tree | 58778508862e4dc3412b3391b56109871831e126 /src/format/dex/class.c | |
parent | ae8cf6257c8d929de1b7ee86e29fcb45ab4af91c (diff) |
Loaded source file from Dex classes.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@193 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/format/dex/class.c')
-rw-r--r-- | src/format/dex/class.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/format/dex/class.c b/src/format/dex/class.c index 23e08a0..8182987 100644 --- a/src/format/dex/class.c +++ b/src/format/dex/class.c @@ -29,6 +29,7 @@ #include "dex-int.h" #include "method.h" +#include "pool.h" @@ -42,6 +43,8 @@ struct _GDexClass { GObject parent; /* A laisser en premier */ + class_def_item definition; /* Définition de la classe */ + GDexMethod **direct_methods; /* Méthodes propres */ size_t dmethods_count; /* Quantité de ces méthodes */ GDexMethod **virtual_methods; /* Méthodes virtuelles */ @@ -157,6 +160,8 @@ static GDexClass *g_dex_class_new(const GDexFormat *format, off_t offset) result = g_object_new(G_TYPE_DEX_CLASS, NULL); + result->definition = def; + index = 0; for (i = 0; i < data.direct_methods_size; i++) @@ -285,6 +290,39 @@ GBinPart **g_dex_class_get_parts(const GDexClass *class, GBinPart **parts, size_ } +/****************************************************************************** +* * +* Paramètres : class = informations chargées à consulter. * +* format = représentation interne du format DEX à compléter. * +* * +* Description : Retrouve si possible le nom du fichier source d'une classe. * +* * +* Retour : Nom du fichier trouvé ou NULL si aucun. * +* * +* Remarques : - * +* * +******************************************************************************/ + +const char *g_dex_class_get_source_file(const GDexClass *class, const GDexFormat *format) +{ + const char *result; /* Trouvaille à renvoyer */ + + result = get_string_from_dex_pool(format, + class->definition.source_file_idx); + + return result; + +} + + + + + + + + + + |