parser_common_syndication module doesn't store parsed feed data in its cache. So when server returns code 304, meaning that it was no changes on server since last feed download, module tries to load this data from cache and founds no data in it. This looks like mistake in "if" condition.
Here the part of original code of parser_common_syndication_feedapi_feed() method:
$parsed_feed = _parser_common_syndication_feedapi_parse($xml);
if (is_object($parsed_feed) && !empty($parsed_feed->from_cache)) {
_parser_common_syndication_cache_set($url, $parsed_feed);
}
In this code module wants to put data to cache only when it was loaded from cache. Nonsense.
To fix this code !empty($parsed_feed->from_cache) should be changed to empty($parsed_feed->from_cache)
| Comment | File | Size | Author |
|---|---|---|---|
| feedapi.patch | 581 bytes | andermt |
Comments
Comment #1
aron novakIt's committed, thank you for catching this!