INNER CODE UNIT · C

err

EhViewer-NekoInverter/EhViewer · app/src/main/cpp/archive.c:201

    int err = archive_read_open_memory(ctx->arc, archiveAddr, archiveSize);
    if (err < ARCHIVE_OK) {
        LOGE("%s%s", "Open archive failed: ", archive_error_string(ctx->arc));
        archive_read_free(ctx->arc);
        free(ctx);
        return NULL;
    }
    return ctx;
}

static int archive_skip_to_index(archive_ctx *ctx, int index) {
    while (archive_read_next_header(ctx->arc, &ctx->entry) == ARCHIVE_OK) {
        if (!archive_entry_is_playable(ctx->entry))
            continue;
        if (ctx->next_index++ == index) {
            return ctx->next_index - 1;
        }
    }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…