diff options
Diffstat (limited to 'fitz/base_link.c')
-rw-r--r-- | fitz/base_link.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/fitz/base_link.c b/fitz/base_link.c index 3f25c82d..de19dbf1 100644 --- a/fitz/base_link.c +++ b/fitz/base_link.c @@ -1,29 +1,30 @@ #include "fitz.h" static void -free_link_dest(fz_context *ctx, fz_link_kind kind, fz_link_dest *dest) +free_link_dest(fz_context *ctx, fz_link_dest *dest) { - switch(kind) + switch(dest->kind) { + case FZ_LINK_NONE: case FZ_LINK_GOTO: break; case FZ_LINK_URI: - fz_free(ctx, dest->uri.uri); + fz_free(ctx, dest->ld.uri.uri); break; case FZ_LINK_LAUNCH: - fz_free(ctx, dest->launch.file_spec); + fz_free(ctx, dest->ld.launch.file_spec); break; case FZ_LINK_NAMED: - fz_free(ctx, dest->named.named); + fz_free(ctx, dest->ld.named.named); break; case FZ_LINK_GOTOR: - fz_free(ctx, dest->gotor.file_spec); + fz_free(ctx, dest->ld.gotor.file_spec); break; } } fz_link * -fz_new_link(fz_context *ctx, fz_link_kind kind, fz_rect bbox, fz_link_dest dest) +fz_new_link(fz_context *ctx, fz_rect bbox, fz_link_dest dest) { fz_link *link; @@ -33,10 +34,9 @@ fz_new_link(fz_context *ctx, fz_link_kind kind, fz_rect bbox, fz_link_dest dest) } fz_catch(ctx) { - free_link_dest(ctx, kind, &dest); + free_link_dest(ctx, &dest); fz_rethrow(ctx); } - link->kind = kind; link->dest = dest; link->rect = bbox; link->next = NULL; @@ -51,7 +51,7 @@ fz_free_link(fz_context *ctx, fz_link *link) while (link) { next = link->next; - free_link_dest(ctx, link->kind, &link->dest); + free_link_dest(ctx, &link->dest); fz_free(ctx, link); link = next; } |