• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Partial fix Too many quotes

rellek

Well-known member
#1
Hi,

an error was logged at my forum:

ErrorException: Fatal Error: Maximum function nesting level of '100' reached, aborting! - library/XenForo/BbCode/Formatter/Base.php:479
Erstellt von: Unbekanntes Benutzerkonto, Dienstag um 03:31
Stapelverfolgung
#0 [internal function]: XenForo_Application::handleFatalError()
#1 {main}
Benötigter Status
array (size=3)
'url' => string 'http://board.rellek.org/threads/wer-postet-als-naechstes.1024/page-61' (length=69)
'_GET' =>
array (size=0)
empty
'_POST' =>
array (size=0)
empty

I'm not exactly sure but I think there are too many quotes. I think it'd be better if the parser would just ignore this whole bunch of nestes BBCodes instead of throwing a blank page...
 

rellek

Well-known member
#3
I think a blank page on the user's view is more like a bug, since there's no obvious possibility to fix that either. It doesn't even state which postid contains the many quotes.
 

Chris D

XenForo developer
Staff member
#4
Not really, Amaury.

Anything in the software that can cause a server error should be treated as a bug as there's nearly always graceful ways of preventing it getting to an error state.
 

Amaury

Well-known member
#5
Not really, Amaury.

Anything in the software that can cause a server error should be treated as a bug as there's nearly always graceful ways of preventing it getting to an error state.
Fair enough.

I only said that because of this:
I think it'd be better if the parser would just ignore this whole bunch of nestes BBCodes instead of throwing a blank page...
I think indicates a suggestion to me.
 

rellek

Well-known member
#7
In case it helps... This is the post that makes problems:

Code:
[quote][i]Original von rellek[/i]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
[quote][size=1][i]Original von [b]rellek[/b][/i][/size]
ts_garp[/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote][/quote]
 

Luke F

Well-known member
#10
This also occurs more commonly if a large number of spoiler tags are nested (via custom bbcode addon)

Should be considered a core issue as you can basically DoS an entire thread page using this - the only way to access it again is to edit the post in the database
 
Last edited:

Mike

XenForo developer
Staff member
#11
It's worth pointing out that this fatal error is trigged by xdebug and is not a limit in PHP itself. There are recursion limits, though they're likely to be significantly deeper than 100 PHP calls - just for reference, Python's default limit is 1000. You should increase this limit in xdebug.

That said, I am looking at a depth limit. I "only" see a depth of 20 tags there.