Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#3179 tabs in user data fields are not always propagated

v3.8
migrated
nobody
None
2013-08-21
2013-01-02
Neil Hunt
No

Tabs in the Section or Key name of an ini file entry cause an invalid idt during the linking stage.

Suggested fix: In src\wix\Data\tables.xml, add escapeIdtCharacters="yes" to all user data (not msi metadata) fields that could legitimately contain a tab character.

Also, need a better error when any field contains a tab that won't be escaped. Just generating an invalid idt file (extra tabs means invalid field count) is difficult to track down.

Further investigation:
WritePrivateProfileString( L"a\tb", L"c\td", L"e\tf", L"some.ini" );

WCHAR buff[1024];
GetPrivateProfileString( L"a\tb", L"c\td", L"", &buff[0], 1024, L"some.ini" )

The above code successfully writes the embedded tabs, and retrieves e\tf, indicating that embedded tabs are valid in the section and key of an ini file.

Discussion

  • Rob Mensching
    Rob Mensching
    2013-08-21

    • Status: open --> migrated