- rc= memcached_response(instance, buffer, sizeof(buffer), NULL);
-
- if (rc != MEMCACHED_SUCCESS)
- {
- return memcached_set_error(*instance, rc, MEMCACHED_AT);
- }
-
- /*
- So why recheck responce? Because the protocol is brain dead :)
- The number returned might end up equaling one of the string
- values. Less chance of a mistake with strncmp() so we will
- use it. We still called memcached_response() though since it
- worked its magic for non-blocking IO.
- */
- if (not strncmp(buffer, memcached_literal_param("ERROR\r\n")))
- {
- *value= 0;
- rc= MEMCACHED_PROTOCOL_ERROR;
- }
- else if (not strncmp(buffer, memcached_literal_param("CLIENT_ERROR\r\n")))
- {
- *value= 0;
- rc= MEMCACHED_PROTOCOL_ERROR;
- }
- else if (not strncmp(buffer, memcached_literal_param("NOT_FOUND\r\n")))
- {
- *value= 0;
- rc= MEMCACHED_NOTFOUND;
- }
- else
- {
- *value= strtoull(buffer, (char **)NULL, 10);
- rc= MEMCACHED_SUCCESS;
- }
+ rc= memcached_response(instance, buffer, sizeof(buffer), NULL, numeric_value);