mirror of https://github.com/kiwix/libkiwix.git
Merge pull request #214 from kiwix/cyrillemoureaux-fix-self-redirect
Detect and reject infinite redirect loops.
This commit is contained in:
commit
ec4525fd47
|
@ -122,7 +122,6 @@ Entry Entry::getFinalEntry() const
|
||||||
if (final_article.good()) {
|
if (final_article.good()) {
|
||||||
return final_article;
|
return final_article;
|
||||||
}
|
}
|
||||||
|
|
||||||
int loopCounter = 42;
|
int loopCounter = 42;
|
||||||
final_article = article;
|
final_article = article;
|
||||||
while (final_article.isRedirect() && loopCounter--) {
|
while (final_article.isRedirect() && loopCounter--) {
|
||||||
|
@ -131,7 +130,10 @@ Entry Entry::getFinalEntry() const
|
||||||
throw NoEntry();
|
throw NoEntry();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// Prevent infinite loops.
|
||||||
|
if (final_article.isRedirect()) {
|
||||||
|
throw NoEntry();
|
||||||
|
}
|
||||||
return final_article;
|
return final_article;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue