Summary: | Detect invalid CoreIPC messages and call didReceiveInvalidMessage | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Anders Carlsson <andersca> | ||||
Component: | New Bugs | Assignee: | Anders Carlsson <andersca> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | Keywords: | InRadar | ||||
Priority: | P2 | ||||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | Other | ||||||
OS: | OS X 10.5 | ||||||
Attachments: |
|
Description
Anders Carlsson
2010-08-06 14:27:53 PDT
Created attachment 63761 [details]
Patch
Comment on attachment 63761 [details] Patch > @@ -253,14 +257,15 @@ void Connection::dispatchMessages() > OwnPtr<ArgumentEncoder> replyEncoder(new ArgumentEncoder(syncRequestID)); > > // Hand off both the decoder and encoder to the client.. > - m_client->didReceiveSyncMessage(this, message.messageID(), arguments, replyEncoder.get()); > + m_client->didReceiveSyncMessage(this, message.messageID(), arguments.get(), replyEncoder.get()); > > // Send the reply. > sendMessage(MessageID(CoreIPCMessage::SyncMessageReply), replyEncoder.release()); > } else > - m_client->didReceiveMessage(this, message.messageID(), arguments); > + m_client->didReceiveMessage(this, message.messageID(), arguments.get()); > > - message.destroy(); > + if (arguments->isInvalid()) > + m_client->didReceiveInvalidMessage(this, message.messageID()); > } > } Should we check if the arguments are invalid before sending the synchronous reply? r=me Committed r64871: <http://trac.webkit.org/changeset/64871> |