Commit Graph

132 Commits

Author SHA1 Message Date
Nicholas Nethercote
5a2199ecb7 Bug 847248 (part 10) - Rewrite TimerEventAllocator and remove nsFixedSizeAllocator. r=bz,ehsan; sr=bsmedberg. 2013-03-06 14:29:30 -08:00
Avi Halachmi
b329af6a50 Bug 590422: Remove delay line filter from timer thread. r=bz 2013-02-20 20:21:09 +02:00
Nicholas Nethercote
f85dbade4b Bug 847248 (part 2) - Use a smaller chunk size in TimerEventAllocator. r=bz. 2013-03-03 18:50:06 -08:00
Ehsan Akhgari
b6ecbc6c3f Bug 799142 - Make sure that the allocator for nsTimerEvent objects stays around long enough to deallocate all outstanding objects of that type; r=bsmedberg 2013-03-04 19:04:59 -05:00
Ehsan Akhgari
6236b2417e Backed out 2 changesets (bug 799142) because of memory leaks
Backed out changeset a0cf0252cee4 (bug 799142)
Backed out changeset 7b1bb476bd8d (bug 799142)
2013-03-04 15:48:04 -05:00
Ehsan Akhgari
3364a733db Bug 799142 follow-up: build bustage fix
landed on a CLOSED TREE
2013-03-04 14:41:54 -05:00
Ehsan Akhgari
047fdbe3ef Bug 799142 - Make sure that the allocator for nsTimerEvent objects stays around long enough to deallocate all outstanding objects of that type; r=bsmedberg 2013-03-04 14:24:05 -05:00
Ehsan Akhgari
b14adf3017 Fix the documentation of TimerEventAllocator threading expectations, no bug, DONTBUILD 2013-02-18 21:13:26 -05:00
Chris Peterson
6031ca870d Bug 839962 - Part 2: Replace some XPCOM thread NS_ASSERTIONs with MOZ_ASSERTs. r=bsmedberg 2013-02-07 21:54:20 -08:00
Chris Peterson
d460904654 Bug 839962 - Part 1: Replace some XPCOM refcount NS_ASSERTIONs with MOZ_ASSERTs. r=bsmedberg 2013-02-07 20:50:05 -08:00
Nathan Froyd
cb4c9c2a0d Bug 806618 - rewrite PR_NewLogModule calls to not generate static initializers; r=ehsan 2012-10-29 19:32:10 -04:00
Trevor Saunders
53e4e1f193 bug 798595 - remove useless prmem.h includes r=ehsan 2012-10-04 02:14:06 -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
Aryeh Gregor
8b4a23fc4c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Gervase Markham
cb6a072c2a Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Nicholas Nethercote
a65762850a Bug 747803 - Remove NS_SIZE_IN_HEAP. r=bz. 2012-04-19 14:15:23 +10:00
Ehsan Akhgari
0802df80a3 Bug 733277 - Prevent firing timers from lock contention with the main thread; r=bsmedberg 2012-03-04 18:56:19 -05:00
Jeff Muizelaar
87a35137e7 Bug 707800. Add more sampler labels. r=bgirard 2011-12-02 17:05:33 -05:00
Michael Kraft
97bdc53efc Bug 325418. When a repeating timer at interval X is reinitialized for interval Y, the next firing after that is incorrectly after time X+Y. r=bzbarsky 2011-11-02 23:46:08 -04:00
Ehsan Akhgari
478ad1a412 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
Boris Zbarsky
31d14013bf Bug 650379. Add a new XPCOM timer type that is like TYPE_REPEATING_PRECISE but does not swamp the event queue if the callback takes longer than the timer interval to run. r=cjones, sr=brendan
This implements proposal 3 from bug 650379 comment 13.  The main difference
between TYPE_REPEATING_PRECISE and TYPE_REPEATING_PRECISE_CAN_SKIP is to not
AddTimer the REPEATING_PRECISE_CAN_SKIP timer until after the callback has run;
this guarantees that no more timer events will be posted until after the
callback finishes executing.  A secondary change is to make
REPEATING_PRECISE_CAN_SKIP timers advance their firing time to mDelay from when
PostTimerEvent is called, not mDelay from the old mTimeout.  While this arguably
makes them less precise, the alternative is that if a timer is significantly
delayed for some reason (e.g. because the user puts the computer to sleep for a
while) it will then fire a whole bunch of times to "catch up" to where it's
supposed to be, advancing its firing time by mDelay at a time.  That seems
undesirable.

An alternate approach would have been to readd the timer from inside
PostTimerEvent, but only if we're not in the middle of firing the timer. That
would allow more precise timers in the case when the callback is not taking too
long, but still handle gracefully the case when the callback is
slow. Unfortunately this falls down if something _else_ is hogging the main
thread event loop (e.g. some other timer has a slow callback, or whatever); in
that case we would post multiple events for the one precise timer while the
event-loop-hogging operation is running. So I don't think we should do that.
2011-04-28 19:33:52 -04:00
Chris Jones
9ae6458637 Rollup of bug 645263 and bug 646259: Switch to mozilla:: sync primitives. r=cjones,dbaron,doublec,ehsan src=bsmedberg
Bug 645263, part 0: Count sync primitive ctor/dtors. r=dbaron
Bug 645263, part 1: Migrate content/media to mozilla:: sync primitives. r=doublec
Bug 645263, part 2: Migrate modules/plugin to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 3: Migrate nsComponentManagerImpl to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 4: Migrate everything else to mozilla:: sync primitives. r=dbaron
Bug 645263, part 5: Remove nsAutoLock.*. sr=bsmedberg
Bug 645263, part 6: Make editor test be nicer to deadlock detector. r=ehsan
Bug 645263, part 7: Disable tracemalloc backtraces for xpcshell tests. r=dbaron
Bug 646259: Fix nsCacheService to use a CondVar for notifying. r=cjones
2011-03-31 23:29:02 -05:00
Chris Jones
ecb9597975 Backed out changeset 4beec31b9ea9 for increasing frequency of intermittent orange bug 618052 2011-03-31 18:57:38 -05:00
Chris Jones
5dece3352a Rollup of bug 645263 and bug 646259: Switch to mozilla:: sync primitives. r=cjones,dbaron,doublec,ehsan src=bsmedberg
Bug 645263, part 0: Count sync primitive ctor/dtors. r=dbaron
Bug 645263, part 1: Migrate content/media to mozilla:: sync primitives. r=doublec
Bug 645263, part 2: Migrate modules/plugin to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 3: Migrate nsComponentManagerImpl to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 4: Migrate everything else to mozilla:: sync primitives. r=dbaron
Bug 645263, part 5: Remove nsAutoLock.*. sr=bsmedberg
Bug 645263, part 6: Make editor test be nicer to deadlock detector. r=ehsan
Bug 645263, part 7: Disable tracemalloc backtraces for xpcshell tests. r=dbaron
Bug 646259: Fix nsCacheService to use a CondVar for notifying. r=cjones
2011-03-31 14:51:19 -05:00
Justin Lebar
02a6d6af4a Bug 592557 - Eliminate uses of PR_Atomic{Increment,Decrement} functions in favor of PR_ATOMIC_{INCREMENT,DECREMENT} macros. r=bsmedberg,gal 2011-03-28 15:58:49 -04:00
Jacek Caban
cd231db6a7 Bug 581036 - nsTimerImpl.cpp compilation fails on mingw.; r=bzbarsky approval2.0=benjamin 2010-07-22 12:00:26 -04:00
Boris Zbarsky
3f32da10bf Bug 558306 part 2. Switch XPCOM timers to TimeDuration/TimeStamp. r=cjones, sr=brendan 2010-07-15 09:59:24 -04:00
Boris Zbarsky
8ca24ae80c Backing out rev b567a93a5086 (bug 558306) to fix test orange 2010-07-15 13:49:28 -04:00
Boris Zbarsky
5b232ce7e6 Bug 558306 part 2. Switch XPCOM timers to TimeDuration/TimeStamp. r=cjones, sr=brendan 2010-07-15 09:59:24 -04:00
Saint Wesonga
a4601a3177 Bug 562387 - Convert NS_NEWXPCOM/NS_DELETEXPCOM to new/delete. r=bsmedberg 2010-07-05 11:42:18 +02:00
Dão Gottwald
7728f9828b Backed out changeset 59ace8d80ce8 2010-07-04 22:01:13 +02:00
Saint Wesonga
4f0a4ebc1e Bug 562387 - Convert NS_NEWXPCOM/NS_DELETEXPCOM to new/delete. r=bsmedberg 2010-07-04 21:39:17 +02:00
Arpad Borsos
e2e3c4e27a Bug 474369 - get rid of nsVoidArray, xpcom part; r=bsmedberg 2009-04-03 18:43:08 +02:00
Nickolay_Ponomarev
9b13efd376 Bug 472258 - Reinitializing one-shot timers by resetting delay (->SetDelay) doesn't work anymore - fix callers; r+sr=bzbarsky 2009-02-03 15:42:21 +01:00
Ben Turner
570065a2ab Bug 445828 - "Trying to re-init a TYPE_REPEATING_SLACK timer causes it to be added to timer thread twice". r=brendan. 2008-08-08 12:15:05 -07:00
Ben Turner
1414a6b962 Bug 443877 - "Need a way to point timers at a different event target". r=bsmedberg. 2008-07-24 10:20:33 -07:00
4f9f91afc2 Bug 420521 - Leaking nsThread and nsTimerImpl running full set of Mochitests. This fixes the last refcounted leak on OS X Mochitests! Zounds! r=brendan, sr=dbaron, a=blocker 2008-03-10 14:05:46 -07:00
0967f01544 Bug 407201. Not dropping references for one shot timers on Fire. r/sr=bzbarsky 2008-01-22 21:20:14 -08:00
d76872dfb4 Bug 401137. Silence ASSERTION: RefreshURIList timer callbacks should only be RefreshTimer objects. Docshell expects to be able to getCallback during a Timer fire. r=bzbarsky, sr=brendan, a=mconnor 2007-10-30 08:56:59 -07:00
e0d40a35dc Bug 330128. Calling cancel() on a timer doesn't drop ref to the callback. r=brendan, sr=bzbarsky, a=beltzner 2007-10-24 12:11:41 -07:00
01e3e26de0 Bug 383553 - Crash on quit in nsTimerImpl::Release, r=dbaron sr=brendan 2007-08-09 11:37:02 -07:00
98de634631 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
darin@meer.net
61aed8094e fixes bug 333167 "remove idle timer / timer manager after bug 326273 is fixed" r=pavlov 2006-06-29 00:01:58 +00:00
darin@meer.net
0700b87ece landing patch for bug 326273 "Implement nsIThreadManager" (Mac portions by Mark Mentovai) with reviews from bienvenu, bsmedberg, bzbarsky, josh, roc, and ssieb 2006-05-10 17:30:15 +00:00
benjamin@smedbergs.us
9ec106678d Bug 331012 - topcrash on exit [@timerthread::updatefilter] - r=darin 2006-03-21 14:46:35 +00:00
dbaron@dbaron.org
b55c028d13 Make PL_InitEvent callers stop doing potentially dangerous casting of function pointers. b=305278 r=dougt sr=darin 2005-11-14 20:09:51 +00:00
bzbarsky@mit.edu
5eb26a0fa0 Make timers a little safer to use from JS. Bug 304669, patch by Giorgio Maone
<g.maone@informaction.com>, r=dougt, sr=dbaron
2005-11-02 00:46:37 +00:00
bryner@brianryner.com
9d9b2e7a47 Add support for caching content viewers in session history to speed up back/forward (bug 274784). This initial landing has the feature disabled by default; set browser.sessionhistory.max_viewers to the maximum number of pages to cache to enable the feature. r=bzbarsky, sr/a=brendan. 2005-05-04 20:22:32 +00:00
bsmedberg@covad.net
fa0bafa496 Allow XPCOM to be restarted. r+sr=darin with grudging consent from dougt. Bug 239819 2004-05-11 09:38:50 +00:00
gerv@gerv.net
c0cd46fc51 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:21:17 +00:00