#915 Txt2Tags - file which contains 20 "-"

None
pending-works-for-me
nobody
v1.22
5
2013-10-17
2012-11-10
adr
No

I have find a bug in Geany 1.22 : if a Txt2Tags file which contains 20 "-" on a line (--------------------) after the header, Geany crashes. I think the bug is due to an error in coloration rules.

Discussion

  • Lex Trotman
    Lex Trotman
    2012-11-11

    Does not occur with Geany 1.23 (git >= eeddd6f), please provide an example file that always fails.

     
  • Lex Trotman
    Lex Trotman
    2012-11-11

    • status: open --> pending-works-for-me
     
  • adr
    adr
    2012-11-11

    an example file that always fails

     
    Attachments
    • labels: Filetypes --> Filetypes, Txt2Tags
    • Group: --> v1.24
     
    • Found in: --> v1.22
    • Fixed in: v1.24 --> None
     
  • Nick Treleaven
    Nick Treleaven
    2013-10-16

    an example file that always fails

    Doesn't crash for me (at least with latest git).

     
    • adr
      adr
      2013-10-16

      Can you try with the first line empty and the 20 "-" on the second line (I realized that it doesn't work with the first line). Make sure that you use syntax highlighting for Text2Tags.

       
      • Nick Treleaven
        Nick Treleaven
        2013-10-17

        That doesn't crash either.

         
        • Same here, your test file seems to work just fine. It's kinda strange though because there don't seem to be any change to the highlighter or tag parser since ages.

          @adr could you please provide a backtrace of the crash using GDB? (how to do so is explained in the Getting a backtrace section here http://www.geany.org/Support/Bugs)

           
          • adr
            adr
            2013-10-17

             
            Attachments
  • OK, I tried 1.22 and it didn't crash, but it entered an infinite loop, which is just as buggy.

    There is a bug with signed vs. unsigned comparisons in HasPrevLineContent(), but for some reason it doesn't lead to a crash or a loop with the latest version, one of the calls must have been fixed to properly handle invalid positions. I'll try to fix it properly but the effects of the bug doesn't exist in development version.