0
Commit Graph

58 Commits

Author SHA1 Message Date
Etienne Pierre-doray
4898bbcd46 Reland "[tracing] Cleanup up trace_log"
This is a reland of commit 235af46635
Reason for revert:
LUCI Bisection has identified this change as the cause of a test failure. See the analysis: https://ci.chromium.org/ui/p/chromium/bisection/test-analysis/b/5650878292819968

Fix: initialize TraceEventHandle to 0 to avoid
MemorySanitizer: use-of-uninitialized-value error

Original change's description:
> [tracing] Cleanup up trace_log
>
> This CL cleans up some of the unused functionalities in trace_log
> - legacy metadata
> - member AddTraceEvent* function: replaced by static ones
> - SetTrackDescriptor: covered by TrackNameRecorder
>     We no longer update SetTrackDescriptor on UpdateProcessLabel;
>     this is unnecessary because TrackNameRecorder calls
>     SetTrackDescriptor when the session ends.
>
> Bug: 343404899
> Change-Id: Ia3c4524cd3b3dd4d4ad12a0348e60480b5d03f67
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6120057
> Reviewed-by: Derek Schuff <dschuff@chromium.org>
> Reviewed-by: Gabriel Charette <gab@chromium.org>
> Reviewed-by: Alexander Timin <altimin@chromium.org>
> Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org>
> Reviewed-by: Mikhail Khokhlov <khokhlov@google.com>
> Cr-Commit-Position: refs/heads/main@{#1403710}

Bug: 343404899
Change-Id: Icb14722297b39f3b8fc7be0985452182a7b5846f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6163823
Reviewed-by: Alexander Timin <altimin@chromium.org>
Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org>
Reviewed-by: Mikhail Khokhlov <khokhlov@google.com>
Reviewed-by: Derek Schuff <dschuff@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1404225}
2025-01-09 08:51:48 -08:00
luci-bisection@appspot.gserviceaccount.com
88740bf833 Revert "[tracing] Cleanup up trace_log"
This reverts commit 235af46635.

Reason for revert:
LUCI Bisection has identified this change as the cause of a test failure. See the analysis: https://ci.chromium.org/ui/p/chromium/bisection/test-analysis/b/5650878292819968

Sample build with failed test: https://ci.chromium.org/b/8726281365613516081
Affected test(s):
[ninja://components/viz:viz_unittests/YUVReadbackTest.YUVReadbackOptTest](https://ci.chromium.org/ui/test/chromium/ninja:%2F%2Fcomponents%2Fviz:viz_unittests%2FYUVReadbackTest.YUVReadbackOptTest?q=VHash%3Ac51c420b0ffd64f9)
[ninja://content/test:content_browsertests/EmergencyStopTracingTest.StopOnThreadPool/All.0](https://ci.chromium.org/ui/test/chromium/ninja:%2F%2Fcontent%2Ftest:content_browsertests%2FEmergencyStopTracingTest.StopOnThreadPool%2FAll.0?q=VHash%3Abba65c387ca28365)
[ninja://content/test:content_browsertests/EmergencyStopTracingTest.StopOnThreadPoolTwice/All.0](https://ci.chromium.org/ui/test/chromium/ninja:%2F%2Fcontent%2Ftest:content_browsertests%2FEmergencyStopTracingTest.StopOnThreadPoolTwice%2FAll.0?q=VHash%3Abba65c387ca28365)
[ninja://content/test:content_browsertests/StartupTracingTest.TestEnableTracing/All.0](https://ci.chromium.org/ui/test/chromium/ninja:%2F%2Fcontent%2Ftest:content_browsertests%2FStartupTracingTest.TestEnableTracing%2FAll.0?q=VHash%3Abba65c387ca28365)
[ninja://content/test:content_browsertests/StartupTracingTest.TestEnableTracing/All.1](https://ci.chromium.org/ui/test/chromium/ninja:%2F%2Fcontent%2Ftest:content_browsertests%2FStartupTracingTest.TestEnableTracing%2FAll.1?q=VHash%3Abba65c387ca28365)
and 5 more ...

If this is a false positive, please report it at http://b.corp.google.com/createIssue?component=1199205&description=Analysis%3A+https%3A%2F%2Fci.chromium.org%2Fui%2Fp%2Fchromium%2Fbisection%2Ftest-analysis%2Fb%2F5650878292819968&format=PLAIN&priority=P3&title=Wrongly+blamed+https%3A%2F%2Fchromium-review.googlesource.com%2Fc%2Fchromium%2Fsrc%2F%2B%2F6120057&type=BUG

Original change's description:
> [tracing] Cleanup up trace_log
>
> This CL cleans up some of the unused functionalities in trace_log
> - legacy metadata
> - member AddTraceEvent* function: replaced by static ones
> - SetTrackDescriptor: covered by TrackNameRecorder
>     We no longer update SetTrackDescriptor on UpdateProcessLabel;
>     this is unnecessary because TrackNameRecorder calls
>     SetTrackDescriptor when the session ends.
>
> Bug: 343404899
> Change-Id: Ia3c4524cd3b3dd4d4ad12a0348e60480b5d03f67
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6120057
> Reviewed-by: Derek Schuff <dschuff@chromium.org>
> Reviewed-by: Gabriel Charette <gab@chromium.org>
> Reviewed-by: Alexander Timin <altimin@chromium.org>
> Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org>
> Reviewed-by: Mikhail Khokhlov <khokhlov@google.com>
> Cr-Commit-Position: refs/heads/main@{#1403710}
>

Bug: 343404899
Change-Id: I31fb4bd8e2e195e2f58f7805ee4ddb4aafcada27
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6160654
Reviewed-by: Rebekah Potter <rbpotter@chromium.org>
Commit-Queue: Rebekah Potter <rbpotter@chromium.org>
Owners-Override: Rebekah Potter <rbpotter@google.com>
Cr-Commit-Position: refs/heads/main@{#1403913}
2025-01-08 16:13:53 -08:00
Etienne Pierre-doray
235af46635 [tracing] Cleanup up trace_log
This CL cleans up some of the unused functionalities in trace_log
- legacy metadata
- member AddTraceEvent* function: replaced by static ones
- SetTrackDescriptor: covered by TrackNameRecorder
    We no longer update SetTrackDescriptor on UpdateProcessLabel;
    this is unnecessary because TrackNameRecorder calls
    SetTrackDescriptor when the session ends.

Bug: 343404899
Change-Id: Ia3c4524cd3b3dd4d4ad12a0348e60480b5d03f67
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6120057
Reviewed-by: Derek Schuff <dschuff@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org>
Reviewed-by: Mikhail Khokhlov <khokhlov@google.com>
Cr-Commit-Position: refs/heads/main@{#1403710}
2025-01-08 11:08:46 -08:00
Bruce Dawson
daec06d862 Record shutdown-hang related times
When investigating shutdown hangs it can be important to know key times
like when shutdown started, when a particular task was started, and when
a shutdown hang was detected. Previously this information was difficult
to obtain but this change puts these three times in local variables in
the appropriate threads, using base::debug::Alias() to lock them there.

This allows determining, for instance, how long the shutdown-hang
timeout was, and whether a task was started before or after shutdown was
initiated.

Bug: 1431378
Change-Id: Ic5a79c5e004e1b6fc11d37b1d6f409b6affac069
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4424837
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Code-Coverage: Findit <findit-for-me@appspot.gserviceaccount.com>
Reviewed-by: Olivier Li <olivierli@chromium.org>
Reviewed-by: Francois Pierre Doray <fdoray@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Steven Holte <holte@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1133121}
2023-04-20 15:02:59 +00:00
Aman Verma
0bf8c11f55 Move set_process_name from TraceLog to CurrentProcess
Allow the code to use CurrentProcess in base to set process_name(eg.
Browser, Renderer etc.) and process_type to allow splitting
tasks/IPCs per process instead of TraceLog.

Bug: b/242853904
Change-Id: I04e8609baede826f91ab261dd486d53ed22051be
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3997531
Commit-Queue: Aman Verma <amanvr@google.com>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1071557}
2022-11-15 13:01:24 +00:00
Avi Drissman
4e1b7bc33d Update copyright headers in content/
The methodology used to generate this CL is documented in
https://crbug.com/1098010#c34.

No-Try: true
No-Presubmit: true
Bug: 1098010
Change-Id: I8c0f009d16350271f07d8e5e561085822cc9dd27
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3895935
Owners-Override: Avi Drissman <avi@chromium.org>
Reviewed-by: Mark Mentovai <mark@chromium.org>
Commit-Queue: Mark Mentovai <mark@chromium.org>
Auto-Submit: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1047456}
2022-09-15 14:03:50 +00:00
Etienne Bergeron
666d5a233e Fix renderer/browser trace events scoped id.
This CL is fixing passing to TRACE_ID_WITH_SCOPE a TRACE_ID_LOCAL.
As described on crbug/1269403, we currently emit all the RendererMain
trace event into the browser process, as the same context.

The macro TRACE_ID_WITH_SCOPE is taking an ID which can be of three
kind:
  1) Raw (raw integer) : You know what you are doing.
  2) LocalId : Use this for ids that are unique within a single process.
  3) GlobalId : Use this for ids that are unique across processes.

The proposal is to create these events with a the local scope.

R=eseckler,gab

Bug: 1269403
Change-Id: Ie2d16711163e4fff316da037e2323658643eb142
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3276036
Reviewed-by: Gabriel Charette <gab@chromium.org>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Reviewed-by: Eric Seckler <eseckler@chromium.org>
Commit-Queue: Etienne Bergeron <etienneb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#943535}
2021-11-19 16:08:46 +00:00
Gabriel Charette
fbeeb1c228 [content] Make ContentMainParams and MainFunctionParams move-only
This is taking care of a long-standing TODO to move these OnceClosure
holders rather than copy them around with their OnceClosure* members.

This is a precursor to
https://chromium-review.googlesource.com/c/chromium/src/+/3187153/35#message-fcc92e9f85e73f0e5ba6c03610a95cda8736f1f9
which highlighted a problem where some tests see a non-null
MainFunctionParams::ui_task but running the closure results in a UAF.
Logs show that the test hitting the UAF is not the one setting this
field. This CL makes that impossible and fixes the issue in the
follow-up CL.

This CL is intended to be a logical no-op.
This CL touches a lot of files and must happen all at once.

The core change is that ContentMainParams and MainFunctionParams's
moveable fields (ui_task, created_main_parts_closure, and startup_data)
are now held by moveable types rather than raw pointers.

This trickles in the following chain:
main() (in various *_main.cc)
(or SetUp() in !OS_ANDROID browser_test_base.cc)
  -> ContentMain()
    -> ContentMainRunnerImpl::Initialize()
      (forwards arg into MainFunctionParams)
      -> RunBrowser()
        -> BrowserMain()
          -> BrowserMainRunnerImpl::Initialize()
            -> BrowserMainLoop (stores MainFunctionParams)
            -> BrowserMainLoop::Init
              -> ContentBrowserClient::CreateBrowserMainParts()
                -> (Embedder)ContentBrowserClient::CreateBrowserMainParts()
                  -> (Embedder)BrowserMainParts(Platform)
                    -> (Embedder)BrowserMainParts
      -> RunOtherNamedProcessTypeMain()
        -> (Embedder)ContentMainDelegate::RunProcess()
        (or)
        -> FooMain() (kMainFunctions)
        (or)
        -> RunZygote()
          (creates its own MainFunctionParams)
          -> (Embedder)ContentMainDelegate::RunProcess()
(on OS_ANDROID, browser_test_base.cc calls directly into
 ContentMainDelegate::RunProcess())

Few of these needed the params after passing them down so a move-only
model was simple to adapt (even if invasive). The few exceptions like
BrowserMainRunnerImpl::Initialize consuming |created_main_parts_closure|
are better off in the new model (where they take the OnceClosure before
passing down the params) because that prevents others down the chain
from having access to a OnceClosure they shouldn't invoke anyways.

Noteworthy:
 - ContentMainDelegate::RunProcess():
   Returned an exit_code >= 0 to indicate the embedder elected to handle
   the run request given these params. With move-only semantics it is
   necessary to return the params back when the embedder declines
   handling this run request. An absl::variant return value is used
   to satisfy this requirement.

- content/public/test/test_launcher.h : GetContentMainParams():
  Becomes CopyContentMainParams() and only exposes a copy of copyable
  params. Uses new ContentMainParams::ShallowCopyForTesting() which
  verifies that moveable fields are still null by that time as should be
  the case in the order browser tests are initialized.

- MainFunctionParams::command_line being const& violated the style-guide
  rule to "avoid defining functions that require a const reference
  parameter to outlive the call". This also prevented moving. The type
  was hence switched to a const CommandLine*.

- BUILD.gn changes for nacl_helper_win_64 which requires static linking
  of its minimal //content deps (was previously missing a dep but was
  getting away with it because MainFunctionParams was .h only; required
  now with .cc). This was already done for static_switches and this CL
  adds static_main_function_params, reusing a similar static_features
  target that already existed but was no longer required in
  /c/nacl/broker, cleaning that up by replacing rather than copying that
  target's definition in this CL.

- ContentMainParams::minimal_browser_mode was weirdly passed as a
  parameter to ContentMainRunner::Run(bool start_minimal_browser) but
  that method also has access to the ContentMainParams originally passed
  via ContentMainRunner::Init(). Passing the param again from Run()
  would be a use-after-move in content_main.cc, instead
  content_main_runner_impl.cc was updated to use the param it already
  has in store.

Bug: 1175074
Change-Id: I3af90505525e426383c59107a3903d645d455682
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3244976
Commit-Queue: Gabriel Charette <gab@chromium.org>
Auto-Submit: Gabriel Charette <gab@chromium.org>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Reviewed-by: Brad Nelson <bradnelson@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: Clark DuVall <cduvall@chromium.org>
Owners-Override: Alexander Timin <altimin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#940478}
2021-11-10 20:50:06 +00:00
Peter Kasting
5872719eb2 Replace some TRACE_EVENT_ASYNCs with TRACE_EVENT_NESTABLE_ASYNCs.
Bug: 1038710
Change-Id: Ib47f1bf9feba44c6e6ae3e7898fcbc152d0002d0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3033563
Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org>
Reviewed-by: Sean Topping <seantopping@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Eric Seckler <eseckler@chromium.org>
Commit-Queue: Peter Kasting <pkasting@chromium.org>
Auto-Submit: Peter Kasting <pkasting@chromium.org>
Cr-Commit-Position: refs/heads/master@{#903044}
2021-07-19 17:01:46 +00:00
Xi Han
4090dccedd Plumb pre-created service manager thread when creating BrowserMainLoop.
The service manager thread and (TODO) ServiceManager might be created
before the full browser starts, and we want to reuse them when starting
the full browser. Therefore, we add a pointer of BrowserStartupData in
MainFunctionParams.

Particularly, in this CL, ContentMainRunnerImpl creates and owns a
BrowserStartupData object. It passes a pointer of the BrowserStartupData
through the main function parameter to BrowserMainLoop.

The BrowserStartupData interface was introduced in:
https://crrev.com/c/1117471.

Bug: 846846, 853308
Change-Id: Ie11063227a670cd8d72935131e854ee2b5c46e4e
Reviewed-on: https://chromium-review.googlesource.com/1108178
Commit-Queue: Xi Han <hanxi@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Cr-Commit-Position: refs/heads/master@{#574054}
2018-07-11 03:15:20 +00:00
Xi Han
6740d6248c Reland "Create BrowserThread::IO thread before browser main loop to start"
This is a reland of I23ef57eb52bfb1eb363682dadf98c571c12afcd1.

It was reverted in Ia548067acbf640010f4c8fbed29a0012a274af05. Reason for revert:
Findit (https://goo.gl/kROfz5) identified this CL at revision 557680 as the culprit
for introducing flakiness in the tests as shown on:
https://findit-for-me.appspot.com/waterfall/flake/flake-culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyQwsSDEZsYWtlQ3VscHJpdCIxY2hyb21pdW0vZmM5NTUwMWZiMjllM2U3NDg3ZmZmOThjMTdlNmFhYmExMDQ2YjMzMAw

The data race has been fixed in:
https://chromium-review.googlesource.com/c/chromium/src/+/1064450.

Original change's description:
> Create BrowserThread::IO thread before browser main loop to start
> ServiceManager.
>
> We need a thread to post/execute tasks when starting the
> ServiceManager. This thread needs to be created before the browser
> main loop is initialized, and will be registered as the
> BrowserThread::IO thread which is currently used by ServiceManager
> connections.
>
> The creation of such a thread is moved to service_manager::main via
> MainDelegate::CreateIOThreadAndGetTaskRunner(). Since it requires no
> thread created before calling fork() on posix, we also move the setup
> of sandbox before creating the IO thread.
>
> Bug: 740677, 729596
> Change-Id: I23ef57eb52bfb1eb363682dadf98c571c12afcd1
> Reviewed-on: https://chromium-review.googlesource.com/969098
> Commit-Queue: Xi Han <hanxi@chromium.org>
> Reviewed-by: John Abd-El-Malek <jam@chromium.org>
> Reviewed-by: Gabriel Charette <gab@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#557680}


Bug: 740677, 729596
Change-Id: I9afb0cdc0f11a1d437c2e9bd09c374503c3d5a4b
Reviewed-on: https://chromium-review.googlesource.com/1059949
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Commit-Queue: Xi Han <hanxi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560724}
2018-05-22 19:21:07 +00:00
Chris Pickel
5d76e33d69 Revert "Create BrowserThread::IO thread before browser main loop to start"
This reverts commit fc95501fb2.

Reason for revert:
Findit (https://goo.gl/kROfz5) identified this CL at revision 557680 as the culprit
for introducing flakiness in the tests as shown on:
https://findit-for-me.appspot.com/waterfall/flake/flake-culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyQwsSDEZsYWtlQ3VscHJpdCIxY2hyb21pdW0vZmM5NTUwMWZiMjllM2U3NDg3ZmZmOThjMTdlNmFhYmExMDQ2YjMzMAw

Original change's description:
> Create BrowserThread::IO thread before browser main loop to start
> ServiceManager.
> 
> We need a thread to post/execute tasks when starting the
> ServiceManager. This thread needs to be created before the browser
> main loop is initialized, and will be registered as the
> BrowserThread::IO thread which is currently used by ServiceManager
> connections.
> 
> The creation of such a thread is moved to service_manager::main via
> MainDelegate::CreateIOThreadAndGetTaskRunner(). Since it requires no
> thread created before calling fork() on posix, we also move the setup
> of sandbox before creating the IO thread.
> 
> Bug: 740677, 729596
> Change-Id: I23ef57eb52bfb1eb363682dadf98c571c12afcd1
> Reviewed-on: https://chromium-review.googlesource.com/969098
> Commit-Queue: Xi Han <hanxi@chromium.org>
> Reviewed-by: John Abd-El-Malek <jam@chromium.org>
> Reviewed-by: Gabriel Charette <gab@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#557680}

TBR=gab@chromium.org,jam@chromium.org,hanxi@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 740677, 729596
Change-Id: Ia548067acbf640010f4c8fbed29a0012a274af05
Reviewed-on: https://chromium-review.googlesource.com/1059167
Reviewed-by: Chris Pickel <sfiera@chromium.org>
Commit-Queue: Chris Pickel <sfiera@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558668}
2018-05-15 12:18:57 +00:00
Xi Han
fc95501fb2 Create BrowserThread::IO thread before browser main loop to start
ServiceManager.

We need a thread to post/execute tasks when starting the
ServiceManager. This thread needs to be created before the browser
main loop is initialized, and will be registered as the
BrowserThread::IO thread which is currently used by ServiceManager
connections.

The creation of such a thread is moved to service_manager::main via
MainDelegate::CreateIOThreadAndGetTaskRunner(). Since it requires no
thread created before calling fork() on posix, we also move the setup
of sandbox before creating the IO thread.

Bug: 740677, 729596
Change-Id: I23ef57eb52bfb1eb363682dadf98c571c12afcd1
Reviewed-on: https://chromium-review.googlesource.com/969098
Commit-Queue: Xi Han <hanxi@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557680}
2018-05-10 21:24:41 +00:00
Ehsan Chiniforooshan
a8c8daddac Tracing: set service process names
Tested by running chrome --mash and capturing a trace in
chrome://tracing. The trace viewer shows actual process names instead
of the generic "Process (pid ????)" name.

TBR=skyostil@chromium.org

Change-Id: I0327a1b4d0dfba20699cc71dc420f0ee4035775b
Reviewed-on: https://chromium-review.googlesource.com/716865
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: Primiano Tucci <primiano@chromium.org>
Reviewed-by: Ken Rockot <rockot@chromium.org>
Commit-Queue: Ehsan Chiniforooshan <chiniforooshan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#513717}
2017-11-03 07:23:09 +00:00
msw
034bdcd0c7 Revert of memory-infra: Finish moving to Mojo (2nd attempt) (patchset id:140001 of https://codereview.chromium.org/2734193002/ )
Reason for revert:
Prospective revert for nacl_integration crash starting on this build:
  https://build.chromium.org/p/chromium.linux/builders/Linux%20Tests%20%28dbg%29%281%29/builds/61497

[13142:13142:0309/150217.391584:FATAL:memory_dump_manager.cc(220)] Check failed: !delegate_.
 0x7ff7db583b5b base::debug::StackTrace::StackTrace()
 0x7ff7db5821ec base::debug::StackTrace::StackTrace()
 0x7ff7db5f06df logging::LogMessage::~LogMessage()
 0x7ff7db7ac18e base::trace_event::MemoryDumpManager::Initialize()
 0x7ff7dd27a73a memory_instrumentation::MemoryDumpManagerDelegateImpl::MemoryDumpManagerDelegateImpl()
 0x7ff7dd27a293 memory_instrumentation::MemoryDumpManagerDelegateImpl::Create()
 0x7ff7dd26e723 memory_instrumentation::CoordinatorImpl::CoordinatorImpl()
 0x7ff7dd26e4da memory_instrumentation::CoordinatorImpl::GetInstance()
 0x7ff7dd7dbdc0 ChromeContentBrowserClient::ExposeInterfacesToRenderer()
 0x7ff7d54717e8 content::RenderProcessHostImpl::RegisterMojoInterfaces()
 0x7ff7d546eb2f content::RenderProcessHostImpl::Init()
 0x7ff7d4f41faa content::RenderFrameHostManager::InitRenderView()
 0x7ff7d4f3933d content::RenderFrameHostManager::ReinitializeRenderFrame()
 0x7ff7d4f37e53 content::RenderFrameHostManager::Navigate()
 0x7ff7d4ee1ad3 content::NavigatorImpl::NavigateToEntry()
 0x7ff7d4ee2f68 content::NavigatorImpl::NavigateToPendingEntry()
 0x7ff7d4eb487a content::NavigationControllerImpl::NavigateToPendingEntryInternal()
 0x7ff7d4eacf17 content::NavigationControllerImpl::NavigateToPendingEntry()
 0x7ff7d4ead365 content::NavigationControllerImpl::LoadEntry()
 0x7ff7d4eaef5c content::NavigationControllerImpl::LoadURLWithParams()
 0x7ff7e00a88f4 (anonymous namespace)::LoadURLInContents()
 0x7ff7e00a75aa chrome::Navigate()
 0x7ff7e00dcac7 StartupBrowserCreatorImpl::OpenTabsInBrowser()
 0x7ff7e00dd687 StartupBrowserCreatorImpl::RestoreOrCreateBrowser()
 0x7ff7e00dc04d StartupBrowserCreatorImpl::ProcessLaunchUrlsUsingConsolidatedFlow()
 0x7ff7e00db4c5 StartupBrowserCreatorImpl::Launch()
 0x7ff7e00d5662 StartupBrowserCreator::LaunchBrowser()
 0x7ff7e00d4b57 StartupBrowserCreator::ProcessCmdLineImpl()
 0x7ff7e00d3ef2 StartupBrowserCreator::Start()
 0x7ff7de08f54c ChromeBrowserMainParts::PreMainMessageLoopRunImpl()
 0x7ff7de08e130 ChromeBrowserMainParts::PreMainMessageLoopRun()
 0x7ff7d4b8e831 content::BrowserMainLoop::PreMainMessageLoopRun()
 0x7ff7d3feafe5 _ZN4base8internal13FunctorTraitsIMN7content22IndexedDBCallbacksImpl13InternalStateEFvvEvE6InvokeIPS4_JEEEvS6_OT_DpOT0_
 0x7ff7d4b99991 _ZN4base8internal12InvokeHelperILb0EiE8MakeItSoIRKMN7content15BrowserMainLoopEFivEJPS5_EEEiOT_DpOT0_
 0x7ff7d4b99937 _ZN4base8internal7InvokerINS0_9BindStateIMN7content15BrowserMainLoopEFivEJNS0_17UnretainedWrapperIS4_EEEEEFivEE7RunImplIRKS6_RKSt5tupleIJS8_EEJLm0EEEEiOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
 0x7ff7d4b9987c _ZN4base8internal7InvokerINS0_9BindStateIMN7content15BrowserMainLoopEFivEJNS0_17UnretainedWrapperIS4_EEEEEFivEE3RunEPNS0_13BindStateBaseE
 0x7ff7d3ecb53b base::internal::RunMixin<>::Run()
 0x7ff7d575e9bb content::StartupTaskRunner::RunAllTasksNow()
 0x7ff7d4b8c400 content::BrowserMainLoop::CreateStartupTasks()
 0x7ff7d4b9d3c7 content::BrowserMainRunnerImpl::Initialize()
 0x7ff7d4b886af content::BrowserMain()
 0x7ff7d63fcbd6 content::RunNamedProcessTypeMain()
 0x7ff7d63fef7c content::ContentMainRunnerImpl::Run()
 0x7ff7d63fbb02 content::ContentMain()
 0x7ff7dc6d57da ChromeMain
 0x7ff7dc6d5702 main
 0x7ff7c7a80f45 __libc_start_main
 0x7ff7dc6d5605 <unknown>

Original issue's description:
> memory-infra: Finish moving to Mojo (2nd attempt)
>
> This was originally landed in https://codereview.chromium.org/2694083005.
> But, it broke webview perf tests, and so, it was reverted. It turned out that
> in some scenarios, the memory dump manager is not initialized early enough (in
> the browser process). So, now, I initialize it as soon as the UI thread is
> created.
>
> Modifications since the original CL are:
>
> - The Coordinator service is created when the UI thread is created
>   (browser_main_loop.cc).
> - When Coordinator is created, it initializes memory dump manager's TPID
>   (memory_dump_manager_delegate_impl.cc).
> - To avoid dependency from //services/resource_coordinator to //content the
>   definition of the service TPID is moved from child_process_host.h to
>   constants.mojom.
>
> I tested the CL by building for Android and running the following with an
> android device attached:
>
> run_benchmark memory.top_10_mobile --browser=android-webview
> --also-run-disabled-tests
>
> In the original reverted CL, the above command results in
> 'Unable to obtain memory dump' exceptions. With this CL the test runs
> successfully.
>
> An example interaction diagram (to see the large image, click on it):
> https://docs.google.com/document/d/1Mz64egjuZ4WsYw9AKKWdTvl0Il706EWdCy24V87R_F4/edit#heading=h.1ku5wcoxqifr
>
> BUG=679830, 697773, 697384, 697062
>
> Review-Url: https://codereview.chromium.org/2734193002
> Cr-Commit-Position: refs/heads/master@{#455866}
> Committed: 0a3a302b6d

TBR=primiano@chromium.org,ssid@chromium.org,kenrb@chromium.org,jam@chromium.org,chiniforooshan@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=679830, 697773, 697384, 697062

Review-Url: https://codereview.chromium.org/2738093003
Cr-Commit-Position: refs/heads/master@{#455899}
2017-03-09 23:35:07 +00:00
chiniforooshan
0a3a302b6d memory-infra: Finish moving to Mojo (2nd attempt)
This was originally landed in https://codereview.chromium.org/2694083005.
But, it broke webview perf tests, and so, it was reverted. It turned out that
in some scenarios, the memory dump manager is not initialized early enough (in
the browser process). So, now, I initialize it as soon as the UI thread is
created.

Modifications since the original CL are:

- The Coordinator service is created when the UI thread is created
  (browser_main_loop.cc).
- When Coordinator is created, it initializes memory dump manager's TPID
  (memory_dump_manager_delegate_impl.cc).
- To avoid dependency from //services/resource_coordinator to //content the
  definition of the service TPID is moved from child_process_host.h to
  constants.mojom.

I tested the CL by building for Android and running the following with an
android device attached:

run_benchmark memory.top_10_mobile --browser=android-webview
--also-run-disabled-tests

In the original reverted CL, the above command results in
'Unable to obtain memory dump' exceptions. With this CL the test runs
successfully.

An example interaction diagram (to see the large image, click on it):
https://docs.google.com/document/d/1Mz64egjuZ4WsYw9AKKWdTvl0Il706EWdCy24V87R_F4/edit#heading=h.1ku5wcoxqifr

BUG=679830, 697773, 697384, 697062

Review-Url: https://codereview.chromium.org/2734193002
Cr-Commit-Position: refs/heads/master@{#455866}
2017-03-09 21:20:09 +00:00
primiano
74b034f002 Revert of memory-infra: Finish moving memory_infra from TracingController (patchset id:470001 of https://codereview.chromium.org/2694083005/ )
Reason for revert:
Unfortunately this broke lot of memory-infra metrics and caused flakiness in various bot.
Have to revert because this is causing problems to the sheriff rotation. More details:
crbug.com/697384 : metrics broken
crbug.com/697062 : memory dumps failing on webview

Original issue's description:
> memory-infra: Finish moving memory_infra from TracingController
>
> This finishes moving memory instrumentation code from TracingController
> to its own location in //services/resource_coordinator.
>
> BUG=679830
> CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel
>
> Review-Url: https://codereview.chromium.org/2694083005
> Cr-Commit-Position: refs/heads/master@{#453243}
> Committed: e7bee2f02d

TBR=hjd@chromium.org,oysteine@chromium.org,ssid@chromium.org,jam@chromium.org,kenrb@chromium.org,chiniforooshan@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=679830,697384

Review-Url: https://codereview.chromium.org/2724793002
Cr-Commit-Position: refs/heads/master@{#453919}
2017-03-01 12:31:47 +00:00
chiniforooshan
e7bee2f02d memory-infra: Finish moving memory_infra from TracingController
This finishes moving memory instrumentation code from TracingController
to its own location in //services/resource_coordinator.

BUG=679830
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel

Review-Url: https://codereview.chromium.org/2694083005
Cr-Commit-Position: refs/heads/master@{#453243}
2017-02-27 17:34:39 +00:00
dcheng
5971627d34 Convert //content/browser from scoped_ptr to std::unique_ptr
BUG=554298
R=avi@chromium.org

Review URL: https://codereview.chromium.org/1874893002

Cr-Commit-Position: refs/heads/master@{#386285}
2016-04-09 05:20:41 +00:00
Daniel Cheng
556abd1195 Fix a bunch of IWYU violators that don't include scoped_ptr.h
This blocks the conversion of //base from scoped_ptr to std::unique_ptr.

BUG=554298
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel
R=danakj@chromium.org

Review URL: https://codereview.chromium.org/1852953002 .

Cr-Commit-Position: refs/heads/master@{#384767}
2016-04-02 01:15:27 +00:00
fdoray
f6d86240c1 Stop using the TRACE_EVENT_*_ETW macros.
All tracing macros can now export events to ETW (see
TraceEventETWExport). Therefore, there is no reason to keep using the
old TRACE_EVENT_*_ETW macros.

The tracing infrastructure doesn't expect synchronous events around
the main loop of a thread. For this reason, the TRACE_EVENT_*_ETW
macros have been replaced by TRACE_EVENT_ASYNC_* macros instead of
simple TRACE_EVENT* macros in some cases.

Once this patch has landed, the TRACE_EVENT_*ETW macros will be
removed (https://codereview.chromium.org/1376793004/)

BUG=#1263
BUG=489720

Review URL: https://codereview.chromium.org/1386193002

Cr-Commit-Position: refs/heads/master@{#353076}
2015-10-08 16:50:37 +00:00
ssid
b2e3ececdf Mechanical rename of base::debug -> base::trace_event for /content
This is the last stage of the trace_event directory restructuring.
This is part of a set of 3 CLs which is moving tracing clients to use
the new base::trace_event namespace.
See crrev.com/837303004 and the related bug for motivations.

BUG=451032
TBR=jam@chromium.org
NOTRY=true

Review URL: https://codereview.chromium.org/892213004

Cr-Commit-Position: refs/heads/master@{#315310}
2015-02-09 16:03:13 +00:00
ssid
3e76561764 Mechanical rename of tracing includes for /content [1/3]
This is just a mechanical rename of tracing includes.
See crrev.com/837303004 and the related bug for motivations.

BUG=451032
TBR=avi@chromium.org

Review URL: https://codereview.chromium.org/866803003

Cr-Commit-Position: refs/heads/master@{#313421}
2015-01-28 04:05:57 +00:00
nduca@chromium.org
91a2aeac66 Process names, and predictable thread and process ordering in about:tracing
R=dsinclair

Review URL: https://chromiumcodereview.appspot.com/17451017

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210437 0039d316-1c4b-4281-b951-d872f2087c98
2013-07-08 23:14:39 +00:00
jam@chromium.org
329b81bae3 Fix variable name.
Review URL: https://codereview.chromium.org/12326078

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184207 0039d316-1c4b-4281-b951-d872f2087c98
2013-02-22 23:07:47 +00:00
jam@chromium.org
464883218e Move remaining files in content\browser to the content namespace.
Review URL: https://codereview.chromium.org/11340029

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164828 0039d316-1c4b-4281-b951-d872f2087c98
2012-10-30 03:22:20 +00:00
marshall@chromium.org
f573ed6b41 Support sharing of ContentMain and BrowserMain code with embedded use cases (try ).
For the browser use case it is convenient to have a single ContentMain entry point function that handles all initialization, run and shutdown. For embedded use cases it is often necessary to integrate with existing application message loops where initialization and shutdown must be handled separately.

To support sharing of this code the following changes were required:

1. Refactor the ContentMain function to create a ContentMainRunner class containing separate initialization, run and shutdown functions.

2. Refactor the BrowserMain function and BrowserMainLoop class to create a BrowserMainRunner class containing separate initialization, run and shutdown functions.

3. Add a new BrowserMainParts::GetMainMessageLoop method. This is necessary to support creation of a custom MessageLoop implementation while sharing BrowserMainRunner initialization and shutdown code.

BUG=112507
TEST=none
Review URL: https://chromiumcodereview.appspot.com/9375017

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121454 0039d316-1c4b-4281-b951-d872f2087c98
2012-02-10 15:58:52 +00:00
marshall@chromium.org
b1b33e512d Revert 121236 - Support sharing of ContentMain and BrowserMain code with embedded use cases (try ).
Tests failing.
Review URL: https://chromiumcodereview.appspot.com/9372027

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121245 0039d316-1c4b-4281-b951-d872f2087c98
2012-02-09 16:48:52 +00:00
marshall@chromium.org
e0a14c0dbf Support sharing of ContentMain and BrowserMain code with embedded use cases (try ).
For the browser use case it is convenient to have a single ContentMain entry point function that handles all initialization, run and shutdown. For embedded use cases it is often necessary to integrate with existing application message loops where initialization and shutdown must be handled separately.

To support sharing of this code the following changes were required:

1. Refactor the ContentMain function to create a ContentMainRunner class containing separate initialization, run and shutdown functions.

2. Refactor the BrowserMain function and BrowserMainLoop class to create a BrowserMainRunner class containing separate initialization, run and shutdown functions.

3. Add a new BrowserMainParts::GetMainMessageLoop method. This is necessary to support creation of a custom MessageLoop implementation while sharing BrowserMainRunner initialization and shutdown code.

BUG=112507
TEST=none
Review URL: https://chromiumcodereview.appspot.com/9347022

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121236 0039d316-1c4b-4281-b951-d872f2087c98
2012-02-09 15:27:22 +00:00
evan@chromium.org
9e49959b0e Revert "Support sharing of ContentMain and BrowserMain code with embedded use cases."
This reverts commit r120574.  Test failures.

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120581 0039d316-1c4b-4281-b951-d872f2087c98
2012-02-06 18:46:35 +00:00
marshall@chromium.org
6f2b39bccf Support sharing of ContentMain and BrowserMain code with embedded use cases.
For the browser use case it is convenient to have a single ContentMain entry point function that handles all initialization, run and shutdown. For embedded use cases it is often necessary to integrate with existing application message loops where initialization and shutdown must be handled separately.

To support sharing of this code the following changes were required:

1. Refactor the ContentMain function to create a ContentMainRunner class containing separate initialization, run and shutdown functions.

2. Refactor the BrowserMain function and BrowserMainLoop class to create a BrowserMainRunner class containing separate initialization, run and shutdown functions.

3. Add a new BrowserMainParts::GetMainMessageLoop method. This is necessary to support creation of a custom MessageLoop implementation while sharing BrowserMainRunner initialization and shutdown code.

BUG=112507
TEST=none
Review URL: https://chromiumcodereview.appspot.com/9190018

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120574 0039d316-1c4b-4281-b951-d872f2087c98
2012-02-06 16:05:13 +00:00
jam@chromium.org
32780605c1 Remove child_process.h includes from chrome (specifically WaitForDebugger). I moved the browser process usage to content. For the NaCl usage, it wasn't working anyways since it wasn't being passed to the process (and if it was, the message box wouldn't work on Windows because of sandbox). When this is needed again, we can figure out a good way of doing it.
BUG=98716
Review URL: http://codereview.chromium.org/8686014

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@112259 0039d316-1c4b-4281-b951-d872f2087c98
2011-11-30 18:56:17 +00:00
jam@chromium.org
4573fbd30d Move content_restriction.h and main_function_params.h to content/public/common, and put them in the content namespace.
BUG=98716
Review URL: http://codereview.chromium.org/8387039

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108004 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-31 20:25:18 +00:00
jam@chromium.org
badf5cf5f1 Expose the sandbox related code through the content API. I did a bit of cleanup while I was doing this.
-got rid of SandboxInitWrapper, since I didn't see a need to expose given that we can just expose sandbox::SandboxInterfaceInfo
-got rid of the duplicated code to initialize the broker
-since I made MainFunctionParams only have the sandbox struct on Windows, I also made the mac specific auto release pool behind an ifdef as well. It seemed odd to make something so mac specific compile on all platforms to save some #ifdefs.

BUG=98716
Review URL: http://codereview.chromium.org/8414020

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107863 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-29 03:44:44 +00:00
joi@chromium.org
c38831a108 Split BrowserThread into public API and private implementation, step 1.
Only content/ now has the ability to create BrowserThread objects,
with the exception that tests can create the
content::TestBrowserThread subclass, and (temporarily) code in chrome/
can create the DeprecatedBrowserThread subclass.

A follow-up change will make content/ take care of its own thread
creation, remove DeprecatedBrowserThread, and move all state and
non-trivial constructors from BrowserThread down to BrowserThreadImpl.

Also moved BrowserProcessSubThread into content/ namespace.  As part
of follow-up cleanup, chrome/ will stop using this class.

BUG=98716
TEST=existing

Review URL: http://codereview.chromium.org/8392042

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107718 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-28 12:44:49 +00:00
stevenjb@google.com
b48c918f83 Make GTK and Aura parts orthogonal to OS parts
This CL moves GTK and Aura "Parts" out of the primary BrowserMainParts tree and into orthogonal parts that can be added independently. This was done in a way that will facilitate adding additional parts if (when) we need them.

The motivation for this was to
a) eliminate the existing typedef in chrome_browser_main_chromeos.h
b) reduce the number of #ifdefs required in the setup / parts code

For an outline of the new parts see:

https://docs.google.com/drawings/d/1-gIMl-81c4SvcMrT1xaxnDGibDe7VQfMkFT1bMnIvrg/edit?hl=en_US

Please consider this a proposal; I am entirely open to feedback.

BUG=none
TEST=Chrome compiles and passes tests on all platfroms.

Review URL: http://codereview.chromium.org/8302016

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107383 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-26 18:03:30 +00:00
jam@chromium.org
b39ef1cbd6 Move resource_codes to content/public/common.
BUG=98716
Review URL: http://codereview.chromium.org/8382021

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107061 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-25 04:46:55 +00:00
oshima@google.com
4d62853116 rename Run in MessageLoopForUI to RunWithDispatcher
BUG=99471
TEST=none

Review URL: http://codereview.chromium.org/8343023

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106896 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-24 07:19:51 +00:00
jam@chromium.org
ad50def5e1 Make NotificationService an interface in the content namespace, and switch callers to use it. Move the implementation to content/browser. Stop creating it in all child processes since it's only used in the browser.
BUG=98716
Review URL: http://codereview.chromium.org/8342048

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106403 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-19 23:17:07 +00:00
joi@chromium.org
87f3c08db2 Move content_browser_client.h to public, and while at it, move
window_container_type.h as well since it is included by
content_browser_client.h

BUG=98716
TEST=it builds + existing tests

Review URL: http://codereview.chromium.org/8346017

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106323 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-19 18:07:44 +00:00
jar@chromium.org
84b57956fe Update task tracking to not depend on message_loop_ singleton
I also did a bunch of cleanup, and transitioned to tracking
the duration of a run, rather than the time from posting
(construction of a task) to completion of the run.  It is
less interesting for now to track queueing delay, and we
need a focus on task execution time.  I left in the hook
(API) with the expectation that I'll be extending the
tracked_objects code to include this as well.

I also landed changes to run in Linux/Mac.  The fact that
I've punted on shutdown made this landing easy (all
code support was previously lost during migration to
some flavor of bind support).

r=willchan,jam,viettrungluu,ajwong
BUG=62728
Review URL: http://codereview.chromium.org/8233037

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105694 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-15 23:52:45 +00:00
jam@chromium.org
c08950d205 Move content_switches to content\public\common.
BUG=98716
Review URL: http://codereview.chromium.org/8277018

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105389 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-13 22:20:29 +00:00
willchan@chromium.org
2cb3e6c67a Assert that new renderer processes aren't created during shutdown.
Puts CHECKs in RenderProcessHost's constructor to make sure the main MessageLoop hasn't stopped running yet.

BUG=91398
TEST=none

Review URL: http://codereview.chromium.org/8210004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104849 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-11 04:49:32 +00:00
oshima@chromium.org
2768ae4f73 Initialize glib for all linux because all linux variants uses glib.
aura chrome fails on ubuntu 11.04 without this
 remove base::MessagePumpX::DisableGtkMessagePump() from aura as we nolonger has gtk on aura.

BUG=97131
TEST=none


Review URL: http://codereview.chromium.org/8195003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104508 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-07 17:34:21 +00:00
phajdan.jr@chromium.org
c1f87b2a4f Make an empty content browser test work.
BUG=90448
Review URL: http://codereview.chromium.org/8137012

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104181 0039d316-1c4b-4281-b951-d872f2087c98
2011-10-05 21:59:33 +00:00
mark@chromium.org
f857632728 Restore removed explanatory comment.
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/8098010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103573 0039d316-1c4b-4281-b951-d872f2087c98
2011-09-30 23:17:13 +00:00
evan@chromium.org
7d3d128a9d gtk: swallow spurious error
We promote GTK errors into DFATALs.  Some versions of GTK accidentally
call it an error to not have an environment variable set.  They fixed
this on GTK trunk, but we shouldn't die on Ubuntu releases that don't
have the fix.

BUG=97293

Review URL: http://codereview.chromium.org/7983018

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102021 0039d316-1c4b-4281-b951-d872f2087c98
2011-09-20 21:23:01 +00:00
jam@chromium.org
03d8d3e914 Get rid of content::DidEndMainMessageLoop since it was declared in content but defined in chrome, and called by chrome.
Review URL: http://codereview.chromium.org/7948006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101924 0039d316-1c4b-4281-b951-d872f2087c98
2011-09-20 06:07:11 +00:00
oshima@google.com
a91f51922b Initialize message pump not to use gtk.
This is a temp fix to remove gtk_init. We should remove this once we remove gtk from message pump, which should be done as a part of AURA->TOOLKIT_USES_GTK=0

WindowSizer/gfx::screen for aura

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/7943006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101922 0039d316-1c4b-4281-b951-d872f2087c98
2011-09-20 05:42:37 +00:00
sky@chromium.org
db021357a0 Revert 101861 - Get rid of content::DidEndMainMessageLoop since it was declared in content but defined in chrome, and called by chrome.
Review URL: http://codereview.chromium.org/7948006

TBR=jam@chromium.org
Review URL: http://codereview.chromium.org/7967008

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101872 0039d316-1c4b-4281-b951-d872f2087c98
2011-09-20 00:35:15 +00:00