Commit Graph

696 Commits

Author SHA1 Message Date
Ehsan Akhgari
ebf95a51c9 Bug 1124047 - Move TestPriorityQueue.cpp to gtest and enable it; r=froydnj 2015-01-21 11:25:34 -05:00
Ehsan Akhgari
82bb821bec Bug 1124041 - Move TestPipes.cpp to gtest and enable it; r=froydnj 2015-01-21 11:21:10 -05:00
Nicholas Nethercote
9a918a72c0 Bug 1123151 (part 2) - Add PLDHashTable::IsInitialized(). r=froydnj.
This encapsulates most of the uses of PLDHashTable::ops.
2015-01-19 16:11:34 -08:00
Nicholas Nethercote
fa52a2c4c9 Bug 1123151 (part 1) - Set PLDHashTable::ops consistently. r=froydnj.
Currently the setting of PLDHashTable::ops is very haphazard.

- PLDHashTable has no constructor, so it's not auto-nulled, so lots of places
  null it themselves.

- In the fallible PLDHashTable::Init() function, if the entry storage
  allocation fails we'll be left with a table that has |ops| set -- indicating
  it's been initialized -- but has null entry storage. I'm not certain this can
  cause problems but it feels unsafe, and some (but not all) callers of Init()
  null it on failure.

- PLDHashTable does not null |ops| in Finish(), so some (but not all) callers
  do this themselves.

This patch makes things simpler.

- It adds a constructor that zeroes |ops|.

- It modifies Init() so that it only sets |ops| once success is ensured.

- It zeroes |ops| in Finish().

- Finally, it removes all the now-unnecessary |ops| nulling done by the users
  of PLDHashTable.
2015-01-19 16:01:24 -08:00
Christoph Kerschbaumer
6a281b98c4 Bug 1119006 - Remove files where code is still calling removed NS_OpenURI API (r=mcmanus) 2015-01-14 11:52:57 -08:00
Nicholas Nethercote
14f46aac14 Bug 1121304 (part 2, attempt 2) - Remove PLDHashTableOps::{alloc,free}Table. r=froydnj. 2015-01-14 14:35:56 -08:00
Phil Ringnalda
cb85f01b15 Backed out 2 changesets (bug 1121304) for consistent b2g hangs in webgl-color-test.html?frame=1&__&preserve&premult&_____
Backed out changeset 20651ac19549 (bug 1121304)
Backed out changeset 758afec77c95 (bug 1121304)
2015-01-14 22:02:23 -08:00
Nicholas Nethercote
60d7115c86 Bug 1121304 (part 2) - Remove PLDHashTableOps::{alloc,free}Table. r=froydnj. 2015-01-14 14:35:56 -08:00
Nicholas Nethercote
c4c1173204 Bug 1120476 (part 4) - Remove PLDHashTableOps::finalize. r=froydnj. 2015-01-13 19:02:35 -08:00
Nicholas Nethercote
7c92773a6f Bug 1120476 (part 3) - Remove PLDHashTable::data. r=froydnj. 2015-01-13 16:42:13 -08:00
Ehsan Akhgari
f187581528 Bug 1119254 - Mark virtual overridden functions as MOZ_OVERRIDE in xpcom; r=froydnj 2015-01-08 10:58:39 -05:00
Michael Pruett
5a6ab9e26e Bug 1118024 - Add explicit PL_DHashTable{Add,Lookup,Remove} functions. r=nfroyd 2015-01-05 20:26:50 -06:00
Ehsan Akhgari
3799d571b8 Bug 1114999 - Part 2: Apply MOZ_NO_ADDREF_RELEASE_ON_RETURN to all smart pointer arrow operators that can return refcounted objects; r=jrmuizel 2015-01-06 16:30:03 -05:00
Ehsan Akhgari
213d9b2833 Bug 1117211 - Move the XPCOM gtests temporarily placed in xpcom/glue/tests/gtest into xpcom/test/gtest now that it exists; r=froydnj 2015-01-05 11:30:36 -05:00
Ehsan Akhgari
61fc99a4ee Bug 1117035 - Mark virtual overridden functions as MOZ_OVERRIDE in XPCOM; r=froydnj 2015-01-05 11:25:41 -05:00
Christoph Kerschbaumer
d8823fbc59 Bug 1093948: Make JS callers of ios.newChannel call ios.newChannel2 in xpcom/ (r=bsmedberg) 2014-12-29 12:37:15 -08:00
Chris Peterson
e56f788c56 Bug 1110031 - Part 1: Mark more directories as FAIL_ON_WARNINGS. r=gps 2014-12-10 22:56:31 -08:00
Ehsan Akhgari
8c71aed1e0 Bug 1111224 - Move TestExpirationTracker.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestExpirationTracker.cpp => xpcom/glue/tests/gtest/TestExpirationTracker.cpp
extra : rebase_source : 3961e36029257b2e923fe6597aadf684f93fcc41
2014-12-15 15:43:22 -05:00
Wes Kocher
aa564b4488 Backed out changeset c6287220baaf (bug 1111224) for Windows build bustage on a CLOSED TREE
--HG--
rename : xpcom/glue/tests/gtest/TestExpirationTracker.cpp => xpcom/tests/TestExpirationTracker.cpp
2014-12-15 14:55:09 -08:00
Ehsan Akhgari
21c5ccfd08 Bug 1111224 - Move TestExpirationTracker.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestExpirationTracker.cpp => xpcom/glue/tests/gtest/TestExpirationTracker.cpp
extra : rebase_source : 6c7ef5eccec61e97aef7e85195c01b11b8ff2f91
2014-12-15 15:43:22 -05:00
Ehsan Akhgari
89279ec607 Bug 1111152 - Move TestEncoding.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestEncoding.cpp => xpcom/glue/tests/gtest/TestEncoding.cpp
extra : rebase_source : 4beccae061390e7b4dd6ba45113daea43865c63d
2014-12-15 15:42:41 -05:00
Ehsan Akhgari
7a8c5fecc7 Bug 1111151 - Move TestCRT.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestCRT.cpp => xpcom/glue/tests/gtest/TestCRT.cpp
extra : rebase_source : 95297289071d49a160cfd79a609ba81d3aaf994c
2014-12-15 15:41:37 -05:00
Ehsan Akhgari
0287e573b6 Bug 1111149 - Move TestArray.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestArray.cpp => xpcom/glue/tests/gtest/TestArray.cpp
extra : rebase_source : 204c2aa966c3df9949efa182e865de404256f386
2014-12-15 15:39:28 -05:00
Ehsan Akhgari
7fb49d9a87 Bug 1110956 - Port TestStrings.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestStrings.cpp => xpcom/glue/tests/gtest/TestStrings.cpp
extra : rebase_source : 07362a75215f15211a6ef9989a555dff5a7b5a23
2014-12-12 19:05:10 -05:00
Ehsan Akhgari
1576e9507a Bug 1101337 - Make the ReplaceSubstring() XPCOM string API linear; r=froydnj
ReplaceSubstring() is an O(n*m) algorithm (n being the length of the
string and m being the number of occurrences of aTarget) because we have
to move the remainder of the string, search it again and potentially
memmove most of it again as we find more matches.  This patch rewrites
that function to make it O(n+m).

Note that we currently don't build TestStrings.cpp, so the test case in
this patch is not run automatically, but the test case has been verified
to pass separately by moving the test function into Gecko and calling it
during startup and stepping through it in the debugger.

--HG--
extra : rebase_source : b020e17c1973330b0dbbd6bf956c073cfdcb775e
2014-12-12 18:57:09 -05:00
Wes Kocher
8d1fd679eb Backed out changeset 95377313608b (bug 1101337) for linux debug build bustage 2014-12-12 16:34:43 -08:00
Wes Kocher
fee70237b1 Backed out changeset d468b88bdb23 (bug 1110956)
--HG--
rename : xpcom/glue/tests/gtest/TestStrings.cpp => xpcom/tests/TestStrings.cpp
2014-12-12 16:34:21 -08:00
Ehsan Akhgari
31dec06c70 Bug 1110956 - Port TestStrings.cpp to gtest and enable it; r=froydnj
--HG--
rename : xpcom/tests/TestStrings.cpp => xpcom/glue/tests/gtest/TestStrings.cpp
2014-12-12 19:05:10 -05:00
Ehsan Akhgari
4e1fe285c4 Bug 1101337 - Make the ReplaceSubstring() XPCOM string API linear; r=froydnj
ReplaceSubstring() is an O(n*m) algorithm (n being the length of the
string and m being the number of occurrences of aTarget) because we have
to move the remainder of the string, search it again and potentially
memmove most of it again as we find more matches.  This patch rewrites
that function to make it O(n+m).

Note that we currently don't build TestStrings.cpp, so the test case in
this patch is not run automatically, but the test case has been verified
to pass separately by moving the test function into Gecko and calling it
during startup and stepping through it in the debugger.
2014-12-12 18:57:09 -05:00
Ben Kelly
4bb128c79d Bug 1098004 Implement snappy compression framing protocol as nsI(Input|Output)Streams. r=froydnj 2014-12-12 14:12:27 -05:00
Ehsan Akhgari
8e62eb9e34 Backed out 2 changesets (bug 1101337) because of ASAN bustage landed on a CLOSED TREE
Backed out changeset ffef93ec94aa (bug 1101337)
Backed out changeset 2954a37bc2df (bug 1101337)
2014-12-12 13:04:44 -05:00
Ehsan Akhgari
95f33c8aea Bug 1101337 - Make the ReplaceSubstring() XPCOM string API linear; r=froydnj
ReplaceSubstring() is an O(n*m) algorithm (n being the length of the
string and m being the number of occurrences of aTarget) because we have
to move the remainder of the string, search it again and potentially
memmove most of it again as we find more matches.  This patch rewrites
that function to make it O(n+m).

Note that we currently don't build TestStrings.cpp, so the test case in
this patch is not run automatically, but the test case has been verified
to pass separately by moving the test function into Gecko and calling it
during startup and stepping through it in the debugger.

--HG--
extra : rebase_source : 0330c130520802392b92bd094dde85f57cfe6420
2014-12-12 11:47:55 -05:00
Wes Kocher
8384912619 Backed out changeset bf25101e66cf (bug 1095098) for build bustage 2014-12-08 16:27:12 -08:00
Denis Volk
29c122c0d3 Bug 1095098: move do_QueryObject templates into their own header r=froydnj 2014-11-20 12:20:10 +01:00
Gregory Szorc
6a02e81e2c Backout 69f755d4f257 (bug 1103825) for test failures
xpcom/tests/unit/test_nsIProcess.js and
xpcom/tests/unit/test_nsIProcess_stress.js were failing with this commit
applied. Backout out.

CLOSED TREE

--HG--
extra : amend_source : 79cda414c263d97e77309da6ec6d58718b91d199
2014-11-25 19:18:08 -08:00
Gregory Szorc
ab6f023011 Bug 1103825 - Use misc tier in xpcom/tests; r=mshal
--HG--
extra : rebase_source : 248423ffcf75acd406510dd350ccf4653a3c34b4
extra : histedit_source : 416af91a62eff97ca53596423d4124bf013293b4
2014-11-23 16:36:58 -08:00
Mike Hommey
6dd000340e Bug 1097507 - Make libxul independent of libdmd when DMD is enabled. r=njn
This also effectively changes how DMD is enabled from requiring both
replace-malloc initialization and the DMD environment variable to
requiring only the former. The DMD environment variable can still be
used to specify options, but not to disable entirely.

This however doesn't touch all the parts that do enable DMD by setting
the DMD environment variable to 1, so the code to handle this value
is kept.
2014-11-18 19:21:06 +09:00
Aaron Klotz
f1ae1d08c7 Bug 1090389: Ensure that IOInterposer normalizes to long file names on Windows; r=froydnj 2014-11-12 14:01:45 -07:00
Mike Hommey
21ec48314e Bug 1077148 part 4 - Add and use new moz.build templates for Gecko programs and libraries. r=gps
There are, sadly, many combinations of linkage in use throughout the tree.
The main differentiator, though, is between program/libraries related to
Gecko or not. Kind of. Some need mozglue, some don't. Some need dependent
linkage, some standalone.

Anyways, these new templates remove the need to manually define the
right dependencies against xpcomglue, nspr, mozalloc and mozglue
in most cases.

Places that build programs and were resetting MOZ_GLUE_PROGRAM_LDFLAGS
or that build libraries and were resetting MOZ_GLUE_LDFLAGS can now
just not use those Gecko-specific templates.
2014-10-30 13:06:12 +09:00
Benjamin Bouvier
86ea81a4db Bug 997973: Call typed array and arraybuffer constructors with new in the tree; r=bz 2014-10-24 11:26:20 +02:00
Brian Marshall
a1edbc5656 Bug 1079311 - Unlock mutex before logging error in RegisterContractIDLocked. r=bsmedberg 2014-10-08 16:08:28 -07:00
Tom Schuster
2c3047badc Bug 1069694 - Remove OldDebugAPI from the browser. r=shu 2014-10-12 19:37:41 +02:00
Stephen Pohl
af02c5db64 Bug 1077282: Cleanup uses of GreD vs GreBinD, introcuded by v2 signature changes on OSX. Based on initial patch by rstrong. r=bsmedberg 2014-10-10 15:06:57 -04:00
Andrew Halberstadt
6fe6152e95 Bug 1066735 - Remove root b2g and android specific xpcshell manifests, r=chmanchester 2014-10-07 18:18:28 -04:00
Bill McCloskey
39e8f2b3da Bug 930243 - Disable process type tests on Android on A CLOSED TREE 2014-10-07 13:35:34 -07:00
Bill McCloskey
c8f8625356 Bug 930243 - Add a processType flag to chrome manifest directives (r=froydnj) 2014-10-07 11:46:24 -07:00
Stephen Pohl
d16e3504d5 Mac v2 signing - Bug 1060562 - Update xpcshell-tests for the new v2 bundle structure on OSX. r=jmaher 2014-09-29 11:51:29 -07:00
Benjamin Smedberg
3ef8a2c338 Bug 1069518 - XPTCall should refuse to implement interfaces with [notxpcom] methods, r=froydnj/bholley 2014-09-22 15:10:31 -04:00
Christoph Kerschbaumer
6e585e66db Bug 1038756: Callsites creating a channel in /xpcom/ (r=bsmedberg) 2014-09-21 09:43:58 -07:00
Kyle Huey
629ac06a2c Bug 982212: Part 2 - Implement r-value reference support for nsTArray::AppendElement. r=nfroyd
--HG--
extra : rebase_source : a9235411266a5dad466746d6344c3fd0e8fafca1
2014-03-15 18:56:00 +01:00