Private-Use-Area characters are not correctly rendered unless ZRCola
font is used. The PUA characters are now displayed in blue.
This commit also required to upgrade (de)composition text box to use
RichEdit control.
Signed-off-by: Simon Rozman <simon@rozman.si>
The initial support compares characters in ZRCola font Private-Use-Area
to the characters obtained using Unicode combining characters. Those
which match sufficiently are arranged into a new transliteration.
As the ZRCola Composed to Unicode transliteration requires to be applied
_after_ ZRCola composition but UI applies additional transliterations
_before_ ZRCola composition, the ZRCola composition was reintroduced as
one of the transliterations. This allows configuring a custom
transliteration sequence.
Signed-off-by: Simon Rozman <simon@rozman.si>
Resource Compiler has an issue with the first line of an UTF-8 .h file.
The workaround is not to begin UTF-8 .h files with anything important.
A blank line would do or a comment.
Signed-off-by: Simon Rozman <simon@rozman.si>
MSVC needs them to use correct charset when Language for non-Unicode
programs is set to Windows-1252 or anything different than UTF-8.
Signed-off-by: Simon Rozman <simon@rozman.si>
C files containing non-ASCII characters in strings require UTF-8 BOM for
the MSVC to encode them correctly to the UTF-16 string. (Or switch the
computer we are building on to use UTF-8 for non-Unicode programs.)
Signed-off-by: Simon Rozman <simon@rozman.si>
Version 2.4 switched to the catalog-0001.xml file. The new catalog file
is using SHA-256 hashes and signatures.
Signed-off-by: Simon Rozman <simon@rozman.si>
Versions 2.2 and 2.3 require to update to 2.4 first (to fix Active Setup
issue which works for minor updates only), before updating to 2.5
(requires major update).
The 2.5 and beyond updates will have to be visible to 2.4 version only.
Therefore, we switch the Updater in 2.4 to a new catalog file. While the
2.4 update itself needs to be published to the existing catalog file to
instruct pre-2.4 versions to update to 2.4.
In other words:
- include\UpdaterCfg.h is about checking for future releases
- Makefile publish is about upgrading the past releases
This is also an excellent opportunity to phase out SHA-1.
Updater will treat all hashes as SHA-256 when checking for updates in
the new catalog - the future releases.
While we keep hashing and signing the old catalog file using SHA-1 - for
past releases.
Signed-off-by: Simon Rozman <simon@rozman.si>
This reverts commit 2363016a76a1fdc1bac30e4b4771a4a97f058a81.
Due to Active Setup StubPath bug in already deployed MSI packages we can
fix automatically using minor update only, we cannot change the
component GUIDs just yet.
Signed-off-by: Simon Rozman <simon@rozman.si>
This reverts commit f8f20f3667d0c5d2844f2a926146ab1714d2d1ed.
Due to Active Setup StubPath bug in already deployed MSI packages we can
fix automatically using minor update only, we cannot change the
component GUIDs just yet.
Signed-off-by: Simon Rozman <simon@rozman.si>
As the language and platform-dependent component GUIDs changed and we
wish to retain the original destination folders and filenames the
RemoveExistingProducts custom action is now invoked differently
according to the version of the product we are upgrading.
When we are upgrading an old package with legacy component GUIDs, we're
uninstalling it before installing the new one.
When we will be upgrading a modern package with platform/language
dependent component GUIDs, we will remove the leftover components after
installing the new one.
This should deliver compatible upgrades of existing versions while
providing optimal upgrading in the future.
Signed-off-by: Simon Rozman <simon@rozman.si>