~ubuntu-branches/ubuntu/precise/xulrunner-1.9/precise

« back to all changes in this revision

Viewing changes to mozilla/layout/style/nsCSSScanner.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Alexander Sack
  • Date: 2008-12-16 18:40:18 UTC
  • mfrom: (1.1.15 upstream)
  • Revision ID: james.westby@ubuntu.com-20081216184018-j646ukfhzxnjynix
Tags: 1.9.0.5+nobinonly-0ubuntu1
* new security/stability upstream release v1.9.0.5 (FIREFOX_3_0_5_RELEASE)
  - see USN-690-1
* submit patches upstreamed:
  - bzXXX_plugin_for_mimetype_pref.patch => bz449188_att350098_plugin_for_mimetype_pref.patch
  - update debian/patches/series
* adjust XULFastLoad cache in response to interleaving landing of bmo
  #453545 and #462806
  - update debian/patches/bz368428_attachment_308130.patch

Show diffs side-by-side

added added

removed removed

Lines of Context:
872
872
    if (6 == i) { // look for trailing whitespace and eat it
873
873
      ch = Peek(aErrorCode);
874
874
      if (IsWhitespace(ch)) {
875
 
        ch = Read(aErrorCode);
 
875
        (void) Read(aErrorCode);
876
876
      }
877
877
    }
878
878
    NS_ASSERTION(rv >= 0, "How did rv become negative?");
 
879
    // "[at most six hexadecimal digits following a backslash] stand
 
880
    // for the ISO 10646 character with that number, which must not be
 
881
    // zero. (It is undefined in CSS 2.1 what happens if a style sheet
 
882
    // does contain a character with Unicode codepoint zero.)"
 
883
    //   -- CSS2.1 section 4.1.3
 
884
    //
 
885
    // Silently deleting \0 opens a content-filtration loophole (see
 
886
    // bug 228856), so what we do instead is pretend the "cancels the
 
887
    // meaning of special characters" rule applied.
879
888
    if (rv > 0) {
880
889
      AppendUCS4ToUTF16(ENSURE_VALID_CHAR(rv), aOutput);
 
890
    } else {
 
891
      while (i--)
 
892
        aOutput.Append('0');
 
893
      if (IsWhitespace(ch))
 
894
        Pushback(ch);
881
895
    }
882
896
    return;
883
897
  } else {