On Feb 6, 1:13 pm, David Pollak <
feeder.of.the.be...@gmail.com> wrote:
> It's an issues of what the meaning of "this" is.
>
> Basically, htmlOutputHeader points to the "old" version of docType in:
>
> def setDocType(newDocType: () => Box[String]) = {
> val old = this
> new HtmlProperties {
> def docType = newDocType()
> def encoding = old.encoding
> def contentType = old.contentType
> def htmlOutputHeader = old.htmlOutputHeader
> def htmlParser = old.htmlParser
> def htmlWriter = old.htmlWriter
> def html5FormsSupport = old.html5FormsSupport
> def maxOpenRequests = old.maxOpenRequests
> def userAgent = old.userAgent
> }
> }
>
> I chased this issue once before and can't really get a satisfactory answer
> to what should be done. It's a nasty intersection of immutable data and
> inheritance. You're welcome to open a ticket athttp://ticket.liftweb.netandassign it to me (you must be a watcher of