diff options
author | Shauren <shauren.trinity@gmail.com> | 2014-10-21 14:57:20 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2014-10-21 14:57:20 +0200 |
commit | 1bea52fd4649b6a1761aa157f9e74f01e19872e7 (patch) | |
tree | acfe289a149100283fffd905fd3ed25e28ae2d5c /src/server/shared/Database/QueryResult.cpp | |
parent | fe634ac8045e220c1e7de2c99ecea9b10b7faa4f (diff) |
Core/DBLayer: Added support for BINARY field type
Diffstat (limited to 'src/server/shared/Database/QueryResult.cpp')
-rw-r--r-- | src/server/shared/Database/QueryResult.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/server/shared/Database/QueryResult.cpp b/src/server/shared/Database/QueryResult.cpp index a7b8ec2b107..a6d9c64622a 100644 --- a/src/server/shared/Database/QueryResult.cpp +++ b/src/server/shared/Database/QueryResult.cpp @@ -163,8 +163,16 @@ bool ResultSet::NextRow() return false; } + unsigned long* lengths = mysql_fetch_lengths(_result); + if (!lengths) + { + TC_LOG_WARN("sql.sql", "%s:mysql_fetch_lengths, cannot retrieve value lengths. Error %s.", __FUNCTION__, mysql_error(_result->handle)); + CleanUp(); + return false; + } + for (uint32 i = 0; i < _fieldCount; i++) - _currentRow[i].SetStructuredValue(row[i], _fields[i].type); + _currentRow[i].SetStructuredValue(row[i], _fields[i].type, lengths[i], (_fields[i].flags & BINARY_FLAG) != 0); return true; } |