Menu

#1547 Read out of bounds in FM.exe when archive is open using parser

None
open-fixed
nobody
None
7
2015-08-24
2015-08-23
robyschek
No

When I open an archive in FM.exe using parser (-t# switch) and invoke context menu on a file in archive, I get access violation in x64 build. In 32-bit build the AV seems to be masked by Windows, but no menu is shown either.

The exception occurs in Agent.h in CAgent::IsThereReadOnlyArc:

      if (!g_CodecsObj->Formats[arc.FormatIndex].UpdateEnabled || arc.IsReadOnly)
        return true;

arc.FormatIndex here is set to -1 when the archive type is Parser.

At least 15.05 and 15.06 are affected.

Discussion

  • Igor Pavlov

    Igor Pavlov - 2015-08-24
    • status: open --> open-fixed
    • Group: -->
     
  • Igor Pavlov

    Igor Pavlov - 2015-08-24

    I'll fix it

          if (arc.FormatIndex < 0
              || arc.IsReadOnly
              || !g_CodecsObj->Formats[arc.FormatIndex].UpdateEnabled)
            return true;
    

    Thanks for report!

     

Log in to post a comment.