Skip to content

Commit 5450f45

Browse files
author
Nicolas Van Eenaeme
committed
memcached_server_by_key actually returns a memcached_server_instance_st instead
of memcached_server_st. The structures were compatible to eachother, but this recently changed between 1.0.5 and 1.0.13. See https://bugs.launchpad.net/libmemcached/+bug/1076048 for more info.
1 parent 40ce9b4 commit 5450f45

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

php_memcached.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1965,7 +1965,7 @@ PHP_METHOD(Memcached, getServerByKey)
19651965
{
19661966
char *server_key;
19671967
int server_key_len;
1968-
memcached_server_st *server;
1968+
memcached_server_instance_st *server_instance;
19691969
memcached_return error;
19701970
MEMC_METHOD_INIT_VARS;
19711971

@@ -1981,16 +1981,16 @@ PHP_METHOD(Memcached, getServerByKey)
19811981
RETURN_FALSE;
19821982
}
19831983

1984-
server = memcached_server_by_key(m_obj->memc, server_key, server_key_len, &error);
1985-
if (server == NULL) {
1984+
server_instance = memcached_server_by_key(m_obj->memc, server_key, server_key_len, &error);
1985+
if (server_instance == NULL) {
19861986
php_memc_handle_error(i_obj, error TSRMLS_CC);
19871987
RETURN_FALSE;
19881988
}
19891989

19901990
array_init(return_value);
1991-
add_assoc_string(return_value, "host", server->hostname, 1);
1992-
add_assoc_long(return_value, "port", server->port);
1993-
add_assoc_long(return_value, "weight", server->weight);
1991+
add_assoc_string(return_value, "host", (char*) memcached_server_name(server_instance), 1);
1992+
add_assoc_long(return_value, "port", memcached_server_port(server_instance));
1993+
add_assoc_long(return_value, "weight", 0);
19941994
}
19951995
/* }}} */
19961996

@@ -2587,7 +2587,7 @@ static memcached_return php_memc_do_serverlist_callback(const memcached_st *ptr,
25872587

25882588
MAKE_STD_ZVAL(array);
25892589
array_init(array);
2590-
add_assoc_string(array, "host", memcached_server_name(instance), 1);
2590+
add_assoc_string(array, "host", (char*) memcached_server_name(instance), 1);
25912591
add_assoc_long(array, "port", memcached_server_port(instance));
25922592
/*
25932593
* API does not allow to get at this field.

0 commit comments

Comments
 (0)