Commit Graph

131 Commits

Author SHA1 Message Date
Ms2ger
9d023a67df Bug 904110 - Move alignment features out of Util.h into a new header; r=Waldo 2013-08-14 09:00:52 +02:00
Ehsan Akhgari
2824b29025 Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:

# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type

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 "*.cc" \
         -o -iname "*.mm" \) | \
    xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
                   media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
                   modules/libmar/src/mar_private.h \
                   modules/libmar/src/mar.h


# assert_replacer.py
#!/usr/bin/python

import sys
import re

pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")

def replaceInPlace(fname):
  print fname
  f = open(fname, "rw+")
  lines = f.readlines()
  for i in range(0, len(lines)):
    while True:
      index = re.search(pattern, lines[i])
      if index != None:
        index = index.start()
        lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
        for j in range(i + 1, len(lines)):
          if lines[j].find("                 ", index) == index:
            lines[j] = lines[j][0:index] + lines[j][index+4:]
          else:
            break
      else:
        break
  f.seek(0, 0)
  f.truncate()
  f.write("".join(lines))
  f.close()

argc = len(sys.argv)
for i in range(1, argc):
  replaceInPlace(sys.argv[i])

--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Paul Adenot
53a2f501c5 Bug 882543 - Retain storage for media streams accross iterations instead of reallocating. r=jlebar,roc 2013-07-19 16:40:56 +02:00
Mike Hommey
d01870f66f Bug 892401 - Remove NEW_H. r=ted 2013-07-12 09:16:41 +09:00
Justin Lebar
3e059c7221 Bug 820686 - Remove code after MOZ_CRASH or MOZ_ASSUME_NOT_REACHED. r=(see below)
r=tbsaunde for accessible
r=jmuizelaar for gfx
r=waldo for js
r=roc for layout
r=glandium for mozglue
r=jduell for netwerk
r=khuey for everything else
2013-06-28 18:38:32 -07:00
Justin Lebar
051c5b560a Bug 802686 - s/MOZ_NOT_REACHED/MOZ_CRASH/ in Gecko. r=(see below)
r=tbsaunde for accessible
r=jmuizelaar for gfx
r=roc for layout
r=glandium for mozglue
r=jduell for netwerk
r=khuey for everything else

This is a mechanical change made with sed.  Later patches in this queue
clean up the whitespace errors and so on.
2013-06-28 18:38:30 -07:00
Catalin Iacob
6f4758d23e Bug 798914 (part 5) - Use newly introduced mozilla::MallocSizeOf instead of nsMallocSizeOfFun. r=njn.
--HG--
extra : rebase_source : fc472490dd978d165f02f77ed37f07aed6e5bb61
2013-06-23 14:03:39 +02:00
Jon Coppeard
82a8b49403 Bug 877762 - GC: Post-barrier cycle collector participants - 2 Stop nsTArray memmoving Heap<T>s r=jlebar r=bz 2013-06-18 11:00:37 +01:00
Trevor Saunders
369e88fcc0 bug 856790 - make nsTArray::EnsureLengthAtleast() return void r=jlebar 2013-04-01 16:42:54 -04:00
Trevor Saunders
b81241eb2d bug 856696 - make nsTArray::SwapElements() return void r=jlebar 2013-04-01 13:43:34 -04:00
Ehsan Akhgari
bc5d923a5a Bug 853548 - Make nsTArray::SetCapacity and InfallibleTArray::SetCapacity return void; r=jlebar 2013-03-21 15:02:20 -04:00
Justin Lebar
c84199fbeb Bug 844820 - Fix two benign races in nsTArray around sEmptyHdr. a=bz 2013-02-26 11:24:41 -05:00
Boris Zbarsky
e4fca1d362 Bug 618479 part 1. Clean up the nsTArray binary-insert code a little bit. r=jlebar,kinetik 2013-02-13 10:11:53 -05:00
Jeff Walden
39b56d89e1 Rename the |static const bool result| member of IsSame, IsPod, and IsPointer to |value| to be consistent with every other type trait. I have no idea how I managed to consistently not notice this during review. Followup to bug 723228, r=typo 2013-02-08 22:59:54 -08:00
Razvan Cojocaru
c8372e3fae Bug 723228 - nsTArray::AssignRange should use memcpy when possible. r=jlebar for the XPCOM changes, r=jwalden for js/mfbt changes
--HG--
extra : rebase_source : 2442a0d29ae0fa7edd0312d980cbc270a4f33134
2013-02-08 13:18:49 -08:00
Justin Lebar
be3b9d9bca Bug 819791 - Part 11: Make nsTArray and friends' copy constructors explicit. r=bz 2012-12-18 20:16:07 -05:00
Justin Lebar
e73a12f35f Bug 819791 - Part 3: Make typeof nsTArray == typeof InfallibleTArray. r=bz
Also make typeof nsAutoTArray == typeof AutoInfallibleTArray and switch
files to using nsTArrayForwardDeclare.h.
2012-12-18 20:16:06 -05:00
Justin Lebar
3ff706b49a Bug 819791 - Part 1: Remove nsTArrayDefaultAllocator, replacing it unconditionally with nsTArrayInfallibleAllocator. r=bz 2012-12-18 20:16:06 -05:00
Boris Zbarsky
6efc316628 Bug 819523 part 1. Make it possible to use the various-allocator nsTArrays interchangeably as long as you're working with const objects. r=jlebar 2012-12-18 20:16:05 -05:00
Boris Zbarsky
3adcd6d60f Bug 815671 part 10. Make nsTArray constructors explicit. r=jlebar 2012-11-29 11:14:14 -05:00
Benoit Jacob
6d7beedec6 Bug 806279 - CC macros refactoring: part 1: implement type-generic CC UNLINK/TRAVERSE macros - r=mccr8,smaug 2012-11-15 02:32:39 -05:00
William Chen
1e6c1fa4b2 Bug 798065 - Fix integer underflow in nsTArray::LastIndexOf. r=cjones 2012-10-04 15:23:41 -07:00
Nathan Froyd
2a14d9b274 Bug 796119 - part 2: don't #include prtypes.h in xpcom/ unless absolutely necessary; r=ehsan
"absolutely necessary" in this context means "needs PRUnichar", which is
the reason that nsString.h now #includes prtypes.h.
2012-10-01 17:01:01 -04:00
Nathan Froyd
413535eb4a Bug 796279 - remove remaining PR_MAX instances from the tree; r=ehsan
We can't use NS_MAX or std::max because we lack uniform constexpr
support across our supported compilers.  But we can do a simple inline
max ourselves.
2012-10-01 20:38:21 -04:00
Ehsan Akhgari
bd2885b68c Backout changeset 9e38c5518605, fc59bd8d49ba, d0ba1abde985, and acf91f25f228 (bugs 796119, 796279, and 797106) because of broken reftests on 64-bit platforms 2012-10-02 23:16:36 -04:00
Nathan Froyd
c2fddb8f07 Bug 796119 - part 2: don't #include prtypes.h in xpcom/ unless absolutely necessary; r=ehsan
"absolutely necessary" in this context means "needs PRUnichar", which is
the reason that nsString.h now #includes prtypes.h.
2012-10-01 17:01:01 -04:00
Nathan Froyd
d229c75d1c Bug 796279 - remove remaining PR_MAX instances from the tree; r=ehsan
We can't use NS_MAX or std::max because we lack uniform constexpr
support across our supported compilers.  But we can do a simple inline
max ourselves.
2012-10-01 20:38:21 -04:00
Boris Zbarsky
96e28c8dd5 Bug 793253. Infallible TArrays should really be infallible. r=jlebar 2012-09-22 22:04:54 -04:00
Ehsan Akhgari
e368dc9c85 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
Aryeh Gregor
d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Joshua Cranmer
a1186c1020 Bug 773637 - Kill NS_SCRIPTABLE annotations, Part 1: Remove NS_*PARAM annotations. r=ehsan
--HG--
extra : rebase_source : a0b4bc50fece36d9a90fed61431635948bfa33b5
2012-07-06 15:14:07 -05:00
Aryeh Gregor
c78113906d Bug 771873 part 2 - Assert on addition overflow in nsTArray::RemoveElementsAt; r=bsmedberg 2012-07-09 11:13:23 +03:00
Jim Mathies
2bc95dca5d Bug 761279 - Temporary work around for a VS 2012 RC compiler crash in nsTArray's Init. r=bsmedberg 2012-06-13 08:37:24 -05:00
Cameron McCormack
75dbe30fac Fix a couple of typos in comments. No bug, no review. 2012-05-31 10:32:17 +10:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Cameron McCormack
2ea93b529b Bug 739129 - Add LastElement and SafeLastElement functions to nsTArray. r=dbaron 2012-03-27 09:48:25 +11:00
Chris Lord
aa2bb6dae0 Bug 738740 - Fix handling of parameters in nsTArray::ReplaceElementAt. r=bz
Handle the parameters given to ReplaceElementAt the same way as those given to
other methods in the class. This allows removal of the & in GLContext.cpp that
was taking the address of a temporary, and causing a build error when using
clang, or when using GCC with particular parameters.
2012-03-23 19:27:25 +00:00
Matias Juntunen
702f8921b8 Bug 617947 - Merge 'class nsQuickSortComparator' into 'nsTArray'. r=bsmedberg 2012-03-21 19:52:24 -04:00
Jesse Ruderman
f4c11108ff Bug 732607 - make nsTArray assertions fatal. r=bz 2012-03-03 13:16:13 -08:00
Justin Lebar
c27428d068 Bug 719531 - Part 2: Make FallibleTArray use moz_malloc rather than NS_Alloc, because only the former is fallible. r=bsmedberg
--HG--
extra : rebase_source : 9259871f86b6fcaa805b0e042c52e10b751acdf5
2012-01-26 12:51:45 -05:00
Nicholas Nethercote
7559a70a04 Bug 715453 - Remove computedSize from nsMallocSizeOfFun. r=jlebar,bhackett.
--HG--
extra : rebase_source : a65039a407daab45360a5b375b53cbf1bc05b7f6
2012-01-25 00:52:51 -08:00
Jeff Walden
a158abd5b6 Bug 712129 - Implement MOZ_STATIC_ASSERT and MOZ_STATIC_ASSERT_IF. r=luke 2011-12-19 16:58:30 -05:00
Nicholas Nethercote
0089711fa7 Bug 707865 - Convert nsTArray::SizeOf() to nsTArray::SizeOfExcludingThis(). r=jlebar.
--HG--
extra : rebase_source : d802d58bc7dedda2490878793923adc0ab55f779
2011-12-15 14:59:53 -08:00
Justin Lebar
ddd947bba0 Bug 701210 - nsTArray::SizeOf() should use malloc_usable_size. r=roc 2011-11-09 20:40:09 -05:00
Boris Zbarsky
7b835d497d Bug 697917. Avoid atomizing the token for nsDOMTokenList containment tests. r=smaug 2011-10-28 13:06:39 -04:00
Boris Zbarsky
03b0b4eeb8 Bug 696195. Add single-argument SafeElementAt specializations for nsTArrays of smart pointers. r=jlebar 2011-10-25 12:58:01 -04:00
Ehsan Akhgari
92064e6d3f Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Jonathan Kew
b679a433d9 bug 671297 - add memory reporting for textRuns. r=roc,jlebar 2011-10-14 08:06:35 +01:00
Ehsan Akhgari
ce7741a910 Bug 692782 - Bug 690670 broke clang builds; r=cjones 2011-10-07 15:31:12 -04:00
Justin Lebar
f89c7adf4f Bug 689433 - Align nsAutoTArray<E> to E's natural alignment. r=roc
--HG--
extra : rebase_source : f7062f251f6905a58145ed6d94680f076dabbef7
2011-10-05 09:11:17 -04:00