<html>
  <head>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <b>tl;dr:</b> by moving the location of the FindToolbar DOM node in
    Thunderbird, I managed to make the entire program crash in
    nsTypeAheadFind.cpp:990<br>
    <br>
    I'm trying to make Ctrl-F work with Thunderbird Conversations. I
    need to move the FindBar to make it visible even when the
    Conversation View is shown. Here's the DOM hierarchy:<br>
    <br>
    <tt><vbox><br>
        <browser id="multimessage" /><!-- this is where the
      conversation view lives --><br>
      <b>  <vbox></b><br>
          <hbox /><br>
          <hbox /><br>
          <deck /><br>
          <hbox><br>
            <browser /><!-- this is where messages are usually
      displayed --><br>
          </hbox><br>
          <splitter /><br>
          <vbox /><br>
      <b>    <findbar /></b><br>
        </vbox><br>
      </vbox></tt><br>
    <br>
    When the conversation view is shown, the vbox in bold is hidden.
    Thus, the findbar is hidden too. I decided to move the find bar as
    so, using the DOM inspector.<br>
    <br>
    <tt><vbox><br>
        <browser id="multimessage" /><!-- this is where the
      conversation view lives --><br>
      <b>  <vbox></b><br>
          <hbox /><br>
          <hbox /><br>
          <deck /><br>
          <hbox><br>
            <browser /><!-- this is where messages are usually
      displayed --><br>
          </hbox><br>
          <splitter /><br>
          <vbox /><br>
        </vbox></tt><tt><br>
      <b>  <findbar /></b></tt><br>
    <tt></vbox><br>
    </tt><br>
    I then change the findbar's browserid attribute to "multimessage",
    summon the error console and run:<br>
    <br>
    <tt>top.opener.document.getElementById("FindToolbar").onFindCommand()</tt><br>
    <br>
    As soon as I start typing something into the find bar, Thunderbird
    segfaults brutally. I tried to read the code, and I think I should
    call nsITypeAheadFind::SetDocShell somehow, but I can't seem to find
    the nsITypeAheadFind instance associated to the <findbar>.
    Moreover, I thought that changing the browserid attribute would do
    the trick since it's what Thunderbird is doing already.<br>
    <br>
    Even <b>without</b> changing the browserid attribute, it still
    segfaults.<br>
    <br>
    I'm a little bit puzzled as to why changing the mere location of a
    DOM node should make Thunderbird crash so badly. I'm really puzzled
    to any help would be highly appreciated!<br>
    <br>
    Thanks :),<br>
    <br>
    jonathan<br>
    <br>
  </body>
</html>