Skip to content

[FB4] ICU63.1 suppresses conversion errors #8108

@dmitry-lipetsk

Description

@dmitry-lipetsk

FB4 returns an empty string when he can't translate Unicode symbol into ICU-codepage.

FB3 in this case returns an error.

Unicode symbol with code 0x115F (input string 'ᅟ')

Connection charset is NONE.

-- FB3 and FB4 are OK.
select cast(_utf8 '' as varchar(1) character set utf8) from rdb$database

-- FB3 returns an error, FB4 OK (an error is expected)
select cast(_utf8 '' as varchar(1) character set tis620) from rdb$database

-- FB3 and FB4 return an error (it is OK)
select cast(_utf8 '' as varchar(1) character set win1251) from rdb$database

The problem in new implementation of callback function UCNV_FROM_U_CALLBACK_STOP in ICU v63.1

https://github.com/unicode-org/icu/blob/5df4d7dfd8d77dd16aa3a0b398d50a22f4c85daa/icu4c/source/common/ucnv_err.cpp#L68-L113


In ICU v52 (FB3) this function does not contain any code

https://github.com/unicode-org/icu/blob/574e7d9d55760680ea14dbfc4908429a58c5d544/icu4c/source/common/ucnv_err.c#L53-L66

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions