diff options
| author | Cyrille Bagard <nocbos@gmail.com> | 2016-10-09 11:57:58 (GMT) | 
|---|---|---|
| committer | Cyrille Bagard <nocbos@gmail.com> | 2016-10-09 11:57:58 (GMT) | 
| commit | 0b6e87de0d4313f8ef31907bc48ce4d7f7749738 (patch) | |
| tree | f268e98efa733379b275d8834864f13cff6fa9ac /src/format/dex/dex.c | |
| parent | 3628caa2311ee89ad0d2a0aa2438d7e85b497da4 (diff) | |
Loaded all Dex pool items using several threads.
Diffstat (limited to 'src/format/dex/dex.c')
| -rwxr-xr-x | src/format/dex/dex.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/src/format/dex/dex.c b/src/format/dex/dex.c index 582390a..d02111c 100755 --- a/src/format/dex/dex.c +++ b/src/format/dex/dex.c @@ -248,6 +248,7 @@ GBinFormat *g_dex_format_new(GBinContent *content, GExeFormat *parent, GtkStatus      GDexFormat *result;                     /* Structure à retourner       */      GBinFormat *base;                       /* Version basique du format   */      vmpa2t pos;                             /* Position de tête de lecture */ +    wgroup_id_t gid;                        /* Identifiant pour les tâches */      result = g_object_new(G_TYPE_DEX_FORMAT, NULL); @@ -265,13 +266,15 @@ GBinFormat *g_dex_format_new(GBinContent *content, GExeFormat *parent, GtkStatus      /* TODO : vérifier que les *_id ne se chevauchent pas */ -    if (!load_all_dex_types(result, status)) +    gid = g_work_queue_define_work_group(get_work_queue()); + +    if (!load_all_dex_types(result, gid, status))          goto gdfn_error; -    if (!load_all_dex_fields(result, status)) +    if (!load_all_dex_fields(result, gid, status))          goto gdfn_error; -    if (!load_all_dex_classes(result, status)) +    if (!load_all_dex_classes(result, gid, status))          goto gdfn_error;      if (!g_binary_format_complete_loading(base, status)) | 
