Index: trunk/phase3/includes/parser/ParserCache.php |
— | — | @@ -48,6 +48,12 @@ |
49 | 49 | return wfMemcKey( 'pcache', 'idoptions', "{$pageid}" ); |
50 | 50 | } |
51 | 51 | |
| 52 | + /** |
| 53 | + * Provides an E-Tag suitable for the whole page, even if $article is |
| 54 | + * just the main wikitext. So it uses the complete set of user options. |
| 55 | + * Most importantly, that includes the user language, but other options |
| 56 | + * would give problems on some setups, too. |
| 57 | + */ |
52 | 58 | function getETag( $article, $popts ) { |
53 | 59 | return 'W/"' . $this->getParserOutputKey( $article, |
54 | 60 | $popts->optionsHash( ParserOptions::legacyOptions() ) ) . |
— | — | @@ -74,7 +80,7 @@ |
75 | 81 | |
76 | 82 | // Determine the options which affect this article |
77 | 83 | $optionsKey = $this->mMemc->get( $this->getOptionsKey( $article ) ); |
78 | | - if ( $optionsKey !== false ) { |
| 84 | + if ( $optionsKey != false ) { |
79 | 85 | if ( !$useOutdated && $optionsKey->expired( $article->mTouched ) ) { |
80 | 86 | wfIncrStats( "pcache_miss_expired" ); |
81 | 87 | $cacheTime = $optionsKey->getCacheTime(); |