I seem to have broken check_markup, but am not sure how. If I call, for instance

check_markup("<b>This is a test.</b>");

I get as a result:

<b>This is a test.<b>

That is, the closing "slash-b" tag is replaced by a regular, "opening" b tag, which of course screws up my page considerably. This is not specific to the b tag; the same thing happens with other comparable tags (e.g., i, strong, etc.).

To be honest, I have no idea how I got into this state. The problem began when I defined a new input filter that would use HTML filtering but not the line break converter. But I'm now getting this problem with both the new filter and the standard filtered_html filter. I've tried clearing the caches and deleting the new filter I created, but with no effect.

I've tried digging down into the code for check_markup and the functions it calls, but have probably only confused myself in doing so. Can anyone offer a clue? Thanks!

Comments

jim_at_miramontes’s picture

If it helps anyone, my problem seems to be in filter_xss -- that's where the mis-filtering of the string is happening.

jim_at_miramontes’s picture

Never mind -- found it. My bad...