r84526 added synchronous calls to web process to discard marked text when selection changes. The code was structured so that the same call was made when navigating to a new page, which is obviously unnecessary, as everything in Editor best reset anyway. Unfortunately, CoreIPC delivers sync and async calls out of order while serving a sync call in other direction, causing havoc, freezes and crashes as the UI process got confused about web process state. So, we should minimize sync calls, especially when we know that something else is happening in the web process.
Created attachment 90659 [details] proposed patch
Committed <http://trac.webkit.org/changeset/84598>.