Fix crashing with older MySQL and new MariaDB clients when prepared statements are used #61
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes commit e295848 as some MySQL and
some MariaDB clients set unitilized or zero value for name_length and
table_length of prepared statements. Problem affects all MySQL client
versions prior to version 5.5.0; all MariaDB clients 10.2.4 and new; and
all MariaDB Connector/C clients.
When using affected client, calculate length manually via strlen() to
prevent using uninitialized or zero length value.
Crash happen when prepared statements are enabled and calling some complex
DBI function like $dbh->selectall_hashref().