Erreur de segmentation avec une petite valeur -X n
Comme l'indique le titre et les commentaires de #3259 (closed), l'utilisation de -Z et -X simultanée peut provoquer une erreur de segmentation. (Voir ci-dessous, cela ne dépend en fait que de -X).
Toutefois, je ne l'ai remarqué que lorsque -X est doté d'une petite valeur, par exemple avec ./vidjil-algo -c segment -g germline/homo-sapiens.g -X 10 -Z 5 demo/LIL-L4.fastq.gz
.
Selon GDB, l'erreur semble provenir des frames suivant:
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff6fd3bbc in _int_malloc (av=av@entry=0x7ffff7316b20 <main_arena>, bytes=bytes@entry=246) at malloc.c:3353
3353 malloc.c: No such file or directory.
(gdb) bt
#0 0x00007ffff6fd3bbc in _int_malloc (av=av@entry=0x7ffff7316b20 <main_arena>, bytes=bytes@entry=246) at malloc.c:3353
#1 0x00007ffff6fd6184 in __GI___libc_malloc (bytes=246) at malloc.c:2913
#2 0x00007ffff78c8e78 in operator new(unsigned long) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff795a499 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_mutate(unsigned long, unsigned long, char const*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff795b833 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_append(char const*, unsigned long) ()
from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff78e1a7b in std::basic_istream<char, std::char_traits<char> >& std::getline<char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char) ()
from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x000000000048cb7a in OnlineFasta::getInterestingLine[abi:cxx11](int) ()
#7 0x000000000048d1bf in OnlineFasta::next() ()
#8 0x000000000047be61 in OnlineBioReader::skipToNthSequence() ()
#9 0x000000000048d491 in OnlineFasta::next() ()