mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Many fixes
This commit is contained in:
@ -25,7 +25,7 @@
|
||||
template <uint default_width> class Bitmap
|
||||
{
|
||||
MY_BITMAP map;
|
||||
uchar buffer[(default_width+7)/8];
|
||||
uint32 buffer[(default_width+31)/32];
|
||||
public:
|
||||
Bitmap() { init(); }
|
||||
Bitmap(Bitmap& from) { *this=from; }
|
||||
@ -62,17 +62,18 @@ public:
|
||||
char *print(char *buf) const
|
||||
{
|
||||
char *s=buf; int i;
|
||||
uchar *uchar_buffer= (uchar*)&buffer;
|
||||
for (i=sizeof(buffer)-1; i>=0 ; i--)
|
||||
{
|
||||
if ((*s=_dig_vec_upper[buffer[i] >> 4]) != '0')
|
||||
if ((*s=_dig_vec_upper[uchar_buffer[i] >> 4]) != '0')
|
||||
break;
|
||||
if ((*s=_dig_vec_upper[buffer[i] & 15]) != '0')
|
||||
if ((*s=_dig_vec_upper[uchar_buffer[i] & 15]) != '0')
|
||||
break;
|
||||
}
|
||||
for (s++, i-- ; i>=0 ; i--)
|
||||
{
|
||||
*s++=_dig_vec_upper[buffer[i] >> 4];
|
||||
*s++=_dig_vec_upper[buffer[i] & 15];
|
||||
*s++=_dig_vec_upper[uchar_buffer[i] >> 4];
|
||||
*s++=_dig_vec_upper[uchar_buffer[i] & 15];
|
||||
}
|
||||
*s=0;
|
||||
return buf;
|
||||
|
Reference in New Issue
Block a user