Currently child thread creates and initializes the channel before adding any message...
commit6f9311d4b8d822280a37d73f30c1ed141e5ecac7
authoralexst <alexst@chromium.org>
Mon, 19 Jan 2015 20:32:57 +0000 (19 12:32 -0800)
committerCommit bot <commit-bot@chromium.org>
Mon, 19 Jan 2015 20:34:29 +0000 (19 20:34 +0000)
tree8479a0b40fc7da930632fc565d173c6abc0f0a9a
parentb8e3e16042997bcc524c9aac15e758374f3eaed0
Currently child thread creates and initializes the channel before adding any message filters. Since filters are added from main thread via PostTask to IO thread, it results in a race condition between messages being received and filters getting added. It is possible to miss messages if the filter is not installed in time.

This change breaks up channel initialization into two parts, creation
without connection, which allows us to add all the start up filters before
messages start getting received and connection. It also adds an option for
the subclasses of child thread to install additional filters prior to the connection.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#312141}
content/child/child_thread.cc
content/child/child_thread.h