Changeset: f65133aa1630 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f65133aa1630 Modified Files: sql/backends/monet5/vaults/bam/bam_wrapper.c Branch: default Log Message:
Merge with Jul2017 branch. diffs (34 lines): diff --git a/sql/backends/monet5/vaults/bam/bam_wrapper.c b/sql/backends/monet5/vaults/bam/bam_wrapper.c --- a/sql/backends/monet5/vaults/bam/bam_wrapper.c +++ b/sql/backends/monet5/vaults/bam/bam_wrapper.c @@ -159,7 +159,11 @@ init_bam_wrapper(bam_wrapper * bw, filet throw(MAL, "init_bam_wrapper", SQLSTATE(HY001) MAL_MALLOC_FAIL); } while (TRUE) { - int read = mnstr_readline(bw->sam.input, bw->sam.header + header_len, bufsize - header_len); + ssize_t read; + lng header_pos; + + mnstr_fgetpos(bw->sam.input, &header_pos); + read = mnstr_readline(bw->sam.input, bw->sam.header + header_len, bufsize - header_len); if (read <= 0) { throw(MAL, "init_bam_wrapper", @@ -170,7 +174,7 @@ init_bam_wrapper(bam_wrapper * bw, filet if (bw->sam.header[header_len] != '@') { /* This is not a header line, we assume that the header is finished. * Rewind stream to start of line and stop reading */ - if (mnstr_fsetpos(bw->sam.input, header_len) < 0) { + if (mnstr_fsetpos(bw->sam.input, header_pos) < 0) { throw(MAL, "init_bam_wrapper", ERR_INIT_BAM_WRAPPER "Could not read last line of SAM header", file_location); @@ -188,7 +192,7 @@ init_bam_wrapper(bam_wrapper * bw, filet throw(MAL, "init_bam_wrapper", SQLSTATE(HY001) MAL_MALLOC_FAIL); } bw->sam.header = tmp; - if (mnstr_fsetpos(bw->sam.input, header_len) < 0) { + if (mnstr_fsetpos(bw->sam.input, header_pos) < 0) { throw(MAL, "init_bam_wrapper", ERR_INIT_BAM_WRAPPER "Could not read last line of SAM header", file_location); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list