Search code examples
htmlexpressionenginecode-injection

Bizarre HTML 'Bud1% @' Injection


I'm developing a website locally in ExpressionEngine using MAMP Pro, and all of a sudden I'm getting the most bizarre issue.

My webfonts, served by Typekit, suddenly stopped functioning. Upon closer examination, I found that the second line of my Typekit embed code had been appended with Bud1% @. Here's my full Typekit code, for reference:

<script type="text/javascript" src="//use.typekit.net/*******.js"></script>
<script type="text/javascript">try{Typekit.load();}catch(e){}Bud1% @</script>

To clarify, this code is only injected when viewed in a browser, not in my code editor. I haven't yet tested whether or not it's being injected in the production environment.

Searching SO for a similar issue yields this thread, indicating that the issue is caused in some fashion by the Finder's hidden .DS_STORE files, but doesn't clarify how to rectify the problem.

I've tried removing the .DS_STORE file from the directory and recreating the affected HTML file, to no avail.

To further clarify, I'm developing on OSX Mountain Lion (10.8.2), using Sublime Text 2 as my code editor and Safari for testing. ExpressionEngine 2.5.5 is the CMS I'm using, and the whole thing resides in a Git repository managed by Git Tower.

Any ideas!? Thanks in advance for any help.


Solution

  • I've solved my problem.

    This issue is specific to ExpressionEngine. It was due to a plugin I had installed called SnippetsSync.

    The plugin had created an empty ExpressionEngine snippet from the .DS_STORE file in the directory, and was therefore replacing the { } in my Typekit embed code with its contents, the dreaded Bud1% @.

    If you're having the same issue, double-check that you don't have a blank snippet by going to Design > Templates > Snippets. If the issue persists, delete or disable the extension from Add-Ons > Modules.