Commit Graph

84 Commits

Author SHA1 Message Date
Birunthan Mohanathas
e81a8f702d Bug 828300 - Replace NS_ARRAY_LENGTH with mozilla::ArrayLength/MOZ_ARRAY_LENGTH. r=ehsan 2014-01-30 13:26:54 -05:00
David Major
198e213e28 Bug 932100 - Part 2: Move DLL blocklist code to mozglue. r=bsmedberg, r=glandium
--HG--
rename : toolkit/xre/nsWindowsDllBlocklist.cpp => mozglue/build/WindowsDllBlocklist.cpp
2013-11-12 08:31:32 -05:00
Jonas Finnemann Jensen
601c303bbe Bug 902587 - Part 2A: Refactor late-write-checks as client of IO Interposer. r=BenWa
--HG--
rename : xpcom/build/mozPoisonWrite.h => xpcom/build/LateWriteChecks.h
rename : xpcom/build/mozPoisonWrite.h => xpcom/build/PoisonIOInterposer.h
rename : xpcom/build/mozPoisonWriteBase.cpp => xpcom/build/PoisonIOInterposerBase.cpp
rename : xpcom/build/mozPoisonWriteMac.cpp => xpcom/build/PoisonIOInterposerMac.cpp
rename : xpcom/build/mozPoisonWriteWin.cpp => xpcom/build/PoisonIOInterposerWin.cpp
2013-11-05 07:45:20 -05:00
Benjamin Smedberg
ac8ae5b462 Bug 920695 part A - move xpcshell code into libxul and make the xpcshell binary just a stub, r=bholley
--HG--
rename : js/xpconnect/shell/xpcshell.cpp => js/xpconnect/src/XPCShellImpl.cpp
rename : js/xpconnect/shell/jsshell.msg => js/xpconnect/src/jsshell.msg
extra : rebase_source : 9a2ab7508e3cb7a6bfec6b1e98f49799221d1376
2013-09-30 16:09:28 -04:00
Nicholas Nethercote
191ed08f6a Bug 911020 - Introduce js/TypeDecls.h, which holds very commonly used type declarations from the JS engine. r=luke.
--HG--
extra : rebase_source : 008ef689989f93b46627b8be8608bdbc544ca3a2
2013-08-27 19:59:14 -07:00
Ehsan Akhgari
5ee21d6d3f 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
David Anderson
e90c94517c Rewrite CPOWs to use one actor per process (bug 853209, r=billm,bholley,smaug). 2013-07-03 00:24:32 -07:00
Steve Fink
57a2c2471b Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence 2012-12-31 12:40:21 -08:00
Steve Fink
380ecf9335 Backed out changeset fce4e0f8a553 (bug 828753) for breaking windows warnings-as-errors (stop adding JSObject forward decls, please!) 2013-01-18 13:20:21 -08:00
Steve Fink
01f8a5b4d8 Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence
--HG--
extra : rebase_source : c8806b27677594925ad0e6b54c47af5cf17e1153
2012-12-31 12:40:21 -08:00
Dave Hylands
7f0868d780 Bug 785124 - Pt 3 - Modify the updater to support update.link file. r=rstrong
From 76c70c31f5362f7c91d567ca04329195d8126f26 Mon Sep 17 00:00:00 2001
 file. Prefer sdcard for download
---
 toolkit/mozapps/update/updater/updater.cpp |   53 +++++++++++++++++++++++++---
 toolkit/xre/nsUpdateDriver.cpp             |   13 +++++--
 2 files changed, 60 insertions(+), 6 deletions(-)
2012-12-14 16:06:41 -08:00
Phil Ringnalda
ed9b0b2817 Back out 6737ce4d3ce6:599c37ed628c (bug 785124) for b2g Arm xpcshell orange in update tests 2013-01-07 22:59:32 -08:00
Dave Hylands
1f5095e6c8 Bug 785124 - Pt 3 - Modify the updater to support update.link file. r=rstrong
From 76c70c31f5362f7c91d567ca04329195d8126f26 Mon Sep 17 00:00:00 2001
 file. Prefer sdcard for download
---
 toolkit/mozapps/update/updater/updater.cpp |   53 +++++++++++++++++++++++++---
 toolkit/xre/nsUpdateDriver.cpp             |   13 +++++--
 2 files changed, 60 insertions(+), 6 deletions(-)
2012-12-14 16:06:41 -08:00
Rafael Ávila de Espíndola
5aadc5f221 Bug 826029 - Assertion in mozPoisonWriteMac due to Mac camera code trying to write a defaults file on exit | Assertion failure: ok, at ../../../xpcom/build/mozPoisonWriteMac.cpp:90. r=ehsan. 2013-01-04 10:27:41 -05:00
Ed Morley
5f21a07fa8 Backout bfeb3bc3da4e (bug 826029) for WINNT xpcshell failures 2013-01-03 10:17:14 +00:00
Rafael Ávila de Espíndola
c60ed397cc Bug 826029 - Assertion in mozPoisonWriteMac due to Mac camera code trying to write a defaults file on exit | Assertion failure: ok, at ../../../xpcom/build/mozPoisonWriteMac.cpp:90. r=ehsan.
--HG--
extra : rebase_source : 511835e6d24a0b58b5c9eb684b258456b7a7019e
2013-01-02 21:04:10 -05:00
Nathan Froyd
5f8f36ca5f 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
Ehsan Akhgari
bdd40e5c18 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
d66cf7dc03 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
Marshall Culpepper
e5a8a843cd Bug 778349: Initial support for OS ("FOTA") updates in Gonk. r=rstrong r=bbondy r=fabrice 2012-09-30 21:55:51 -05:00
Ehsan Akhgari
0fd9123eac 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
Benjamin Smedberg
d19c5bb416 Bug 771251 - OOP crash reporting accesses the directory service off the main thread. In addition, the first design of the crash injector callback meant that we're dropping some set of Flash crashes which happen during an RPC call. r=ted
* Fix the directory service usage by saving the pending directory path from OOPInit.
* Force clients to call OOPInit on the main thread.
* Make injected crashes available via TakeMinidumpForChild and give each crash a sequence number so that we can pick the earliest crash from the three possibilities; delete the other two to avoid polluting about:crashes
2012-07-10 22:20:05 -04:00
Justin Wood
b43efade28 Backed out Bug 771251 -- changeset 95c9bc0e63f7 due to red. 2012-07-10 22:50:33 -04:00
Benjamin Smedberg
6d7c8015de Bug 771251 - OOP crash reporting accesses the directory service off the main thread. In addition, the first design of the crash injector callback meant that we're dropping some set of Flash crashes which happen during an RPC call. r=ted
* Fix the directory service usage by saving the pending directory path from OOPInit.
* Force clients to call OOPInit on the main thread.
* Make injected crashes available via TakeMinidumpForChild and give each crash a sequence number so that we can pick the earliest crash from the three possibilities; delete the other two to avoid polluting about:crashes
2012-07-10 22:20:05 -04:00
Mike Hommey
e18aca6d9a Bug 764021 - Add Startup Timeline probe for when entering main(). r=taras,r=bsmedberg 2012-06-15 08:23:08 +02:00
Geoff Lankow
00f3a215c9 Bug 749930 - Replace uses of nsILocalFile with nsIFile (compiled code only); r=bsmedberg 2012-06-06 14:08:30 +12:00
Jim Mathies
bd3f82ea02 Bug 750911 - Add a third 'flags' parameter to XRE_main and add support for WindowsEnvironmentType. r=bsmedberg 2012-05-25 05:01:29 -05:00
Ehsan Akhgari
ab9253304f Bug 307181 - Stage Firefox updates in the background after they're downloaded, and replace the application directory on restart; r=rstrong,bbondy
When Firefox downloads an update, it previously kept the update around to apply
it on the next restart.  This patch changes this so that the updater program
is launched in the background as soon as the update has finished downloading
in order to stage the updated version of the application by copying the
existing installation directory to a temporary location and applying the update
on top of it, and replace the existing installation directory with the staged
directory on the next restart.

Because the replacing step is typically very fast, this patch eliminates the
wait for the update to be applied on restart, making it unnecessary to show a
progress dialog when restarting.

--HG--
rename : toolkit/mozapps/update/test/chrome/test_0092_finishedBackground.xul => toolkit/mozapps/update/test/chrome/test_0093_stagedBackground.xul
rename : toolkit/mozapps/update/test/unit/test_0110_general.js => toolkit/mozapps/update/test/unit/test_0113_general.js
rename : toolkit/mozapps/update/test/unit/test_0111_general.js => toolkit/mozapps/update/test/unit/test_0114_general.js
rename : toolkit/mozapps/update/test/unit/test_0112_general.js => toolkit/mozapps/update/test/unit/test_0115_general.js
rename : toolkit/mozapps/update/test/unit/test_0170_fileLocked_xp_win_complete.js => toolkit/mozapps/update/test/unit/test_0172_fileLocked_xp_win_complete.js
rename : toolkit/mozapps/update/test/unit/test_0171_fileLocked_xp_win_partial.js => toolkit/mozapps/update/test/unit/test_0173_fileLocked_xp_win_partial.js
rename : toolkit/mozapps/update/test/unit/test_0110_general.js => toolkit/mozapps/update/test_svc/unit/test_0113_general_svc.js
rename : toolkit/mozapps/update/test/unit/test_0111_general.js => toolkit/mozapps/update/test_svc/unit/test_0114_general_svc.js
rename : toolkit/mozapps/update/test/unit/test_0112_general.js => toolkit/mozapps/update/test_svc/unit/test_0115_general_svc.js
rename : toolkit/mozapps/update/test/unit/test_0170_fileLocked_xp_win_complete.js => toolkit/mozapps/update/test_svc/unit/test_0172_fileLocked_xp_win_complete_svc.js
rename : toolkit/mozapps/update/test/unit/test_0171_fileLocked_xp_win_partial.js => toolkit/mozapps/update/test_svc/unit/test_0173_fileLocked_xp_win_partial_svc.js
2012-05-22 10:50:04 -04:00
Gervase Markham
ca171eec44 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Mark Capella
38934b4912 Bug 712936 - Convert users of PR_STATIC_ASSERT to MOZ_STATIC_ASSERT. r=jwalden 2012-04-02 17:21:24 -07:00
Mike Hommey
f98f52406d Bug 728071 part 1 - Move nsXREAppData definition in a separate header, and use it from application.ini.h. r=bsmedberg 2012-02-22 08:12:15 +01:00
Michael Wu
8c568e3281 Bug 712789 - Put packed xpi extensions in the extension lists, r=bsmedberg 2012-02-13 13:57:28 -05:00
Ms2ger
4ab7e65f42 Bug 711838 - Remove the jetpack service; r=bsmedberg
Change to toolkit-makefiles.sh r=edmorley
2011-12-24 09:25:52 +01:00
Michael Wu
d8e503c38b 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
Makoto Kato
aa5492bfe9 Bug 678438 - DLL bloclk list for Win64 is turned off by bug 552864. r=glandium 2011-08-12 15:07:36 +09:00
Hernan Rodriguez Colmeiro
f919e96062 Bug 564667: Allow bootstrapped add-ons to have chrome URLs. r=dtownsend, sr=bsmedberg 2011-07-29 11:20:47 +02:00
Brad Lassey
3df774710d bug 661282 - make xpcshell run on android r=bsmedberg 2011-06-26 22:05:51 -04:00
Mike Hommey
48ff8f706d Bug 657297 part 1 - Expose a function to add telemetry samples in XRE. r=tglek,sr=bsmedberg 2011-05-22 08:23:20 +02:00
Mike Hommey
7d2a5f6eb2 Bug 552864 part 1 - Move DLL blocklist in XRE, and inline NS_SetDllDirectory and environment sanitization, which now needs to be called manually. r=ehsan,r=bsmedberg 2011-05-22 08:22:27 +02:00
Matt Brubeck
28a99ad4d4 Back out 6b23b52e68d6 - e92f98e8a335 (bug 632404, 552864, 658995) because of Tp4 regression. 2011-06-15 09:00:28 -07:00
Mike Hommey
9b8bddafa3 Bug 552864 part 1 - Move DLL blocklist in XRE, and inline NS_SetDllDirectory and environment sanitization, which now needs to be called manually. r=ehsan,r=bsmedberg 2011-05-22 08:22:27 +02:00
David Mandelin
30d90dd975 Bug 646304: Fix MSVC warning, r=bent 2011-03-29 19:05:12 -07:00
Dave Townsend
df7aab2ff1 Bug 474289: Automatically install add-ons distributed with the application into the user's profile. r=bsmedberg, r=robstrong, a=beltner 2011-01-19 14:37:24 -08:00
Michael Wu
4eff31a667 Bug 533038 - 1. Generalize manifest reading code and add api for reading manifests from jars, r=bsmedberg a=blocking-beta6 2010-09-08 20:37:11 -07:00
Mitchell Field
eb1e793da7 Remove @status FROZEN and @status UNDER_REVIEW. r=bsmedberg
--HG--
extra : rebase_source : 7fab31a6b7898e05ff828482390846cc9ce2854d
2010-07-02 10:27:06 -04:00
Benjamin Smedberg
4d172dd53d Merge mozilla-central, including the Electrolysis changes, into the branch for bug 568691. 2010-07-01 11:55:57 -04:00
Benjamin Smedberg
79be6b8325 Rename XRE_AddComponentLocation to XRE_AddManifestLocation to better-convey what it actually does now (it still auto-registers XPT files when passed a directory, but we may get rid of that as well and just fold those into components.manifest), as noted in bug 568691 comment 58. 2010-06-27 21:26:38 -04:00
Benjamin Smedberg
63c0077443 Merge mozilla-central into the branch for bug 568691, including fixup of the new jetpack binary module. 2010-06-25 19:41:09 -04:00
Benjamin Smedberg
492155b10e Bug 568691 part C - Register all components based on reading .manifest files from the components directories. Binary components auto-register using "binary-component name.dll". JS components register using "component CID file.js" "contract @mozilla.org/contract;1 CID" and "category categoryname keyname value".
This patch has some bugs, specifically we stop looking for .manifest files in chrome/. I will fix that in a followup. It also probably breaks non-libxul builds because of ordering issues.

Another followup will actually fix our in-tree JS components and add build machinery for creating a proper components.manifest file.
2010-06-11 16:13:26 -04:00
Benjamin Smedberg
9045c05660 Bug 568691 part A - register static and binary components using data tables rather than programmatic nsIComponentRegistrar methods. This part contains the important needs-review bits of the change: part B contains the mechanical changes to each module in order to actually get a working build. Part C will contain changes necessary to register JS components from .manifest files 2010-06-10 14:11:11 -04:00