RESOLVED FIXED 215983
Make Big5 encoder conform to the specification and behavior of Chrome and Firefox
https://bugs.webkit.org/show_bug.cgi?id=215983
Summary Make Big5 encoder conform to the specification and behavior of Chrome and Fir...
Alex Christensen
Reported 2020-08-29 22:47:22 PDT
Make Big5 encoder conform to the specification and behavior of Chrome and Firefox
Attachments
Patch (2.13 MB, patch)
2020-08-29 22:49 PDT, Alex Christensen
darin: review+
Alex Christensen
Comment 1 2020-08-29 22:49:43 PDT
Darin Adler
Comment 2 2020-08-29 23:24:35 PDT
Comment on attachment 407562 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=407562&action=review > Source/WebCore/platform/text/TextCodecICU.cpp:409 > +static Vector<uint8_t> eucJPEncode(StringView string, Function<void(UChar32, Vector<uint8_t>&)> unencodableHandler) Repeating what I said last time: These functions don’t belong in TextCodecICU. The TextCodec architecture is designed to use separate TextCodec classes for each type of encoding/decoding. This table-based encoding should be a new class. I understand that we require it because of deficiencies in ICU but that does not mean it should be in the ICU source file and class. Please consider making that change. > Source/WebCore/platform/text/TextCodecICU.cpp:416 > + UChar32 c = *iterator; I prefer auto here. > Source/WebCore/platform/text/TextCodecICU.cpp:464 > + UChar32 c = *iterator; auto
Alex Christensen
Comment 3 2020-08-31 08:45:14 PDT
(In reply to Darin Adler from comment #2) > Comment on attachment 407562 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=407562&action=review > > > Source/WebCore/platform/text/TextCodecICU.cpp:409 > > +static Vector<uint8_t> eucJPEncode(StringView string, Function<void(UChar32, Vector<uint8_t>&)> unencodableHandler) > > Repeating what I said last time: These functions don’t belong in > TextCodecICU. The TextCodec architecture is designed to use separate > TextCodec classes for each type of encoding/decoding. This table-based > encoding should be a new class. I understand that we require it because of > deficiencies in ICU but that does not mean it should be in the ICU source > file and class. Ah, I see what you're saying now. I'm going to commit this here, then as my next step I'll implement decoding to make this into its own codec class.
Alex Christensen
Comment 4 2020-08-31 08:51:32 PDT
Radar WebKit Bug Importer
Comment 5 2020-08-31 08:52:17 PDT
Note You need to log in before you can comment on or make changes to this bug.