| Index: chrome/renderer/mock_render_thread.cc
 | 
| ===================================================================
 | 
| --- chrome/renderer/mock_render_thread.cc	(revision 8187)
 | 
| +++ chrome/renderer/mock_render_thread.cc	(working copy)
 | 
| @@ -17,8 +17,6 @@
 | 
|  }
 | 
|  
 | 
|  MockRenderThread::~MockRenderThread() {
 | 
| -  // Don't leak the allocated message bodies.
 | 
| -  ClearMessages();
 | 
|  }
 | 
|  
 | 
|  // Called by the Widget. The routing_id must match the routing id assigned
 | 
| @@ -60,63 +58,15 @@
 | 
|    return true;
 | 
|  }
 | 
|  
 | 
| -void MockRenderThread::ClearMessages() {
 | 
| -  for (size_t i = 0; i < messages_.size(); i++)
 | 
| -    delete[] messages_[i].second;
 | 
| -  messages_.clear();
 | 
| -}
 | 
| -
 | 
| -const IPC::Message* MockRenderThread::GetMessageAt(size_t index) const {
 | 
| -  if (index >= messages_.size())
 | 
| -    return NULL;
 | 
| -  return &messages_[index].first;
 | 
| -}
 | 
| -
 | 
| -const IPC::Message* MockRenderThread::GetFirstMessageMatching(uint16 id) const {
 | 
| -  for (size_t i = 0; i < messages_.size(); i++) {
 | 
| -    if (messages_[i].first.type() == id)
 | 
| -      return &messages_[i].first;
 | 
| -  }
 | 
| -  return NULL;
 | 
| -}
 | 
| -
 | 
| -const IPC::Message* MockRenderThread::GetUniqueMessageMatching(
 | 
| -    uint16 id) const {
 | 
| -  size_t found_index = 0;
 | 
| -  size_t found_count = 0;
 | 
| -  for (size_t i = 0; i < messages_.size(); i++) {
 | 
| -    if (messages_[i].first.type() == id) {
 | 
| -      found_count++;
 | 
| -      found_index = i;
 | 
| -    }
 | 
| -  }
 | 
| -  if (found_count != 1)
 | 
| -    return NULL;  // Didn't find a unique one.
 | 
| -  return &messages_[found_index].first;
 | 
| -}
 | 
| -
 | 
|  void MockRenderThread::SendCloseMessage() {
 | 
|    ViewMsg_Close msg(routing_id_);
 | 
|    widget_->OnMessageReceived(msg);
 | 
|  }
 | 
|  
 | 
|  void MockRenderThread::OnMessageReceived(const IPC::Message& msg) {
 | 
| -  // Copy the message into a pair. This is tricky since the message doesn't
 | 
| -  // manage its data itself.
 | 
| -  char* data_copy;
 | 
| -  if (msg.size()) {
 | 
| -    data_copy = new char[msg.size()];
 | 
| -    memcpy(data_copy, msg.data(), msg.size());
 | 
| -  } else {
 | 
| -    // Dummy data so we can treat everything the same.
 | 
| -    data_copy = new char[1];
 | 
| -    data_copy[0] = 0;
 | 
| -  }
 | 
| +  // Save the message in the sink.
 | 
| +  sink_.OnMessageReceived(msg);
 | 
|  
 | 
| -  // Save the message.
 | 
| -  messages_.push_back(
 | 
| -      std::make_pair(IPC::Message(data_copy, msg.size()), data_copy));
 | 
| -
 | 
|    // Some messages we do special handling.
 | 
|    bool handled = true;
 | 
|    bool msg_is_ok = true;
 | 
| @@ -133,4 +83,3 @@
 | 
|    opener_id_ = opener_id;
 | 
|    *route_id = routing_id_;
 | 
|  }
 | 
| -
 | 
| 
 |