{
if (not self)
{
- self= (memcached_server_st *)libmemcached_malloc(memc, sizeof(memcached_server_st));
+ self= libmemcached_xmalloc(memc, struct memcached_server_st);
if (not self)
{
self= _server_create(self, memc);
- if (not self)
+ if (self == NULL)
{
return NULL;
}
_server_init(self, const_cast<memcached_st *>(memc), hostname, port, weight, type);
- if (type == MEMCACHED_CONNECTION_UDP)
+ if (memc and memcached_is_udp(memc))
{
self->write_buffer_offset= UDP_DATAGRAM_HEADER_LENGTH;
memcached_io_init_udp_header(self, 0);
}
+ if (memc)
+ {
+ set_hostinfo(self);
+ }
+
return self;
}
void memcached_server_free(memcached_server_st *self)
{
- if (not self)
+ if (self == NULL)
+ {
return;
+ }
if (memcached_server_list_count(self))
{
memcached_server_st *source)
{
/* We just do a normal create if source is missing */
- if (not source)
+ if (source == NULL)
{
return NULL;
}
hostname,
source->port, source->weight,
source->type);
- if (destination)
- {
- if (source->error_messages)
- {
- destination->error_messages= memcached_error_copy(*source);
- }
- }
-
return destination;
}
return MEMCACHED_SUCCESS;
}
-memcached_server_instance_st memcached_server_by_key(const memcached_st *ptr,
+memcached_server_instance_st memcached_server_by_key(memcached_st *ptr,
const char *key,
size_t key_length,
memcached_return_t *error)
{
- memcached_return_t rc;
memcached_return_t unused;
-
if (not error)
+ {
error= &unused;
+ }
+
+ memcached_return_t rc;
if (memcached_failed(rc= initialize_const_query(ptr)))
{
*error= rc;