Serge Gautherie
965cd4527e
Bug 712552. (Av1) Remove MSVC6 support from trace-malloc. r=dbaron.
...
DONTBUILD (comment-only).
2012-03-23 02:58:24 +01:00
Justin Lebar
69fb6f1047
Bug 731789 - Rename mfbt/StdInt.h to mfbt/StandardInteger.h, so stdint types work from cpp files inside mfbt. r=waldo
2012-02-29 22:56:43 -05:00
Ehsan Akhgari
a6373ebfc3
Bug 713278 - Teach NS_StackWalk to walk the stack of other threads too on Windows; r=dbaron
2011-12-23 18:14:09 -05:00
Jeff Walden
d606eeadd6
Bug 711799 - Fix a few implicit-declaration warnings in trace-malloc. r=dbaron
...
--HG--
extra : rebase_source : 16fe9eb68d2db1488d89af4001e7d316cb110330
2011-12-17 22:56:55 -05:00
Matt Brubeck
347ae519fe
Back out bcf9ce858829 and a3bade82ac92 (bug 711799) for build failures
2011-12-19 10:43:08 -08:00
Jeff Walden
bdbd9b00ac
Bug 711799 - Fix a few implicit-declaration warnings in trace-malloc. r=dbaron
...
--HG--
extra : rebase_source : 67dc7295b8a2022e02f892f7eac74414e61b1c86
2011-12-17 22:56:55 -05:00
Jeff Walden
16db021217
Bug 711799 - Fix a bunch of unused-variable warnings. r=dholbert
...
--HG--
extra : rebase_source : 91fc77dca316018652d4d99f6d4cc8d0f7195e6e
2011-12-18 01:00:42 -05:00
Jeff Walden
735580ff0e
Bug 708735 - Use <stdint.h> types in JSAPI and throughout SpiderMonkey. Continue to provide the {u,}int{8,16,32,64} and JS{Uint,Int}{8,16,32,64} integer types through a single header, however, for a simpler backout strategy -- and also to ease the transition for embedders. r=timeless on switching the jsd API to use the <stdint.h> types, r=luke, r=dmandelin
2011-12-08 22:54:10 -05:00
Rafael Ávila de Espíndola
001dce7e90
Bug 696376 - Change how we find critical ranges so that it works on 10.6 too. r=dbaron.
...
Currently we use dlsym on pthread_cond_wait$UNIX2003 to find a
function that indicates that new_sem_from_pool is on the stack. This
works on 10.5, but on 10.6 I could not find a single reliable
indicator that would work with dlsym.
The good news is that dladdr works with any symbol, not just exported
ones. To find the address of new_sem_from_pool, we set up a malloc logger
and force a call to new_sem_from_pool. From the logger callback we walk
the stack trying dladdr on every address.
To force a call to new_sem_from_pool, the initialization code has to be the
first to use semaphores, so it is now run from NS_LogInit.
This works on 10.6 and 10.5 (but we have to look for
"pthread_cond_wait$UNIX2003"). In 10.7 the call to malloc is gone, so we don't
have to worry about critical addresses on it anymore.
--HG--
extra : rebase_source : bba4ac9e3378c88f7037aa884511e473a57121f6
2011-12-02 19:26:04 -05:00
Chris Lord
b6c8db3dc8
Backout bug 696376
...
This broke building on android due to requiring a newer version of unwind.h.
2011-12-02 18:00:58 +00:00
Rafael Ávila de Espíndola
083918d344
Bug 696376 - Change how we find critical ranges so that it works on 10.6 too. r=dbaron.
...
Currently we use dlsym on pthread_cond_wait$UNIX2003 to find a
function that indicates that new_sem_from_pool is on the stack. This
works on 10.5, but on 10.6 I could not find a single reliable
indicator that would work with dlsym.
The good news is that dladdr works with any symbol, not just exported
ones. To find the address of new_sem_from_pool, we set up a malloc logger
and force a call to new_sem_from_pool. From the logger callback we walk
the stack trying dladdr on every address.
To for a call to new_sem_from_pool, the initialization code has to be the
first to use semaphores, so it is now run from NS_LogInit.
This works on 10.6 and 10.5 (but we have to look for
"pthread_cond_wait$UNIX2003"). In 10.7 the call to malloc is gone, so we don't
have to worry about critical addresses on it anymore.
2011-12-01 18:22:00 -05:00
Rafael Ávila de Espíndola
9972f0d574
Bug 696376 - If stacks_enabled is false, only walk the stack on OS X 32 bits. r=
...
dbaron.
The 64 bit stack walks lack the InCriticalRange functionality and it looks like
the extra walks are causing an orange on leaktest on the bot.
--HG--
extra : rebase_source : 4c0a75892e30a6e522ed981a1ff12df99d2a0464
2011-11-04 09:49:48 -04:00
Rafael Ávila de Espíndola
1a88fa5343
Bug 696281 - disable trace malloc stacks on OS X too. r=dbaron.
...
This patch disables trace malloc stacks on OS X too. To make this work,
we still have to look on the stack to decide if we must set immediate_abort,
but we can avoid other work like decoding the addresses.
2011-10-28 18:43:49 -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
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
Michael Wu
f6e7ea13ac
Bug 675485 - Fix PRBool misuses found in a debug build, r=bz,taras
2011-08-01 18:20:52 -07:00
Mike Hommey
b7ab8c2806
Bug 658995 part 2 - Use static destructors instead of atexit(). r=bsmedberg
2011-06-15 07:32:03 +02:00
Matt Brubeck
e3a9a86a79
Back out 6b23b52e68d6 - e92f98e8a335 (bug 632404, 552864, 658995) because of Tp4 regression.
2011-06-15 09:00:28 -07:00
Mike Hommey
228b060c2b
Bug 658995 part 2 - Use static destructors instead of atexit(). r=bsmedberg
2011-06-15 07:32:03 +02:00
Ed Morley
8aaddd0334
Bug 659621 - Remove EXTRA_DSO_LIBS, EXTRA_DSO_LDOPTS, OS_LIBS from makefiles containing LIBXUL_LIBRARY = 1, now that libxul is always built; r=ted
2011-06-12 03:49:00 -04:00
Matheus Kerschbaum
6eb93f7dd3
Bug 648911 - Remove support for non-libxul builds. r=ted,joedrew
2011-05-23 18:54:47 +02:00
L. David Baron
db741ac71c
Make leaksoup not print static ctor/dtor warnings.
2011-04-22 18:36:23 -07:00
Jan Küchler
c510bc3046
Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
...
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Mike Hommey
2e34091c98
Bug 602245 - Don't build SIMPLE_PROGRAMS during MOZ_PROFILE_GENERATE pass. r=ted
2011-04-14 11:23:13 +02:00
Chris Jones ext:(%20and%20Kyle%20Huey%20%3Ckhuey%40kylehuey.com%3E)
2c92e3ecd5
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
699024f868
Backed out changeset 4beec31b9ea9 for increasing frequency of intermittent orange bug 618052
2011-03-31 18:57:38 -05:00
Chris Jones ext:(%20and%20Kyle%20Huey%20%3Ckhuey%40kylehuey.com%3E)
0ce53bb598
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
L. David Baron
66ddae3bca
Initialize the out param from backtrace(). (Bug 549561) r=bsmedberg a2.0=tests
2010-09-21 19:32:48 -07:00
Phil Ringnalda
33464076d6
Bug 591727 - Remove remnant makefile.win in trace-malloc, r=dbaron, a=NPOTB
...
--HG--
extra : rebase_source : 1643431d84ab0e255315b261a1f0bcd86dbfaa42
2010-08-29 18:21:12 -07:00
L. David Baron
0104f063dc
Add environment variable NS_TRACE_MALLOC_DISABLE_STACKS for disabling the stack-walking part of trace-malloc to improve performance of tinderbox test machines. (Bug 549561) r=bsmedberg a2.0=tests
2010-08-19 09:37:59 -04:00
L. David Baron
4af0a6f409
Avoid a lock/unlock pair for each call to |calltree|. (Bug 549561) r=bsmedberg a2.0=tests
2010-08-19 09:37:59 -04:00
Pirkka Kärenlampi
8740898d9f
Bug 586944. Make 'backtrace' static to fix issues with the symbol being overriden by system libraries. r=dbaron,a=bsmedberg
2010-08-19 21:35:08 +12:00
James Cook
af2f5746b5
Bug 574311 - Build failure with trace malloc when using GCC visibility pragma. r=doug.turner
...
--HG--
extra : rebase_source : 37f6f66319327197e01fc7cac8126a672c873935
2010-07-17 09:52:30 +03:00
L. David Baron
29445edb09
Make trace-malloc work again on Linux following mozalloc landing. (Bug 576776) r=cjones
2010-07-16 22:36:34 -07:00
Kyle Huey
efe3af4f0b
Bug 578565: Remove nsIXBLDocumentInfo. r=jst
...
--HG--
extra : rebase_source : 4d36ecc23ea302563a7b7f84846d8d5e23b29647
2010-07-14 18:53:11 -07:00
Ehren Metcalfe
ab19d256ae
Remove dead code in intl. Bug 559489, r=smontagu
2010-07-04 15:42:04 +03:00
Makoto Kato
2f05a6575f
Bug 568467 - trace-malloc support for Windows x64. r=dbaron
2010-06-04 16:53:02 +09:00
Mats Palmgren
318bb339f4
Output the unknown value as a number not a character. b=474800 r=dbaron
2010-04-27 18:15:02 +02:00
Chris Jones
ef614431d7
Bug 560969: Teach trace-malloc about VC10. r=dbaron
2010-04-27 00:43:04 -05:00
L. David Baron
f317634122
Make trace-malloc malloc hooks work with 64-bit Mac OS X by adjusting types. (Bug 558097, maybe)
2010-04-08 17:21:03 -07:00
Chris Jones
a8c5a07cbb
Bug 551254: Allow reviewed+approved STL headers to be included through <foo>. (<algorithm> and <vector> are provisionally in the list because of their use in libpr0n, but need to be reviewed in followup bug 556700 and bug 556701). r=ehsan,ted,zwol
2010-04-02 12:58:11 -05:00
Zack Weinberg
ca65e30e9c
Bug 494117: Mechanically change 'ReParent' to 'Reparent' throughout the tree. r=bzbarsky
2010-04-01 23:07:43 -07:00
Jae-Seong Lee-Russo
082e12c87c
Bug 517553: Remove '=='/'!=' 'PR_FALSE'/'PR_TRUE'
2010-02-07 10:52:43 -05:00
Chris Jones
4cc7c33107
Bug 529134: Initialize tracemalloc in NS_LogInit() to ensure that tracemalloc is always thread safe. r=bsmedberg r=dbaron
2009-12-29 16:45:59 -06:00
Phil Ringnalda
6fce97e58d
Bug 495228 - Remove checks for mac MOZ_WIDGET_TOOLKIT, r=ted
2009-09-18 19:59:53 -07:00
Benjamin Smedberg
ba372f3a4c
Followup to bug 398573 - remove REQUIRES from the tree since it is no longer used... automatically generated patch, rs=ted
2009-08-25 08:59:31 -07:00
Joe Drew
2aa59235f2
Bug 753 - Remove nsIImage, gfxIImageFrame, and their implementations, and expose an equivalent api on imgIContainer. r=roc,josh,bz,longsonr,vlad,karlt,jimm,bsmedberg,mfinkle,peterw,peterv sr=vlad,roc
...
--HG--
rename : gfx/src/shared/gfxImageFrame.cpp => modules/libpr0n/src/imgFrame.cpp
rename : gfx/src/shared/gfxImageFrame.h => modules/libpr0n/src/imgFrame.h
2009-07-20 18:50:15 -07:00
L. David Baron
f210f9be3d
Don't rely on NS_TraceMallocStartupArgs to initialize TLS index. (Bug 442192) r=brendan
2009-03-11 07:51:30 -07:00
Ben Turner
2f25e4d199
Bustage fix for bug 478195.
2009-02-17 21:51:50 -08:00
Robert O'Callahan
2d11f79424
Bug 478195 - '[Mac] Same-thread deadlock with trace-malloc (causing random red on OS X 10.5.2 mozilla-central leak test build)'. r=dbaron.
2009-02-17 21:11:29 -08:00
Daniel Holbert
4301671b45
Bug 473236 - Remove executable bit from files that don't need it. (Only changes file mode -- no code changes.) r=bsmedberg
2009-01-21 22:55:08 -08:00
Fred Jendrzejewski
424883d380
Bug 466622. Replace nsCStringArray with nsTArray<nsCString> for more consistent code and fewer heap allocations. r+sr=roc,r=bsmedberg
...
--HG--
extra : rebase_source : b963bf5de9d9c445b14620479691482512e0faf2
2009-01-22 17:15:34 +13:00
Taras Glek
254745952a
Bug 471087. Kill nsIDKey. r=bsmedberg
...
--HG--
extra : rebase_source : 9d60a541863c545101417cf00a11cb9ceda70a09
2009-01-08 21:43:07 +13:00
Arpad Borsos
c72ef7d248
Bug 456388 - Remove PR_STATIC_CALLBACK and PR_CALLBACK(_DECL) from the tree; r+sr=brendan
2008-10-10 17:04:34 +02:00
Daniel Holbert
5492039225
Bug 458167 - (comments-only changes) Grammar Nazi Vol1: s/it's/its/ for the posessive version of the word, and a few other misc comment-typos, in these directories: accessible browser config profile rdf toolkit tools xpcom xpfe
2008-10-01 23:49:45 -07:00
Ben Turner
fee386e2e0
Bug 435122 - "Use TraceMalloc to get stack traces of potential deadlocks". r=bsmedberg+dbaron.
2008-06-26 10:12:42 -07:00
L. David Baron
ce9b5c3e85
Fix broken --shutdown-leaks argument handling on Windows by copying the argument out of argv rather than holding a pointer to it. b=433708 r=pavlov
2008-05-14 11:57:32 -07:00
dbaron@dbaron.org
d6f835e602
Allow diffbloatdump to read its own input back in (so that we can run fix-*-stack over its output (which is much faster than running it over a whole log) and still diff that output against different output. Not part of the build.
2008-05-05 21:47:23 -07:00
dbaron@dbaron.org
db479f0ae5
Expose trace-malloc stack tracing. b=422847 r=brendan a=NPOTDB
2008-03-14 17:11:37 -07:00
dbaron@dbaron.org
0b4a15ddfa
And actually get the right bug number. b=415426 (which is what the previous checkin was for as well)
2008-02-03 11:59:07 -08:00
dbaron@dbaron.org
d05c9ec0d8
Switch back to evil casts, which are the only solution that works across SDK version. b=415252
2008-02-03 11:51:14 -08:00
dbaron@dbaron.org
775c2226ec
Match new (more-const) signature for PENUMLOADED_MODULES_CALLBACK and PENUMLOADED_MODULES_CALLBACK64. b=415426 Fixing bustage on Windows tinderbox from SDK upgrade.
2008-02-03 11:34:31 -08:00
dbaron@dbaron.org
b49904959e
Fix race saving/restoring malloc hooks by going back to overriding malloc, etc., plus some additional cleanup. b=392009 r+a1.9=brendan
2007-09-28 15:39:59 -07:00
dbaron@dbaron.org
0926363321
Address brendan's review comments on bug 391141. r=brendan a=not part of release builds
2007-09-27 09:27:12 -07:00
dbaron@dbaron.org
70983c436d
Suppress tracing around calls into original allocators, in case they recur back into our hooks. Fixes most of leak *stats* regression from bug 392009. r+a1.9=brendan
2007-09-25 13:33:37 -07:00
brendan@mozilla.org
83b6101d31
Reduce code duplication among platforms, support hooking and unhooking (392009, r=dbaron).
2007-09-24 18:13:17 -07:00
jwalden@mit.edu
4d15a32026
Bug 348748 - Remove cast macros from trace-malloc. r=bsmedberg on the script, a=NPOTDB+no-functionality-change
2007-09-05 15:14:17 -07:00
dbaron@dbaron.org
ce5cbcd62f
Link readers against libxul when trace-malloc is part of libxul (fixing tinderbox bustage).
2007-08-19 18:30:04 -07:00
dbaron@dbaron.org
84c375636f
Revert previous checkin.
2007-08-19 17:59:57 -07:00
dbaron@dbaron.org
5e0e5baefe
Attempt to fix trace-malloc bustage in libxul builds by removing LIBXUL_LIBRARY=1 (fixing tinderbox bustage for newly-enabled test).
2007-08-19 17:50:01 -07:00
dbaron@dbaron.org
d9acf0063d
Force linking with the C++ compiler rather than the C compiler (since we're using SIMPLECPPSRCS rather than CPPSRCS). b=392118 r=bsmedberg a=bzbarsky
2007-08-19 17:00:40 -07:00
dbaron@dbaron.org
051a23c4b6
Port trace-malloc to Mac OS X. b=392118 r+a=brendan
2007-08-14 09:35:46 -07:00
dbaron@dbaron.org
179f4c00df
Don't count frees of things whose allocations weren't counted because they were before we overrode malloc, etc. b=391950 r+a=brendan
2007-08-12 15:20:36 -07:00
dbaron@dbaron.org
b389fc0c0c
Make void signatures match header. b=391766 r+a=brendan
2007-08-10 17:53:28 -07:00
dbaron@dbaron.org
52cad5fe7e
Lock around NS_TraceMallocDumpAllocations. b=391766 r+a=brendan
2007-08-10 17:53:02 -07:00
dbaron@dbaron.org
f7090d52d4
Stop using strncpy unnecessarily. b=391766 r+a=brendan
2007-08-10 17:52:35 -07:00
dbaron@dbaron.org
185d0a35f7
Add suppression code around calls to original allocation functions to handle things like new[] calling new. b=391491 r+a=brendan
2007-08-10 15:22:07 -07:00
dbaron@dbaron.org
e9ba17bce0
Hook new[] and delete[] too, since (with VC8 anyway) we're picking up new[] through new, but not picking up delete[]. b=391491 r+a=brendan
2007-08-10 15:21:37 -07:00
dbaron@dbaron.org
7937605426
Define the __libc_* on Windows to something that does automatic suppression, like on Linux. b=391477 r+a=brendan
2007-08-10 15:21:13 -07:00
dbaron@dbaron.org
593cd91cf8
Convert trace-malloc to using XPCOM stack walking API. b=374829 r+a=brendan
2007-08-10 15:20:48 -07:00
dbaron@dbaron.org
def4dbe999
Start reducing the scope of locking in trace-malloc, and convert the PRMonitor to a PRLock. b=376874 r+a=brendan
2007-08-10 15:19:32 -07:00
dbaron@dbaron.org
40b3eebdbb
Use thread-local storage for tracing suppression. b=376874 r+a=brendan
2007-08-10 15:19:14 -07:00
dbaron@dbaron.org
57b13d7670
Fix bustage on VC8. b=391141 r=brendan a=DEBUG-only
2007-08-10 14:26:03 -07:00
dbaron@dbaron.org
8888cc609f
Improve performance when trace-malloc is built but not used by adding a fast-path around the locking. b=150015 r=brendan a=bzbarsky
2007-08-10 14:24:32 -07:00
dbaron@dbaron.org
77b5aae7bd
Add code to automatically uncompress .gz and .bz2 files that are given as arguments.
2007-06-20 14:59:33 -07:00
dbaron@dbaron.org
98b0c638b4
Replace printf that fires all the time with an assertion for what I really want to check.
2007-04-03 18:35:35 -07:00
dbaron@dbaron.org
c3cd8006d4
The tinderbox problem was due to insufficient STARTUP_TMBUFSIZE, so re-increase the buffer size to 64K (from 16K) and comment out my debugging code.
2007-04-03 18:06:34 -07:00
dbaron@dbaron.org
f21d5e810c
Back out startup buffer size change (but leave diagnostic).
2007-04-03 17:53:26 -07:00
dbaron@dbaron.org
049112bec5
Make previous change print to stderr.
2007-04-03 17:45:07 -07:00
dbaron@dbaron.org
731c109c0d
Try increasing startup buffer size to see if it fixes tinderbox orange.
2007-04-03 17:39:56 -07:00
dbaron@dbaron.org
970f522105
Add some debugging code to tmreader and temporarily turn it on to debug tinderbox orange.
2007-04-03 16:46:45 -07:00
dbaron@dbaron.org
74dbf8be3e
Fix deadlock in trace-malloc by exiting monitor around call to dladdr. b=363334 r=brendan
2007-04-03 15:14:01 -07:00
hg@mozilla.com
05e5d33a57
Free the (distributed) Lizard! Automatic merge from CVS: Module mozilla: tag HG_REPO_INITIAL_IMPORT at 22 Mar 2007 10:30 PDT,
2007-03-22 10:30:00 -07:00
dbaron%dbaron.org
63511c956e
Make trace-malloc malloc-hooking work with compilers newer than VC6. b=374645 r=robstrong
2007-03-21 00:38:58 +00:00
dbaron%dbaron.org
71bedcef11
Document changes from bug 113738.
2007-03-01 01:33:54 +00:00
dbaron%dbaron.org
83fed6e485
Change my old email address to my new one (files missed when I did a mass-change in January 2003).
2007-02-14 07:18:26 +00:00
dbaron%dbaron.org
0c76c7aa5d
Make trace-malloc dumps not print '(nil)' instead of an address. b=331743 (fixing regression from previous patch)
2007-02-14 07:07:51 +00:00
dbaron%dbaron.org
10d5ca630a
Make trace-malloc override additional memory allocation functions. b=331742
2007-02-14 07:06:35 +00:00
timeless%mozdev.org
46d2b15871
Bug 106386 Correct misspellings in source code
...
r=glennrp@gmail.com , bclary@bclary.com rs=brendan
2006-11-01 23:02:18 +00:00
dbaron%dbaron.org
37ae43f7f7
Fix whitespace error introduced by my previous patch.
2006-11-01 07:22:12 +00:00