r984: updated to the latest kseq.h

This commit is contained in:
Heng Li 2014-11-13 11:12:23 -05:00
parent 7eabcf42c4
commit c5fe18438a
2 changed files with 10 additions and 10 deletions

10
kseq.h
View File

@ -74,8 +74,7 @@
if (ks->begin >= ks->end) { \ if (ks->begin >= ks->end) { \
ks->begin = 0; \ ks->begin = 0; \
ks->end = __read(ks->f, ks->buf, __bufsize); \ ks->end = __read(ks->f, ks->buf, __bufsize); \
if (ks->end < __bufsize) ks->is_eof = 1; \ if (ks->end == 0) { ks->is_eof = 1; return -1;} \
if (ks->end == 0) return -1; \
} \ } \
return (int)ks->buf[ks->begin++]; \ return (int)ks->buf[ks->begin++]; \
} }
@ -95,17 +94,16 @@ typedef struct __kstring_t {
#define __KS_GETUNTIL(__read, __bufsize) \ #define __KS_GETUNTIL(__read, __bufsize) \
static int ks_getuntil2(kstream_t *ks, int delimiter, kstring_t *str, int *dret, int append) \ static int ks_getuntil2(kstream_t *ks, int delimiter, kstring_t *str, int *dret, int append) \
{ \ { \
int gotany = 0; \
if (dret) *dret = 0; \ if (dret) *dret = 0; \
str->l = append? str->l : 0; \ str->l = append? str->l : 0; \
if (ks->begin >= ks->end && ks->is_eof) return -1; \
for (;;) { \ for (;;) { \
int i; \ int i; \
if (ks->begin >= ks->end) { \ if (ks->begin >= ks->end) { \
if (!ks->is_eof) { \ if (!ks->is_eof) { \
ks->begin = 0; \ ks->begin = 0; \
ks->end = __read(ks->f, ks->buf, __bufsize); \ ks->end = __read(ks->f, ks->buf, __bufsize); \
if (ks->end < __bufsize) ks->is_eof = 1; \ if (ks->end == 0) { ks->is_eof = 1; break; } \
if (ks->end == 0) break; \
} else break; \ } else break; \
} \ } \
if (delimiter == KS_SEP_LINE) { \ if (delimiter == KS_SEP_LINE) { \
@ -126,6 +124,7 @@ typedef struct __kstring_t {
kroundup32(str->m); \ kroundup32(str->m); \
str->s = (char*)realloc(str->s, str->m); \ str->s = (char*)realloc(str->s, str->m); \
} \ } \
gotany = 1; \
memcpy(str->s + str->l, ks->buf + ks->begin, i - ks->begin); \ memcpy(str->s + str->l, ks->buf + ks->begin, i - ks->begin); \
str->l = str->l + (i - ks->begin); \ str->l = str->l + (i - ks->begin); \
ks->begin = i + 1; \ ks->begin = i + 1; \
@ -134,6 +133,7 @@ typedef struct __kstring_t {
break; \ break; \
} \ } \
} \ } \
if (!gotany && ks_eof(ks)) return -1; \
if (str->s == 0) { \ if (str->s == 0) { \
str->m = 1; \ str->m = 1; \
str->s = (char*)calloc(1, 1); \ str->s = (char*)calloc(1, 1); \

2
main.c
View File

@ -4,7 +4,7 @@
#include "utils.h" #include "utils.h"
#ifndef PACKAGE_VERSION #ifndef PACKAGE_VERSION
#define PACKAGE_VERSION "0.7.10-r983-dirty" #define PACKAGE_VERSION "0.7.10-r984-dirty"
#endif #endif
int bwa_fa2pac(int argc, char *argv[]); int bwa_fa2pac(int argc, char *argv[]);