node_last_viewed() can store it's data with FALSE for users that did not viewed that content yet, not objects with a timestamp properties.
Access a node after cache was cleared and look at $history object in AuthcacheNodeHistorySetting::get() with debuger, you will heve records like:
$history['23'] = FALSE;
$history['23'] = FALSE;
The check in AuthcacheNodeHistorySetting::get():
if (isset($history[$nid])) {
$tsmap[$nid] = $history[$nid]->timestamp;
}
will throw a Notice: Trying to get property 'timestamp' of non-object.
Proposed resolution is to elaborate the check to:
if (isset($history[$nid])) {
$tsmap[$nid] = 0;
if (isset($history[$nid]->timestamp)) {
$tsmap[$nid] = $history[$nid]->timestamp;
}
}
if (isset($history[$nid])) {
$tsmap[$nid] = 0;
if (isset($history[$nid]->timestamp)) {
$tsmap[$nid] = $history[$nid]->timestamp;
}
}
Issue fork authcache-3389878
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #5
SilviuChingaru commentedIn #4 I reverted the changes to check if Authcache 7.x-2.x-dev passes the tests against the latest Drupal 7.x-dev version and not all of them are passing anymore.
Comment #6
SilviuChingaru commented