|
|
@ -72,6 +72,7 @@ static int handle(lua_State *L, ddjvu_context_t *ctx, int wait)
|
|
|
|
static int openDocument(lua_State *L) {
|
|
|
|
static int openDocument(lua_State *L) {
|
|
|
|
const char *filename = luaL_checkstring(L, 1);
|
|
|
|
const char *filename = luaL_checkstring(L, 1);
|
|
|
|
/*const char *password = luaL_checkstring(L, 2);*/
|
|
|
|
/*const char *password = luaL_checkstring(L, 2);*/
|
|
|
|
|
|
|
|
int cache_size = luaL_optint(L, 2, 10 << 20);
|
|
|
|
|
|
|
|
|
|
|
|
DjvuDocument *doc = (DjvuDocument*) lua_newuserdata(L, sizeof(DjvuDocument));
|
|
|
|
DjvuDocument *doc = (DjvuDocument*) lua_newuserdata(L, sizeof(DjvuDocument));
|
|
|
|
luaL_getmetatable(L, "djvudocument");
|
|
|
|
luaL_getmetatable(L, "djvudocument");
|
|
|
@ -81,6 +82,7 @@ static int openDocument(lua_State *L) {
|
|
|
|
if (! doc->context) {
|
|
|
|
if (! doc->context) {
|
|
|
|
return luaL_error(L, "cannot create context.");
|
|
|
|
return luaL_error(L, "cannot create context.");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
ddjvu_cache_set_size(doc->context, (unsigned long)cache_size);
|
|
|
|
|
|
|
|
|
|
|
|
doc->doc_ref = ddjvu_document_create_by_filename_utf8(doc->context, filename, TRUE);
|
|
|
|
doc->doc_ref = ddjvu_document_create_by_filename_utf8(doc->context, filename, TRUE);
|
|
|
|
while (! ddjvu_document_decoding_done(doc->doc_ref))
|
|
|
|
while (! ddjvu_document_decoding_done(doc->doc_ref))
|
|
|
|