Commit Graph

30 Commits

Author SHA1 Message Date
Matt Brubeck
3919e75e03 Bug 935376 - Back out 2e6063aa9b77 (bug 328755) on suspicion of causing a crash in ntdll 2013-11-05 21:12:56 -08:00
James Kitchener
04bddc47a6 Bug 328755 - Assigning a zero-length string should not alloc a buffer. r=bsmedberg 2013-11-04 14:22:37 -05:00
Nathan Froyd
122242a163 Bug 884281 - use mozilla::Atomic in xpcom/; r=bsmedberg,jlebar 2013-08-22 11:14:42 -04: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
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
Aryeh Gregor
b8a4c64af3 Bug 859817 - Make nsStringBuffer::Alloc return already_AddRefed; r=bz 2013-04-22 14:13:22 +03:00
Nicholas Nethercote
59b1ac9057 Bug 826521 (part 1) - Add SizeOfIncludingThisEvenIfShared() for strings. r=bz.
--HG--
extra : rebase_source : 5c10fc346ba0c5fa76d947a97254e9ebc49353e1
2013-01-17 21:21:35 -08: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
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Mark Capella
bfa59371ce Bug 712936 - Convert users of PR_STATIC_ASSERT to MOZ_STATIC_ASSERT. r=jwalden 2012-04-02 17:21:24 -07:00
Nicholas Nethercote
8a9f231eaa Bug 671299 (part 2) - Add nsStringBuffer::SizeOfIncludingThisMustBeUnshared. r=bz.
--HG--
extra : rebase_source : 1702e32e19828ae061c89f017f27efc75dab6cff
2012-01-02 18:19:12 -08: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
Nicholas Nethercote
0d33b4e71c Bug 712835 (part 1 of 3) - Add nsStringBuffer::SizeOfIncludingThisIfUnshared(). r=khuey.
--HG--
extra : rebase_source : 44f4e4139aaefb003f95df0d9fbec7e1c06e7a9f
2011-12-22 16:57:30 -08:00
Michael Wu
d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Justin Lebar
d5dcbf68a6 Bug 592557 - Eliminate uses of PR_Atomic{Increment,Decrement} functions in favor of PR_ATOMIC_{INCREMENT,DECREMENT} macros. r=bsmedberg,gal
--HG--
extra : rebase_source : 71069eb9c9d61131adee49279e136c8574dabc62
2011-03-28 15:58:49 -04:00
Mats Palmgren
d8e85c2924 Bug 615147. r=dbaron a=blocking2.0:final 2011-01-14 01:22:26 +01:00
Olli Pettay
4a3cfaa4e8 Bug 574089 - Optimize ::GetInnerHTML, r=jst
--HG--
extra : rebase_source : 3ed1549eaa96d3ff3fe6bf2bb2562dd9e68fcc17
2010-06-26 23:39:56 +03:00
Jonas Sicking
c24e5442a9 Bug 534136 Part 1: Make atoms keep a pointer to an nsStringBuffer rather than storing the data inline. r=bsmedberg 2010-03-08 07:44:59 -08:00
Neil Rashbrook
63ff447dc4 Bug 520366 AppendInt only handles 32 bit signed ints r=bsmedberg 2009-11-04 21:33:23 +00:00
Neil Rashbrook
dba2472e83 Bug 504660 Make sEmptyBuffer non-const so EnsureMutable can safely use it for an empty string r=bsmedberg 2009-07-20 21:04:44 +01:00
Benjamin Smedberg
f0fdeb2ef7 Remove the v1 string ABI compatibility hacks. Replace references of nsTAString_CharT with nsTSubstring_CharT which is the new base class. r=dbaron 2008-09-19 11:07:22 -04:00
Marco Pesenti Gritti
5f039b9eb5 Make sure that nsString and nsString_external are the same size. b=430581 r=benjamin 2008-07-30 08:06:54 +02:00
jwalden@mit.edu
6d7584839a Bug 348748 - Replace all instances of NS_STATIC_CAST and friends with C++ casts (and simultaneously bitrot nearly every patch in existence). r=bsmedberg on the script that did this. Tune in next time for Macro Wars: Episode II: Attack on the LL_* Macros. 2007-07-08 00:08:04 -07:00
bzbarsky%mit.edu
5abe2229c9 Do better logging of string leaks. Bug 336914, r+sr=darin 2006-05-12 03:36:37 +00:00
darin%meer.net
54cde78765 fixes bug 281056 "make --disable-v1-string-abi build again" r+sr=bryner 2005-02-07 04:00:02 +00:00
darin%meer.net
dd78f625f5 landing xpcom patch for bug 235499 "re-enable string buffer sharing between C++ and JS in xpconnect" r=dbaron sr=jst 2005-02-02 22:18:37 +00:00
darin%meer.net
e5a653f18b output number of leaked string buffers 2004-09-07 19:57:20 +00:00
darin%meer.net
44ce35aebb landing patch for bug 234864 "string branch landing resulted in large spike in heap allocations (brad:A metric)" r+sr=dbaron
this patch also introduces nsTFixedString and removes CBufDescriptor.
2004-02-20 01:53:23 +00:00
darin%meer.net
8d65e087ae landing string defragmentation patch for bug 231995, r/sr=dbaron,jst,dougt 2004-02-19 02:44:03 +00:00