Code:  static IMFSample* CreateSampleFromInputBuffer(
     const media::BitstreamBuffer& bitstream_buffer,
    base::ProcessHandle renderer_process,
     DWORD stream_size,
     DWORD alignment) {
  HANDLE shared_memory_handle = NULL;
  RETURN_ON_FAILURE(::DuplicateHandle(renderer_process,
                                      bitstream_buffer.handle(),
                                      base::GetCurrentProcessHandle(),
                                      &shared_memory_handle,
                                      0,
                                      FALSE,
                                      DUPLICATE_SAME_ACCESS),
                     "Duplicate handle failed", NULL);
  base::SharedMemory shm(shared_memory_handle, true);
   RETURN_ON_FAILURE(shm.Map(bitstream_buffer.size()),
                     "Failed in base::SharedMemory::Map", NULL);
 
  return CreateInputSample(reinterpret_cast<const uint8*>(shm.memory()),
                           bitstream_buffer.size(),
                           stream_size,
                           alignment);
}

Vulnerability Type: DoS 
CWE ID: 
Summary: Google Chrome before 20.0.1132.43 on Windows does not properly isolate sandboxed processes, which might allow remote attackers to cause a denial of service (process interference) via unspecified vectors.
Commit Message: Convert plugin and GPU process to brokered handle duplication.

BUG=119250
Review URL: https://chromiumcodereview.appspot.com/9958034

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