Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make errors UTF8-encoded. [CORE5345] #5619

Open
firebird-automations opened this issue Sep 2, 2016 · 9 comments
Open

Make errors UTF8-encoded. [CORE5345] #5619

firebird-automations opened this issue Sep 2, 2016 · 9 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: Nick (nick)

Now it seems that they are in server's system locale.
And use NEUTRAL locale in OS errors. But better make it user-defined (by config and api).

@firebird-automations
Copy link
Collaborator Author

Commented by: @dyemanov

What exactly errors do you mean? OS level errors converted to the textual form?

@firebird-automations
Copy link
Collaborator Author

Commented by: Nick (nick)

Yes.

@firebird-automations
Copy link
Collaborator Author

Commented by: Sean Leyne (seanleyne)

Dmitry asked 2 questions, which one did you answer?

Please be explicit in your details/request.

@firebird-automations
Copy link
Collaborator Author

Commented by: @dyemanov

This is a known issue, but a test case would be appreciated. And UTF8 is a wrong choice here, error messages are converted to the attachment charset.

@firebird-automations
Copy link
Collaborator Author

Commented by: Nick (nick)

All tests where text from Server OS locale can't be converted to attachment charset will fail.

@firebird-automations
Copy link
Collaborator Author

Commented by: @dyemanov

Then OS errors should be retrieved in English and sent "as is" to the client.

@firebird-automations
Copy link
Collaborator Author

Commented by: Nick (nick)

Or in server language (language may be defined in firebird.conf or in api call) and sent as utf8.
We have unicode metadata and unicode file names, so it seems that errors with metadata names must be in utf8.

@firebird-automations
Copy link
Collaborator Author

Commented by: Sean Leyne (seanleyne)

OS errors should be in the language of the OS install (can't translate to English).

I don't see how Firebird.conf could have any role in that -- the OS will return the error as it wants -- application can only them pass along/log them as they are/as is.

@firebird-automations
Copy link
Collaborator Author

Commented by: Nick (nick)

Sean,

OS function FormatMessage has parameter LanguageId.

Hmmm, not NEUTRAL, but INVARIANT or "en-us"...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant