<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - WebKit assert in WebCore::VisiblePosition::previous() displaying youtube video"
   href="https://bugs.webkit.org/show_bug.cgi?id=154905">154905</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>WebKit assert in WebCore::VisiblePosition::previous() displaying youtube video
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>WebKit
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P2
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>HTML Editing
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>webkit-unassigned&#64;lists.webkit.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>richcoe2&#64;gmail.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>I've been facing core dumps in the application liferea for a long time (months) that was always in WebKit javascript library, but because debug was not available I did not have more information.

WebKit version 2.4.9  Linux x86_64  

It reproduces fairly often, so I finally got around to compiling a debug version to get a proper traceback to the issue.   This is my first results with debug.

When I view video's from youtube embedded in a displayed web page, I get a crash.  Sometimes it happens after viewing 3 or 4 videos, sometimes after viewing only one.

In this instance, I had just started the application and had finished watching a short video. 
I restarted the video from the beginning and then clicked on video itself.

ASSERTION FAILED: prev != *this
../../Source/WebCore/editing/VisiblePosition.cpp(89) : WebCore::VisiblePosition WebCore::VisiblePosition::previous(WebCore::EditingBoundaryCrossingRule) const

#0  0x00007fae13530f47 in WTFCrash() () at ../../Source/WTF/wtf/Assertions.cpp:333
#1  0x00007fae15ece33b in WebCore::VisiblePosition::previous(WebCore::EditingBoundaryCrossingRule) const (this=0x7fff3dd371b0, rule=WebCore::CanCrossEditingBoundary) at ../../Source/WebCore/editing/VisiblePosition.cpp:89
#2  0x00007fae15edb0d4 in WebCore::isStartOfDocument(WebCore::VisiblePosition const&amp;) (p=...)
    at ../../Source/WebCore/editing/VisibleUnits.cpp:1411
#3  0x00007fae15e846ef in WebCore::FrameSelection::selectFrameElementInParentIfFullySelected() (this=0x336b580)
    at ../../Source/WebCore/editing/FrameSelection.cpp:1638
#4  0x00007fae15e7dbad in WebCore::FrameSelection::setSelection(WebCore::VisibleSelection const&amp;, unsigned int, WebCore::FrameSelection::CursorAlignOnScroll, WebCore::TextGranularity) (this=0x336b580, newSelection=..., options=6, align=WebCore::FrameSelection::AlignCursorOnScrollIfNeeded, granularity=WebCore::CharacterGranularity)
    at ../../Source/WebCore/editing/FrameSelection.cpp:322
#5  0x00007fae162d0c46 in WebCore::DOMSelection::addRange(WebCore::Range*) (this=0x49ddfb0, r=0x3d6d170)
    at ../../Source/WebCore/page/DOMSelection.cpp:395
#6  0x00007fae167c7e68 in WebCore::jsDOMSelectionPrototypeFunctionAddRange(JSC::ExecState*) (exec=0x7fad9c5d6e10) at DerivedSources/WebCore/JSDOMSelection.cpp:476
#7  0x00007fadabfff0e5 in  ()
#8  0x00007fad9c5d6e60 in  ()
#9  0x00007fae13327981 in llint_op_call () at /usr/local/lib64/libjavascriptcoregtk-3.0.so.0
#10 0x00007fadabfff920 in  ()
#11 0x000000000261b4f0 in  ()
Python Exception &lt;type 'exceptions.OverflowError'&gt; long too big to convert: 
Python Exception &lt;type 'exceptions.OverflowError'&gt; long too big to convert: 
#12 0xffffffffffffffff in  ()
#13 0xffffffffffffffff in  ()
#14 0x0000000001a19e10 in  ()
#15 0x0000000000000000 in  ()

(gdb) up
#1  0x00007fae15ece33b in WebCore::VisiblePosition::previous (this=0x7fff3dd371b0, 
    rule=WebCore::CanCrossEditingBoundary) at ../../Source/WebCore/editing/VisiblePosition.cpp:89
89          ASSERT(prev != *this);
(gdb) p prev
$1 = {m_deepPosition = {m_anchorNode = {m_ptr = 0x3fb7220}, m_offset = 0, m_anchorType = 0, 
    m_isLegacyEditingPosition = true}, m_affinity = WebCore::DOWNSTREAM}
(gdb) print this
$2 = (const WebCore::VisiblePosition * const) 0x7fff3dd371b0
(gdb) p &amp;prev
$3 = (WebCore::VisiblePosition *) 0x7fff3dd37080
(gdb) p *this
$4 = {m_deepPosition = {m_anchorNode = {m_ptr = 0x3fb7220}, m_offset = 0, m_anchorType = 0, 
    m_isLegacyEditingPosition = true}, m_affinity = WebCore::DOWNSTREAM}
(gdb) p pos
$5 = {m_anchorNode = {m_ptr = 0x2114740}, m_offset = 0, m_anchorType = 0, m_isLegacyEditingPosition = true}</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>