diff --git a/storage.cc b/storage.cc index ed9ed73..335f52a 100644 --- a/storage.cc +++ b/storage.cc @@ -5,6 +5,7 @@ #include #include #include +#include using namespace std; @@ -82,8 +83,22 @@ bool getNMM(FILE* fp, NavMonMessage& nmm, uint32_t& offset) bool getRawNMM(int fd, timespec& t, string& raw, uint32_t& offset) { char bert[4]; - if(read(fd, bert, 4) != 4 || bert[0]!='b' || bert[1]!='e' || bert[2] !='r' || bert[3]!='t') { - return false; + int res; + if((res=read(fd, bert, 4)) != 4 || bert[0]!='b' || bert[1]!='e' || bert[2] !='r' || bert[3]!='t') { + if(res != 4) + return false; + + for(int s=0;; ++s ) { + cerr<<"Skipping character hunting for good magic.. "<