Hi guys, just wanted to touch base. Anyway, I'm working on resolving bug
number 3571( https://bugs.freenetproject.org/view.php?id=3571 ). To
summarize, the filter tends to reorder attributes at semirandom when
they get parsed. While the structure which holds the parsed attribute is
a LinkedHashMap, meaning we should be able to stuff in values and pull
them out in the same order, the put functions are called in the derived
verifier's overrided sanitizeHash methods. These methods extract an
attribute, sanitize it, then place it in the Map. The problem is, they
are extracted out of the original order, meaning they get pulled out of
the Map in the wrong order. To fix this, I created a callback object
which the derived classes pass to the baseclass. The baseclass may then
parse all of the attributes in order, invoking the callback to
sanitize.If an attribute's contents fails to be processed, an exception
may be thrown, so that the attribute will not be included in the final
tag.
I have a git branch open here:
http://github.com/spencerjackson/fred-staging/tree/HTMLAttributeOrder

On a related note, I noticed that the exceptions thrown inside of the
Content Filter seem to be very HTML oriented. Perhaps these should be
reworked? I could do it either later, or while I'm moving the filters up
to the client layer.

Comments and thoughts are very much appreciated.

Spencer



Reply via email to