Election-Tech-Initiative / Election-Tech-Initiative/electionguard-cpp
handle internationalized strings on windows
- Vorherrschende Sprache
- C++
- Sterne
- 26
- Forks
- 25
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
## Bug Report
**Expected Behavior**
international character sets are handled in utf-16
**Actual Behavior**
when marshalling strings from c# to the native library, the character set is misinterpreted. likely due ot the use of wide string and converting to string.
## steps to reproduce:
netframework ManifestGenerator uncomment one of the lines that includes spanish language.
set a break in the Manifest.h c++/cli wrapper constructor after `Utilities::MarshalString(json, _json);`
expected: the string is properly translated
actual: the string has extra characters
**Environment**
- OS: [e.g. OSX 10.13.4, Windows 10]
- Version: [e.g. 1.0.1]
Beitragsleitfaden
Rechercherichtung
Beginnen Sie mit der netframework ManifestGenerator-Reproduktion und dem Konstruktor des C++/CLI-Wrappers in Manifest.h, insbesondere mit dem Aufruf von Utilities::MarshalString(json, _json). Untersuchen Sie, wie die spanischsprachige Manifestzeichenfolge dargestellt und konvertiert wird, und überprüfen Sie anschließend, dass die native Bibliothek die erwarteten UTF-16-Zeichen ohne zusätzliche Zeichen erhält.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- cpp, csharp
- Bereich
- backend
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100