X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fcallback.cc;h=84f99359d78d138e697ca80f8b84f1107fc82c4d;hb=fd632c80c5d393253d394c9a8721339876602882;hp=3625992ef8734dfafa5687261c6479cc54928051;hpb=d8dedbd561c7cb57daf4192fe57ce5e205bcadd7;p=awesomized%2Flibmemcached diff --git a/libmemcached/callback.cc b/libmemcached/callback.cc index 3625992e..84f99359 100644 --- a/libmemcached/callback.cc +++ b/libmemcached/callback.cc @@ -12,7 +12,9 @@ #include #include +#ifndef __INTEL_COMPILER #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif /* These functions provide data and function callback support @@ -20,7 +22,7 @@ memcached_return_t memcached_callback_set(memcached_st *ptr, const memcached_callback_t flag, - void *data) + const void *data) { switch (flag) { @@ -30,7 +32,7 @@ memcached_return_t memcached_callback_set(memcached_st *ptr, } case MEMCACHED_CALLBACK_USER_DATA: { - ptr->user_data= data; + ptr->user_data= const_cast(data); break; } case MEMCACHED_CALLBACK_CLEANUP_FUNCTION: @@ -90,17 +92,19 @@ void *memcached_callback_get(memcached_st *ptr, { memcached_return_t local_error; - if (!error) + if (error == NULL) + { error = &local_error; + } switch (flag) { case MEMCACHED_CALLBACK_PREFIX_KEY: { - if (ptr->prefix_key) + if (ptr->_namespace) { *error= MEMCACHED_SUCCESS; - return (void *)memcached_array_string(ptr->prefix_key); + return (void *)memcached_array_string(ptr->_namespace); } else { @@ -152,7 +156,7 @@ void *memcached_callback_get(memcached_st *ptr, } case MEMCACHED_CALLBACK_MAX: default: - WATCHPOINT_ASSERT(0); + assert_msg(0, "Invalid behavior passed to memcached_behavior_set()"); *error= MEMCACHED_FAILURE; return NULL; }