Skip to content

Commit 74360ac

Browse files
committed
Confirm memcached is giving the correct response
1 parent 8112438 commit 74360ac

File tree

1 file changed

+18
-3
lines changed

1 file changed

+18
-3
lines changed

object-cache.php

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -326,7 +326,15 @@ function get( $id, $group = 'default', $force = false, &$found = null ) {
326326
} else {
327327
$flags = false;
328328
$this->timer_start();
329-
$value = $mc->get( $key, $flags );
329+
330+
// Sending as an array so we can verify the key being returned is what we asked for.
331+
$value = $mc->get( [ $key ], $flags );
332+
if ( is_array( $value ) && isset( $value[ $key ] ) ) {
333+
$value = $value[ $key ];
334+
} else {
335+
$value = false;
336+
}
337+
330338
$elapsed = $this->timer_stop();
331339

332340
// Value will be unchanged if the key doesn't exist.
@@ -404,7 +412,14 @@ function get_multi( $groups ) {
404412

405413
continue;
406414
} else {
407-
$fresh_get = $mc->get( $key );
415+
// Sending as an array so we can verify the key being returned is what we asked for.
416+
$fresh_get = $mc->get( [ $key ] );
417+
if ( is_array( $fresh_get ) && isset( $fresh_get[ $key ] ) ) {
418+
$fresh_get = $fresh_get[ $key ];
419+
} else {
420+
$fresh_get = false;
421+
}
422+
408423
$return[ $key ] = $fresh_get;
409424
$return_cache[ $key ] = [
410425
'value' => $fresh_get,
@@ -881,4 +896,4 @@ function get_data_size( $data ) {
881896

882897
return strlen( $serialized );
883898
}
884-
}
899+
}

0 commit comments

Comments
 (0)