Remove the content-depth-limiting code on Unix platforms




HTML: Parser
16 years ago
9 years ago


(Reporter: bz, Unassigned)



Firefox Tracking Flags

(Not tracked)


I was talking to Roland earlier today and he mentioned that we could use
"ulimit" in to set the stack size to, essentially, 2GB on typical
Unix systems (32 bit, etc).  In particular,

ulimit -s unlimited

in should do the trick.  The benefit is that we can probably stop
crippling the content model, which we do to avoid the stack-overflow issues in

So now we need to decide whether to do it.

Harish, I can't seem to locate the code that does this limiting.. Version 3.384
of nsHTMLContentSink.cpp has a checkin comment by you saying the code has moved
to the parser, but no bug# is included and there are no changes to CNavDTD.cpp
or nsParser.cpp around that date that seem immediately relevant...
But is it truly useful if pages with badly nested font tags are allowed to
consume a lot of memory?
Well... that's one aspect of it.  How much are we talking here?  iirc, we were
blowing out the stack with a few hundred kilobytes of stack-allocated data....

Comment 3

16 years ago
Check versions 3.309 and 3.360 of CNavDTD or search for MAX_REFLOW_DEPTH in CNavDTD.
Boris, is this something that you are still interested in? The fix would be
fairly simple if we wanted to do this.
I think it's still worth checking out, yes.  I guess one con is that it would
make rendering on Unix and Windows different...
Assignee: harishd → nobody
QA Contact: moied → parser
You need to log in before you can comment on or make changes to this bug.