]> git.donarmstrong.com Git - bamtools.git/commitdiff
Added empty block EOF to BGZF::Close
authorbarnett <barnett@9efb377e-2e27-44b9-b91a-ec4abb80ed8b>
Fri, 8 Jan 2010 18:42:30 +0000 (18:42 +0000)
committerbarnett <barnett@9efb377e-2e27-44b9-b91a-ec4abb80ed8b>
Fri, 8 Jan 2010 18:42:30 +0000 (18:42 +0000)
git-svn-id: svn+ssh://gene.bc.edu/home/subversion/Derek/BamTools/trunk@36 9efb377e-2e27-44b9-b91a-ec4abb80ed8b

BGZF.cpp
BamAux.h

index 651fe81f4a18d4e3691336dc428bf33e046e1636..ea2da8d1d3155849c4fb1f69e8a93e5dbd75ef8c 100644 (file)
--- a/BGZF.cpp
+++ b/BGZF.cpp
@@ -47,12 +47,17 @@ BgzfData::~BgzfData(void) {
 // closes BGZF file\r
 void BgzfData::Close(void) {\r
 \r
+       // skip if file not open, otherwise set flag\r
     if (!IsOpen) { return; }\r
     IsOpen = false;\r
 \r
-    // flush the BGZF block\r
+    // flush the current BGZF block\r
     if ( IsWriteOnly ) { FlushBlock(); }\r
 \r
+       // write an empty block (as EOF marker)\r
+       int blockLength = DeflateBlock();\r
+       fwrite(CompressedBlock, 1, blockLength, Stream);\r
+       \r
     // flush and close\r
     fflush(Stream);\r
     fclose(Stream);\r
index eec5556b721ead182b81d9f7003bdebb924660b9..68f9e8836039157342473acf568a0d70181338ff 100644 (file)
Binary files a/BamAux.h and b/BamAux.h differ