diff --git a/libfasta/sequence.c b/libfasta/sequence.c index 4f903d9..2cf3d10 100644 --- a/libfasta/sequence.c +++ b/libfasta/sequence.c @@ -223,7 +223,13 @@ fastaSeqCount seq_readAllSeq2(char *fileName, BOOL isStandardSeq, BOOL onlyATGC) fastaSeqCount allseqs; int32_t discarded=0; - fp = file_open(fileName, TRUE); + if ((fileName == NULL) || (strcmp(fileName, "-") == 0)) + fp = stdin; + else + { + fp = file_open(fileName, TRUE); + exitIfEmptyFile(fp); + } if (fp == NULL) { @@ -231,8 +237,6 @@ fastaSeqCount seq_readAllSeq2(char *fileName, BOOL isStandardSeq, BOOL onlyATGC) exit(1); } - exitIfEmptyFile(fp); - seqPtrAr = (fastaSeqPtr) util_malloc(slots*sizeof(fastaSeq), __FILE__, __LINE__); seqPtr = seq_getNext(fp, " ", isStandardSeq, onlyATGC);