Index: includes/common.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/common.inc,v
retrieving revision 1.1279
diff -u -p -r1.1279 common.inc
--- includes/common.inc	21 Dec 2010 19:16:31 -0000	1.1279
+++ includes/common.inc	29 Dec 2010 00:14:37 -0000
@@ -4789,7 +4789,11 @@ function drupal_clear_js_cache() {
  */
 function drupal_json_encode($var) {
   // json_encode() does not escape <, > and &, so we do it with str_replace().
-  return str_replace(array('<', '>', '&'), array('\u003c', '\u003e', '\u0026'), json_encode($var));
+  // We also escape '.', because the Linkification Firefox add-on auto-converts
+  // text that appears to be a URL into a link, interfering with the ability of
+  // the jQuery Form plugin from parsing the JSON string when IFRAME upload is
+  // used. Escaping '.' masks text from appearing as a URL.
+  return str_replace(array('<', '>', '&', '.'), array('\u003c', '\u003e', '\u0026', '\u002e'), json_encode($var));
 }
 
 /**
