Commit Graph

133 Commits

Author SHA1 Message Date
Henri Sivonen
cb263a268d Bug 1347737 - Introduce a new non-heap-allocated type for holding nsStringBuffer* in the HTML parser. r=wchen.
MozReview-Commit-ID: Gn9fXroxQhY
2017-03-20 14:45:15 +02:00
Kris Maglione
142d32b864 Bug 1333990: Part 2c - Interrupt the flush loop after inserting document element. r=hsivonen
In order to asynchronously load content scripts that need to run very early in
the page load cycle, we need to be able to block further parsing from the
document-element-inserted observer, before any page scripts are loaded.
Interrupting the flush loop after the document element is inserted allows
the observers to run, and temporarily block further parsing if necessary.

MozReview-Commit-ID: A6D2T52Mlx4
2017-03-16 18:50:28 -07:00
Andrew McCreight
79f8186a35 Bug 1333971 - Label nsHtml5SVGLoadDispatcher runnable. r=smaug
MozReview-Commit-ID: LmCbNw5qQft
2017-01-30 11:57:49 -08:00
Jonathan Kingston
e9efd52518 Bug 1330294 - Fixing disabled script tags that cause crashes in disabled SVG nodes r=hsivonen,smaug
MozReview-Commit-ID: Lr4s98aZM4W
2017-01-11 16:29:13 +00:00
Jonathan Kingston
87bc70f75d Bug 1216893 - Add in disabled namespace for SVG r=hsivonen,smaug
MozReview-Commit-ID: 7Gum6wazraS
2016-12-01 07:41:22 +00:00
Thomas Wisniewski
2f1accbc40 Bug 1305202 - Use NullString() more and remove superfluous Truncates(). r=smaug 2016-09-23 21:10:01 -04:00
Nicholas Nethercote
0b805da907 Bug 1297300 - Add missing checks to GetSpec() calls in parser/. r=hsivonen. 2016-08-31 12:13:59 +10:00
Edgar Chen
f37acbbb74 Bug 1275835 - Part 1: Move custom element codes from nsDocument to CustomElementsRegistry; r=wchen
MozReview-Commit-ID: 9gTSFrYW7o3
2016-08-30 11:48:53 +08:00
Nicholas Nethercote
e7de4ef9fc Bug 616421 - Better distinguish invalid mOpCode values in nsHtml5TreeOperation::Perform. r=hsivonen.
This patch:

- Removes eTreeOpAddError{Atom,TwoAtoms}, which are unused.

- Adds a MOZ_CRASHing case for eTreeOpUninitialized.

- Reorders the cases in the switch to match the enum declaration order, which
  makes it easier to see that all opcodes are now covered.
2016-06-02 17:49:44 +10:00
Aryeh Gregor
c4a3296430 Bug 1264270 - Parser should output attributes in source order, not reversed; r=hsivonen,bgrins 2016-05-01 15:15:26 +03:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Mike Hommey
338d086ead Bug 1134920 - Use moz_xmalloc/moz_xrealloc/free instead of nsMemory::Alloc/Realloc/Free. r=nfroyd 2015-04-01 13:51:45 +09:00
William Chen
b3789d6fc4 Bug 1081039 - cloneNode on a custom element should call createdCallback if cloned in a document with a custom element definition. r=smaug 2014-12-22 18:19:08 -08:00
William Chen
fdf3148d35 Bug 1091425 - Use the correct document when creating nodes in the HTML5 parser. r=hsivonen 2014-11-09 22:50:18 -08:00
Henri Sivonen
89552abfc6 Bug 1088635. r=smaug. 2014-11-05 17:44:37 +02:00
Diwas Joshi
cca79e512e Bug 617789 - Links in view page source when base href exists fixed. r=hsivonen. 2014-09-30 12:35:17 +03:00
Henri Sivonen
81214d3416 Bug 616421 preparation - Make bogus tree op enum crashes distinct from bogus pointers in append tree op. r=smaug. 2014-09-15 14:50:12 +03:00
William Chen
672980a40c Bug 1032654 - Remove invalid assertion from HTML parser. r=smaug 2014-07-07 18:09:39 -07:00
Kyle Huey
0c88b519d9 Bug 737976: Remove nsINodeInfo. r=smaug 2014-06-19 19:01:40 -07:00
Olli Pettay
948ecb7f4b Bug 902618 - Parser notifies about subtree roots, but not their descendants, r=hsivonen,bz 2014-06-17 02:01:22 +03:00
Boris Zbarsky
8bf32acd93 Bug 998356. Don't completely fail out of the parser if we can't format one of our string error messages. r=hsivonen 2014-05-23 17:32:37 -04:00
Birunthan Mohanathas
1ebdb921a5 Bug 869836 - Part 2: Use AppendLiteral instead of Append(NS_LITERAL_STRING(...)). r=ehsan 2014-05-22 06:48:50 +03:00
Henri Sivonen
0bb0daf4bd Bug 959150 part 7 - Retain probable bugs instead of changing behavior right now. r=smaug. 2014-03-05 21:38:50 +02:00
Henri Sivonen
d07d56d994 Bug 959150 part 4 - Avoid using tree ops when parsing with nsHtml5StringParser. r=smaug. 2014-03-05 21:38:50 +02:00
Henri Sivonen
9c5e892c4f Bug 959150 part 3 - Move the parts of nsHtml5TreeOpExecutor that the static methods in nsHtml5TreeOperation need to access into a new superclass. r=smaug. 2014-03-05 21:38:49 +02:00
Henri Sivonen
b573c3458e Bug 959150 part 2 - Split reusable operations out of nsHtml5TreeOperation::Perform into static methods. r=smaug. 2014-03-05 21:38:49 +02:00
Ryan VanderMeulen
35226d8b0a Backed out 8 changesets (bug 959150) for Linux debug build bustage on a CLOSED TREE.
Backed out changeset 30bdc9b15e8e (bug 959150)
Backed out changeset 630e489aed30 (bug 959150)
Backed out changeset c6874004efe7 (bug 959150)
Backed out changeset ebc67518a962 (bug 959150)
Backed out changeset 14441e528582 (bug 959150)
Backed out changeset 8d0ae8bffb08 (bug 959150)
Backed out changeset 603b63c33e9a (bug 959150)
Backed out changeset 261e2d244c54 (bug 959150)
2014-03-05 15:26:07 -05:00
Henri Sivonen
c75fec6c18 Bug 959150 part 7 - Retain probable bugs instead of changing behavior right now. r=smaug. 2014-03-05 21:38:50 +02:00
Henri Sivonen
ce22b77692 Bug 959150 part 4 - Avoid using tree ops when parsing with nsHtml5StringParser. r=smaug. 2014-03-05 21:38:50 +02:00
Henri Sivonen
091b6f984c Bug 959150 part 3 - Move the parts of nsHtml5TreeOpExecutor that the static methods in nsHtml5TreeOperation need to access into a new superclass. r=smaug. 2014-03-05 21:38:49 +02:00
Henri Sivonen
f048d42e27 Bug 959150 part 2 - Split reusable operations out of nsHtml5TreeOperation::Perform into static methods. r=smaug. 2014-03-05 21:38:49 +02:00
L. David Baron
eccc6c3bd1 Bug 976350 patch 1: Move the contents of nsTraceRefcnt.h into nsISupportsImpl.h. r=bsmedberg
This makes sense since the file no longer contains anything with the
nsTraceRefcnt name in it, and it will allow renaming nsTraceRefcntImpl
back to nsTraceRefcnt.
2014-02-26 13:36:35 -08:00
William Chen
a18f868583 Bug 856140 - Sync our document.registerElement implementation to the current version of the spec. r=mrbkap 2014-02-23 13:01:26 -08:00
James Kitchener
18270ead4d Bug 964239 - Ignore invalid URIs rather than stopping completely. r=hsivonen 2014-02-06 09:46:29 -05:00
Ehsan Akhgari
68bfe70f09 Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc
This patch was automatically generated by the following script:

#!/bin/bash
# Command to convert PRUnichar to char16_t

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*modules/libmar*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name prtypes.h \
       ! -name Char16.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRUnichar char16_t
2014-01-04 10:02:17 -05:00
Benjamin Smedberg
045ef77f02 Bug 943519 - If we don't have a valid nsIFormProcessor, the HTML parser should continue and should not mark the entire document as broken, r=hsivonen 2013-12-19 09:08:59 -05:00
Boris Zbarsky
49d552e5f0 Bug 945572 part 6. Make NS_NewElement take an Element** outparam instead of an nsIContent** one. r=smaug 2013-12-03 09:40:11 -05:00
William Chen
704ece6c43 Bug 937003 - Use correct adjusted insertion location for foster parenting in template element. r=hsivonen 2013-11-10 22:45:43 -08:00
Henri Sivonen
8336428f60 Bug 930281 - Use nsINode instead of nsIContent. r=smaug. 2013-11-12 10:45:22 +02:00
Ehsan Akhgari
64be2eda3b Bug 936927 - Build the HTML parser in unified mode; r=hsivonen 2013-11-11 09:07:50 -05:00
Andrea Marchesini
2c1e22a84a Bug 870787 - Improve named getter for form, r=bz 2013-06-18 08:53:23 -04:00
Joshua Cranmer
b06decdd30 Bug 856108 - Port static analyses to clang, part 2h: use MOZ_STACK_CLASS everywhere else. r=bsmedberg 2013-04-11 22:22:09 -05:00
Aryeh Gregor
30b90d6862 Bug 857102 part 4 - Make NS_NewCommentNode and nsIDocument::CreateCommentNode infallible; r=bz 2013-04-04 15:02:22 +03:00
Aryeh Gregor
fd76179457 Bug 857102 part 2 - Make NS_NewTextNode and nsIDocument::CreateTextNode infallible; r=bz 2013-04-04 15:01:08 +03:00
William Chen
43d16f6276 Bug 818976 - Part 1: Add supplement code and new tree op to support generated code in HTML5 parser. r=hsivonen 2013-03-26 00:15:23 -07:00
Ms2ger
6194513ca7 Bug 845374 - Part f: Create a new nsDocElementCreatedNotificationRunner.h; r=khuey 2013-03-17 08:55:12 +01:00
Jacek Szpot
09f9b9a1c3 Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Henri Sivonen
fc88a5853d Bug 792790 - Introduce NoBoundsCheck variants of accessors on nsHtml5HtmlAttributes; Make operator= in jArray nullptr-aware. r=smaug. 2012-10-01 11:49:01 +03:00
Randell Jesup
3b4961b603 Bug 773151: Convert nsCAutoString->nsAutoCString CLOSED TREE r=bsmedberg 2012-09-01 22:35:17 -04:00
Ehsan Akhgari
243c878d26 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00