summaryrefslogtreecommitdiff
path: root/sql/protocol.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/protocol.cc')
-rw-r--r--sql/protocol.cc24
1 files changed, 13 insertions, 11 deletions
diff --git a/sql/protocol.cc b/sql/protocol.cc
index b2334b0f356..065fcd3d4af 100644
--- a/sql/protocol.cc
+++ b/sql/protocol.cc
@@ -27,6 +27,8 @@
#include "sp_rcontext.h"
#include <stdarg.h>
+static const unsigned int PACKET_BUFFER_EXTRA_ALLOC= 1024;
+
#ifndef EMBEDDED_LIBRARY
bool Protocol::net_store_data(const char *from, uint length)
#else
@@ -700,7 +702,7 @@ bool Protocol_simple::store_null()
#endif
char buff[1];
buff[0]= (char)251;
- return packet->append(buff, sizeof(buff), PACKET_BUFFET_EXTRA_ALLOC);
+ return packet->append(buff, sizeof(buff), PACKET_BUFFER_EXTRA_ALLOC);
}
#endif
@@ -1003,7 +1005,7 @@ bool Protocol_prep::store_tiny(longlong from)
char buff[1];
field_pos++;
buff[0]= (uchar) from;
- return packet->append(buff, sizeof(buff), PACKET_BUFFET_EXTRA_ALLOC);
+ return packet->append(buff, sizeof(buff), PACKET_BUFFER_EXTRA_ALLOC);
}
@@ -1015,7 +1017,7 @@ bool Protocol_prep::store_short(longlong from)
field_types[field_pos] == MYSQL_TYPE_YEAR);
#endif
field_pos++;
- char *to= packet->prep_append(2, PACKET_BUFFET_EXTRA_ALLOC);
+ char *to= packet->prep_append(2, PACKET_BUFFER_EXTRA_ALLOC);
if (!to)
return 1;
int2store(to, (int) from);
@@ -1031,7 +1033,7 @@ bool Protocol_prep::store_long(longlong from)
field_types[field_pos] == MYSQL_TYPE_LONG);
#endif
field_pos++;
- char *to= packet->prep_append(4, PACKET_BUFFET_EXTRA_ALLOC);
+ char *to= packet->prep_append(4, PACKET_BUFFER_EXTRA_ALLOC);
if (!to)
return 1;
int4store(to, from);
@@ -1046,7 +1048,7 @@ bool Protocol_prep::store_longlong(longlong from, bool unsigned_flag)
field_types[field_pos] == MYSQL_TYPE_LONGLONG);
#endif
field_pos++;
- char *to= packet->prep_append(8, PACKET_BUFFET_EXTRA_ALLOC);
+ char *to= packet->prep_append(8, PACKET_BUFFER_EXTRA_ALLOC);
if (!to)
return 1;
int8store(to, from);
@@ -1061,7 +1063,7 @@ bool Protocol_prep::store(float from, uint32 decimals, String *buffer)
field_types[field_pos] == MYSQL_TYPE_FLOAT);
#endif
field_pos++;
- char *to= packet->prep_append(4, PACKET_BUFFET_EXTRA_ALLOC);
+ char *to= packet->prep_append(4, PACKET_BUFFER_EXTRA_ALLOC);
if (!to)
return 1;
float4store(to, from);
@@ -1076,7 +1078,7 @@ bool Protocol_prep::store(double from, uint32 decimals, String *buffer)
field_types[field_pos] == MYSQL_TYPE_DOUBLE);
#endif
field_pos++;
- char *to= packet->prep_append(8, PACKET_BUFFET_EXTRA_ALLOC);
+ char *to= packet->prep_append(8, PACKET_BUFFER_EXTRA_ALLOC);
if (!to)
return 1;
float8store(to, from);
@@ -1125,7 +1127,7 @@ bool Protocol_prep::store(TIME *tm)
else
length=0;
buff[0]=(char) length; // Length is stored first
- return packet->append(buff, length+1, PACKET_BUFFET_EXTRA_ALLOC);
+ return packet->append(buff, length+1, PACKET_BUFFER_EXTRA_ALLOC);
}
bool Protocol_prep::store_date(TIME *tm)
@@ -1142,7 +1144,7 @@ bool Protocol_prep::store_time(TIME *tm)
DBUG_ASSERT(field_types == 0 ||
field_types[field_pos] == MYSQL_TYPE_TIME);
#endif
- char buff[15],*pos;
+ char buff[13], *pos;
uint length;
field_pos++;
pos= buff+1;
@@ -1153,11 +1155,11 @@ bool Protocol_prep::store_time(TIME *tm)
pos[7]= (uchar) tm->second;
int4store(pos+8, tm->second_part);
if (tm->second_part)
- length=11;
+ length=12;
else if (tm->hour || tm->minute || tm->second || tm->day)
length=8;
else
length=0;
buff[0]=(char) length; // Length is stored first
- return packet->append(buff, length+1, PACKET_BUFFET_EXTRA_ALLOC);
+ return packet->append(buff, length+1, PACKET_BUFFER_EXTRA_ALLOC);
}