This is an archive of the discontinued LLVM Phabricator instance.

Add name offset flags, for parity with cvtres.exe.
ClosedPublic

Authored by ecbeckmann on Jul 6 2017, 6:41 PM.

Details

Summary

The original cvtres.exe sets the high bit when an identifier offset
points to a string. Even though this is not mentioned in the spec, and
in fact does not seem to cause errors with most cases, for some reason
this causes a failure in Chromium where the new resource file is not
verified as a new version. This patch sets this high bit flag, and also
adds a test case to check that the output of our library is always
identical to original cvtres.

Event Timeline

ecbeckmann created this revision.Jul 6 2017, 6:41 PM
zturner accepted this revision.Jul 7 2017, 2:56 PM
This revision is now accepted and ready to land.Jul 7 2017, 2:56 PM
This revision was automatically updated to reflect the committed changes.
ruiu edited edge metadata.Jul 10 2017, 10:52 AM

Does this mean that the output of your cvtres is exactly bit-wise the same as Microsoft's?

In D35099#803935, @ruiu wrote:

Does this mean that the output of your cvtres is exactly bit-wise the same as Microsoft's?

Yes that is now the case.