Election-Tech-Initiative / Election-Tech-Initiative/electionguard-cpp

handle internationalized strings on windows

Offen
#176 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
bug code owner only
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

Beitragsleitfaden öffnen

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

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.