summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backend/epub/epub-document.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/backend/epub/epub-document.c b/backend/epub/epub-document.c
index 8c047b2e..e4412ace 100644
--- a/backend/epub/epub-document.c
+++ b/backend/epub/epub-document.c
@@ -1250,6 +1250,12 @@ setup_document_index(EpubDocument *epub_document,gchar *containeruri)
g_string_append_printf(pagelink,"/%s",newnode->pagelink);
xmlFree(newnode->pagelink);
+ gchar *escaped = g_strdup(pagelink->str);
+
+ //unescaping any special characters
+ pagelink->str = g_uri_unescape_string (escaped,NULL);
+ g_free(escaped);
+
if ((end = g_strrstr(pagelink->str,"#")) != NULL) {
fragment = g_strdup(g_strrstr(pagelink->str,"#"));
*end = '\0';