| Index: ipc/ipc_sync_message.cc
|
| diff --git a/ipc/ipc_sync_message.cc b/ipc/ipc_sync_message.cc
|
| index 875f97b1fec167162f83a5919f7fe8e4cf91b534..eb0a917d6e49d0b42a0f7f2d0a9788b7b7ae1ff2 100644
|
| --- a/ipc/ipc_sync_message.cc
|
| +++ b/ipc/ipc_sync_message.cc
|
| @@ -74,10 +74,12 @@ bool SyncMessage::IsMessageReplyTo(const Message& msg, int request_id) {
|
| return GetMessageId(msg) == request_id;
|
| }
|
|
|
| -void* SyncMessage::GetDataIterator(const Message* msg) {
|
| - void* iter = const_cast<char*>(msg->payload());
|
| - UpdateIter(&iter, kSyncMessageHeaderSize);
|
| - return iter;
|
| +PickleIterator SyncMessage::GetDataIterator(const Message* msg) {
|
| + PickleIterator iter(*msg);
|
| + if (!iter.SkipBytes(kSyncMessageHeaderSize))
|
| + return PickleIterator();
|
| + else
|
| + return iter;
|
| }
|
|
|
| int SyncMessage::GetMessageId(const Message& msg) {
|
| @@ -110,7 +112,7 @@ Message* SyncMessage::GenerateReply(const Message* msg) {
|
| bool SyncMessage::ReadSyncHeader(const Message& msg, SyncHeader* header) {
|
| DCHECK(msg.is_sync() || msg.is_reply());
|
|
|
| - void* iter = NULL;
|
| + PickleIterator iter(msg);
|
| bool result = msg.ReadInt(&iter, &header->message_id);
|
| if (!result) {
|
| NOTREACHED();
|
|
|