| Index: Source/core/editing/InsertParagraphSeparatorCommand.cpp | 
| diff --git a/Source/core/editing/InsertParagraphSeparatorCommand.cpp b/Source/core/editing/InsertParagraphSeparatorCommand.cpp | 
| index 92d8b4cfbc3b7d8102f1900507b0e09d02bee834..4f8c8d3004e374198ffcce6e454e7128ef792522 100644 | 
| --- a/Source/core/editing/InsertParagraphSeparatorCommand.cpp | 
| +++ b/Source/core/editing/InsertParagraphSeparatorCommand.cpp | 
| @@ -58,7 +58,7 @@ static Element* highestVisuallyEquivalentDivBelowRoot(Element* startBlock) | 
| return curBlock; | 
| } | 
|  | 
| -InsertParagraphSeparatorCommand::InsertParagraphSeparatorCommand(Document *document, bool mustUseDefaultParagraphElement, bool pasteBlockqutoeIntoUnquotedArea) | 
| +InsertParagraphSeparatorCommand::InsertParagraphSeparatorCommand(Document& document, bool mustUseDefaultParagraphElement, bool pasteBlockqutoeIntoUnquotedArea) | 
| : CompositeEditCommand(document) | 
| , m_mustUseDefaultParagraphElement(mustUseDefaultParagraphElement) | 
| , m_pasteBlockqutoeIntoUnquotedArea(pasteBlockqutoeIntoUnquotedArea) | 
| @@ -201,12 +201,13 @@ void InsertParagraphSeparatorCommand::doApply() | 
| // Create block to be inserted. | 
| RefPtr<Element> blockToInsert; | 
| if (startBlock->isRootEditableElement()) { | 
| -        blockToInsert = createDefaultParagraphElement(document()); | 
| +        blockToInsert = createDefaultParagraphElement(&document()); | 
| nestNewBlock = true; | 
| -    } else if (shouldUseDefaultParagraphElement(startBlock.get())) | 
| -        blockToInsert = createDefaultParagraphElement(document()); | 
| -    else | 
| +    } else if (shouldUseDefaultParagraphElement(startBlock.get())) { | 
| +        blockToInsert = createDefaultParagraphElement(&document()); | 
| +    } else { | 
| blockToInsert = startBlock->cloneElementWithoutChildren(); | 
| +    } | 
|  | 
| //--------------------------------------------------------------------- | 
| // Handle case when position is in the last visible position in its block, | 
| @@ -216,7 +217,7 @@ void InsertParagraphSeparatorCommand::doApply() | 
| if (isFirstInBlock && !lineBreakExistsAtVisiblePosition(visiblePos)) { | 
| // The block is empty.  Create an empty block to | 
| // represent the paragraph that we're leaving. | 
| -                RefPtr<Element> extraBlock = createDefaultParagraphElement(document()); | 
| +                RefPtr<Element> extraBlock = createDefaultParagraphElement(&document()); | 
| appendNode(extraBlock, startBlock); | 
| appendBlockPlaceholder(extraBlock); | 
| } | 
| @@ -296,7 +297,7 @@ void InsertParagraphSeparatorCommand::doApply() | 
| // it if visiblePos is at the start of a paragraph so that the | 
| // content will move down a line. | 
| if (isStartOfParagraph(visiblePos)) { | 
| -        RefPtr<Element> br = createBreakElement(document()); | 
| +        RefPtr<Element> br = createBreakElement(&document()); | 
| insertNodeAt(br.get(), insertionPosition); | 
| insertionPosition = positionInParentAfterNode(br.get()); | 
| // If the insertion point is a break element, there is nothing else | 
| @@ -359,13 +360,13 @@ void InsertParagraphSeparatorCommand::doApply() | 
| else | 
| insertNodeAfter(blockToInsert.get(), startBlock); | 
|  | 
| -    document()->updateLayoutIgnorePendingStylesheets(); | 
| +    document().updateLayoutIgnorePendingStylesheets(); | 
|  | 
| // If the paragraph separator was inserted at the end of a paragraph, an empty line must be | 
| // created.  All of the nodes, starting at visiblePos, are about to be added to the new paragraph | 
| // element.  If the first node to be inserted won't be one that will hold an empty line open, add a br. | 
| if (isEndOfParagraph(visiblePos) && !lineBreakExistsAtVisiblePosition(visiblePos)) | 
| -        appendNode(createBreakElement(document()).get(), blockToInsert.get()); | 
| +        appendNode(createBreakElement(&document()).get(), blockToInsert.get()); | 
|  | 
| // Move the start node and the siblings of the start node. | 
| if (VisiblePosition(insertionPosition) != VisiblePosition(positionBeforeNode(blockToInsert.get()))) { | 
| @@ -391,7 +392,7 @@ void InsertParagraphSeparatorCommand::doApply() | 
|  | 
| // Handle whitespace that occurs after the split | 
| if (positionAfterSplit.isNotNull()) { | 
| -        document()->updateLayoutIgnorePendingStylesheets(); | 
| +        document().updateLayoutIgnorePendingStylesheets(); | 
| if (!positionAfterSplit.isRenderedCharacter()) { | 
| // Clear out all whitespace and insert one non-breaking space | 
| ASSERT(!positionAfterSplit.containerNode()->renderer() || positionAfterSplit.containerNode()->renderer()->style()->collapseWhiteSpace()); | 
|  |