Skip to content

Commit

Permalink
Merge pull request #456 from koreader/houqp-master
Browse files Browse the repository at this point in the history
Fix djvu TOC page number parsing
  • Loading branch information
Frenzie committed Sep 19, 2016
2 parents 3e9b63f + 2287aa8 commit 9f0a70e
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 4 deletions.
4 changes: 2 additions & 2 deletions Makefile.defs
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,9 @@ else ifeq ($(TARGET), kindle-legacy)
CHOST?=arm-kindle-linux-gnueabi
export LEGACY=1
else ifeq ($(TARGET), kobo)
HAS_KOBO_TC:=$(shell command -v arm-kobo-linux-gnueabi-gcc 2> /dev/null)
HAS_KOBO_TC:=$(shell command -v arm-kobo-linux-gnueabihf-gcc 2> /dev/null)
ifdef HAS_KOBO_TC
CHOST?=arm-kobo-linux-gnueabi
CHOST?=arm-kobo-linux-gnueabihf
else
CHOST?=arm-linux-gnueabihf
endif
Expand Down
9 changes: 7 additions & 2 deletions djvu.c
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,7 @@ static int walkTableOfContent(lua_State *L, miniexp_t r, int *count, int depth)
int counter = 0;
const char* page_name;
int page_number;
uint32_t page_name_num_idx;

while(counter < length-1) {
lua_pushnumber(L, *count);
Expand All @@ -153,7 +154,11 @@ static int walkTableOfContent(lua_State *L, miniexp_t r, int *count, int depth)
page_name = miniexp_to_str(miniexp_car(miniexp_cdr(miniexp_nth(counter, lista))));
if(page_name != NULL && page_name[0] == '#') {
errno = 0;
page_number = strtol(page_name + 1, NULL, 10);
page_name_num_idx = 1; /* skip leading # */
while (page_name[page_name_num_idx] && !isdigit(page_name[page_name_num_idx])) {
page_name_num_idx++;
}
page_number = strtol(page_name+page_name_num_idx, NULL, 10);
if(!errno) {
lua_pushnumber(L, page_number);
} else {
Expand Down Expand Up @@ -583,7 +588,7 @@ static int reflowPage(lua_State *L) {
pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
pthread_create(&rf_thread, &attr, k2pdfopt_reflow_bmp, (void*) kctx);
pthread_create(&rf_thread, &attr, (void *(*) (void *))k2pdfopt_reflow_bmp, (void*)kctx);
pthread_attr_destroy(&attr);
} else {
k2pdfopt_reflow_bmp(kctx);
Expand Down

0 comments on commit 9f0a70e

Please sign in to comment.