Make sure ports are closed when they're no longer used.

It appears to be a common pattern that extensions don't invoke the
responseCallback, and so the port objects leak. Register a callback that
triggers when the responseCallback is finalized to free up these resources.

BUG=114738, 93566
TEST=manual

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126884 0039d316-1c4b-4281-b951-d872f2087c98
4 files changed