Index: load_cache/load_cache.c =================================================================== --- load_cache/load_cache.c (revision 806) +++ load_cache/load_cache.c (revision 807) @@ -127,10 +127,10 @@ } -static char *get_real_name(ldch_ctx_t *ctx, const char *load_name) +static char *get_real_name(ldch_ctx_t *ctx, const char *load_name, ldch_low_parser_t *low, ldch_high_parser_t *high, void *low_call_ctx, void *high_call_ctx) { if (ctx->load_name_to_real_name != NULL) - return ctx->load_name_to_real_name(ctx, load_name); + return ctx->load_name_to_real_name(ctx, load_name, low, high, low_call_ctx, high_call_ctx); return ldch_strdup(load_name); } @@ -142,7 +142,7 @@ /* get low level */ if (file == NULL) { - char *real_name = get_real_name(ctx, load_name); + char *real_name = get_real_name(ctx, load_name, low, high, low_call_ctx, high_call_ctx); if (real_name == NULL) return NULL; file = low->parse_alloc(low, low_call_ctx, real_name); Index: load_cache/load_cache.h =================================================================== --- load_cache/load_cache.h (revision 806) +++ load_cache/load_cache.h (revision 807) @@ -77,7 +77,7 @@ htsp_t low_parsers; htsp_t high_parsers; htsp_t files; /* of ldch_file_t */ - char *(*load_name_to_real_name)(ldch_ctx_t *ctx, const char *load_name); /* simple strdup() if NULL */ + char *(*load_name_to_real_name)(ldch_ctx_t *ctx, const char *load_name, ldch_low_parser_t *low, ldch_high_parser_t *high, void *low_call_ctx, void *high_call_ctx); /* simple strdup() if NULL */ void *user_data; ldch_uid_t next_low_uid; };