Commit 6445ae33 authored by knielsen@ymer.(none)'s avatar knielsen@ymer.(none)

Merge ymer.(none):/usr/local/mysql/mysql-4.1-ndb.tmp

into  ymer.(none):/usr/local/mysql/mysql-5.0-ndb
parents 61f87f5d 44aa0f4d
...@@ -73,11 +73,15 @@ public: ...@@ -73,11 +73,15 @@ public:
} }
int assign(const void * d, size_t l) { int assign(const void * d, size_t l) {
if (data) free(data); /* Free the old data only after copying, in case d==data. */
void *old_data= data;
data = NULL; data = NULL;
len = 0; len = 0;
alloc_size = 0; alloc_size = 0;
return append(d, l); int ret= append(d, l);
if (old_data)
free(old_data);
return ret;
} }
void clear() { void clear() {
......
...@@ -267,7 +267,7 @@ SimpleProperties::pack(Writer & it, const void * __src, ...@@ -267,7 +267,7 @@ SimpleProperties::pack(Writer & it, const void * __src,
const char * src_len = _src + _map[i].Length_Offset; const char * src_len = _src + _map[i].Length_Offset;
Uint32 len = *((Uint32*)src_len); Uint32 len = *((Uint32*)src_len);
if(!ignoreMinMax){ if(!ignoreMinMax){
if(len == _map[i].maxValue) if(len > _map[i].maxValue)
return ValueTooHigh; return ValueTooHigh;
} }
ok = it.add(_map[i].Key, src, len); ok = it.add(_map[i].Key, src, len);
...@@ -276,7 +276,7 @@ SimpleProperties::pack(Writer & it, const void * __src, ...@@ -276,7 +276,7 @@ SimpleProperties::pack(Writer & it, const void * __src,
case SimpleProperties::StringValue: case SimpleProperties::StringValue:
if(!ignoreMinMax){ if(!ignoreMinMax){
size_t len = strlen(src); size_t len = strlen(src);
if(len == _map[i].maxValue) if(len > _map[i].maxValue)
return ValueTooHigh; return ValueTooHigh;
} }
ok = it.add(_map[i].Key, src); ok = it.add(_map[i].Key, src);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment