diff options
Diffstat (limited to 'Swiften/Whiteboard/WhiteboardServer.cpp')
-rw-r--r-- | Swiften/Whiteboard/WhiteboardServer.cpp | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/Swiften/Whiteboard/WhiteboardServer.cpp b/Swiften/Whiteboard/WhiteboardServer.cpp index e84ddb3..53a131f 100644 --- a/Swiften/Whiteboard/WhiteboardServer.cpp +++ b/Swiften/Whiteboard/WhiteboardServer.cpp @@ -21,22 +21,17 @@ namespace Swift { for (it = operations_.rbegin(); it != operations_.rend(); ++it) { WhiteboardOperation::ref operation = *it; while (newOperation->getParentID() == operation->getParentID()) { -// WhiteboardInsertOperation::ref insertOperation = boost::dynamic_pointer_cast<WhiteboardInsertOperation>(operation); -// if (insertOperation) { - std::pair<WhiteboardOperation::ref, WhiteboardOperation::ref> tResult = WhiteboardTransformer::transform(newOperation, operation); + std::pair<WhiteboardOperation::ref, WhiteboardOperation::ref> tResult = WhiteboardTransformer::transform(newOperation, operation); + + if (it == operations_.rbegin()) { + operations_.push_back(tResult.second); + return tResult.second; + } else { + newOperation = tResult.second; + --it; + operation = *it; + } - if (it == operations_.rbegin()) { - operations_.push_back(tResult.second); - return tResult.second; - } else { - newOperation = tResult.second; - --it; - operation = *it; - } -// } else { -// operations_.push_back(operation); -// return *it; -// } } } return WhiteboardOperation::ref(); |