<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>87525</bug_id>
          
          <creation_ts>2012-05-25 11:52:54 -0700</creation_ts>
          <short_desc>[New MultiColumn] Create the flow thread and make sure children get placed inside it.</short_desc>
          <delta_ts>2012-05-25 13:36:42 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>634136</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2012-05-25 11:52:54 -0700</bug_when>
    <thetext>Create the flow thread and make sure children get placed inside it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634147</commentid>
    <comment_count>1</comment_count>
      <attachid>144119</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2012-05-25 11:57:43 -0700</bug_when>
    <thetext>Created attachment 144119
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634153</commentid>
    <comment_count>2</comment_count>
      <attachid>144119</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-05-25 12:08:59 -0700</bug_when>
    <thetext>Comment on attachment 144119
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=144119&amp;action=review

LGTM, other than the comments being a bit odd.  Won&apos;t this break the multi-column painting?  (since presumably the children used to be direct decendents of MultiColumBlock?)  Or does it happen to work since the flowThread is just a block and so it just seems to have an anonymous block inside it, but otherwise works?

&gt; Source/WebCore/rendering/RenderMultiColumnBlock.cpp:83
&gt; +        RenderBlock::addChild(m_flowThread); // Always put the flow thread at the end.

Interesting.  I thought regions made all their flow threads direct children of the body element.  I guess in that case, they can flow into any element, where here you&apos;re contained within the block marked for multicolumn?

&gt; Source/WebCore/rendering/RenderMultiColumnBlock.cpp:87
&gt; +    // of the flow thread itself.

It would be nice if the thread could be a non-displayed child of some form.  Since with the exception of render region, we don&apos;t generally have children which are not displayed.

&gt; Source/WebCore/rendering/RenderMultiColumnBlock.cpp:89
&gt; +        RenderBlock::addChild(newChild, beforeChild);

I&apos;m confused why the comment above says to always put the flow-thread at the end, when this code won&apos;t keep it at the end.  It seems the flow ends up always being the first child.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634176</commentid>
    <comment_count>3</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2012-05-25 12:28:34 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 144119 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=144119&amp;action=review
&gt; 
&gt; LGTM, other than the comments being a bit odd.  Won&apos;t this break the multi-column painting?  (since presumably the children used to be direct decendents of MultiColumBlock?)  Or does it happen to work since the flowThread is just a block and so it just seems to have an anonymous block inside it, but otherwise works?

This is a brand new implementation. It&apos;s not building on previous code. Nothing can &quot;break&quot; since nobody is using this code. It&apos;s all turned off in ToT. Painting is not implemented yet.

&gt; 
&gt; &gt; Source/WebCore/rendering/RenderMultiColumnBlock.cpp:83
&gt; &gt; +        RenderBlock::addChild(m_flowThread); // Always put the flow thread at the end.
&gt; 
&gt; Interesting.  I thought regions made all their flow threads direct children of the body element.  I guess in that case, they can flow into any element, where here you&apos;re contained within the block marked for multicolumn?

Yes, this is a difference (and the reason for the conceptual split between RenderNamedFlowThread and RenderFlowThread). Named flow threads are document-level. Multi-column (and eventually paged) flow threads are children of the block that spawned them.

&gt; 
&gt; &gt; Source/WebCore/rendering/RenderMultiColumnBlock.cpp:87
&gt; &gt; +    // of the flow thread itself.
&gt; 
&gt; It would be nice if the thread could be a non-displayed child of some form.  Since with the exception of render region, we don&apos;t generally have children which are not displayed.

The flow thread does get displayed. It just does so through the regions. It&apos;s not undisplayed though.
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderMultiColumnBlock.cpp:89
&gt; &gt; +        RenderBlock::addChild(newChild, beforeChild);
&gt; 
&gt; I&apos;m confused why the comment above says to always put the flow-thread at the end, when this code won&apos;t keep it at the end.  It seems the flow ends up always being the first child.

You&apos;re looking at the column set case not the flow thread case. The comment was on this line:

RenderBlock::addChild(m_flowThread); // Always put the flow thread at the end.

Which does put the flow thread at the end.

When I do get around to adding column sets (not yet implemented), they&apos;ll always be inserted before the flow thread, so this function doesn&apos;t have to special case that at all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634180</commentid>
    <comment_count>4</comment_count>
      <attachid>144119</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-25 12:31:44 -0700</bug_when>
    <thetext>Comment on attachment 144119
Patch

Attachment 144119 did not pass win-ews (win):
Output: http://queues.webkit.org/results/12791608</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634189</commentid>
    <comment_count>5</comment_count>
      <attachid>144119</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-05-25 12:36:10 -0700</bug_when>
    <thetext>Comment on attachment 144119
Patch

OK.  thanks.  You may need to fix Win.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634192</commentid>
    <comment_count>6</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2012-05-25 12:38:23 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 144119 [details])
&gt; OK.  thanks.  You may need to fix Win.

Yup, will do. Just need to add the multi-column files to RenderingAllInOne.cpp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634201</commentid>
    <comment_count>7</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2012-05-25 12:50:26 -0700</bug_when>
    <thetext>Fixed in r118552.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634251</commentid>
    <comment_count>8</comment_count>
      <attachid>144119</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-05-25 13:36:42 -0700</bug_when>
    <thetext>Comment on attachment 144119
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=144119&amp;action=review

&gt; Source/WebCore/rendering/RenderMultiColumnBlock.h:51
&gt; +
&gt;  private:
&gt; +    RenderMultiColumnFlowThread* m_flowThread;

An extra private here we could delete.

&gt; Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp:38
&gt; +RenderMultiColumnFlowThread::~RenderMultiColumnFlowThread()
&gt; +{
&gt; +}

Why was this added?

&gt; Source/WebCore/rendering/RenderMultiColumnFlowThread.h:37
&gt; +    ~RenderMultiColumnFlowThread();

Normally we explicitly make it virtual.

&gt; Source/WebCore/rendering/RenderMultiColumnSet.h:48
&gt; +    virtual bool isRenderMultiColumnSet() const OVERRIDE { return true; }

Should be private, not public.

&gt; Source/WebCore/rendering/RenderObject.h:366
&gt;      virtual bool isRenderNamedFlowThread() const { return false; }
&gt; +    
&gt; +    virtual bool isRenderMultiColumnSet() const { return false; }
&gt; +
&gt;      virtual bool isRenderScrollbarPart() const { return false; }

Why add these blank lines?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144119</attachid>
            <date>2012-05-25 11:57:43 -0700</date>
            <delta_ts>2012-05-25 13:36:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>6341</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExODU0NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI5IEBACisyMDEyLTA1LTI1ICBEYXZpZCBI
eWF0dCAgPGh5YXR0QGFwcGxlLmNvbT4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9ODc1MjUKKyAgICAgICAgCisgICAgICAgIEZvciB0aGUgbmV3IG11
bHRpLWNvbHVtbiBsYXlvdXQsIGNyZWF0ZSBhIGZsb3cgdGhyZWFkIGFuZCBtYWtlIHN1cmUgdGhl
IGNoaWxkcmVuIGdldCBwdXQgaW5zaWRlIGl0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1uQmxvY2su
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTXVsdGlDb2x1bW5CbG9jazo6UmVuZGVyTXVs
dGlDb2x1bW5CbG9jayk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNdWx0aUNvbHVtbkJsb2Nr
OjphZGRDaGlsZCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyTXVsdGlDb2x1bW5CbG9jay5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChSZW5k
ZXJNdWx0aUNvbHVtbkJsb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck11bHRpQ29sdW1u
QmxvY2s6OmZsb3dUaHJlYWQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVt
bkZsb3dUaHJlYWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTXVsdGlDb2x1bW5GbG93
VGhyZWFkOjp+UmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFkKToKKyAgICAgICAgKFdlYkNvcmUp
OgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQuaDoKKyAg
ICAgICAgKFJlbmRlck11bHRpQ29sdW1uRmxvd1RocmVhZCk6CisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlck11bHRpQ29sdW1uU2V0Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVj
dC5oOgorICAgICAgICAoUmVuZGVyT2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck9i
amVjdDo6aXNSZW5kZXJNdWx0aUNvbHVtblNldCk6CisKIDIwMTItMDUtMjUgIEtlbiBCdWNoYW5h
biAgPGtlbnJiQGNocm9taXVtLm9yZz4KIAogICAgICAgICBMYXlvdXQgcm9vdCBub3QgZ2V0dGlu
ZyBjbGVhcmVkIGZvciBhbm9ueW1vdXMgcmVuZGVyZXJzIGdldGluZyBkZXN0cm95ZWQKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVtbkJsb2NrLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5CbG9j
ay5jcHAJKHJldmlzaW9uIDExODUzNikKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJNdWx0aUNvbHVtbkJsb2NrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjUsNiArMjUsNyBAQAog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUmVuZGVyTXVsdGlDb2x1bW5CbG9jay5o
IgorI2luY2x1ZGUgIlJlbmRlck11bHRpQ29sdW1uRmxvd1RocmVhZC5oIgogCiB1c2luZyBuYW1l
c3BhY2Ugc3RkOwogCkBAIC0zMiw2ICszMyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogUmVu
ZGVyTXVsdGlDb2x1bW5CbG9jazo6UmVuZGVyTXVsdGlDb2x1bW5CbG9jayhOb2RlKiBub2RlKQog
ICAgIDogUmVuZGVyQmxvY2sobm9kZSkKKyAgICAsIG1fZmxvd1RocmVhZCgwKQogICAgICwgbV9j
b2x1bW5Db3VudCgxKQogICAgICwgbV9jb2x1bW5XaWR0aCgwKQogewpAQCAtNzMsNiArNzUsMjIg
QEAgYm9vbCBSZW5kZXJNdWx0aUNvbHVtbkJsb2NrOjpyZWNvbXB1dGVMbwogICAgIHJldHVybiBy
ZWxheW91dENoaWxkcmVuOwogfQogCit2b2lkIFJlbmRlck11bHRpQ29sdW1uQmxvY2s6OmFkZENo
aWxkKFJlbmRlck9iamVjdCogbmV3Q2hpbGQsIFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQpCit7
CisgICAgaWYgKCFtX2Zsb3dUaHJlYWQpIHsKKyAgICAgICAgbV9mbG93VGhyZWFkID0gbmV3IChy
ZW5kZXJBcmVuYSgpKSBSZW5kZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQoZG9jdW1lbnQoKSk7Cisg
ICAgICAgIG1fZmxvd1RocmVhZC0+c2V0U3R5bGUoUmVuZGVyU3R5bGU6OmNyZWF0ZUFub255bW91
c1N0eWxlV2l0aERpc3BsYXkoc3R5bGUoKSwgQkxPQ0spKTsKKyAgICAgICAgUmVuZGVyQmxvY2s6
OmFkZENoaWxkKG1fZmxvd1RocmVhZCk7IC8vIEFsd2F5cyBwdXQgdGhlIGZsb3cgdGhyZWFkIGF0
IHRoZSBlbmQuCisgICAgfQorCisgICAgLy8gQ29sdW1uIHNldHMgYXJlIHNpYmxpbmdzIG9mIHRo
ZSBmbG93IHRocmVhZC4gQWxsIGNoaWxkcmVuIGRlc2lnbmVkIHRvIGJlIGluIHRoZSBjb2x1bW5z
LCBob3dldmVyLCBhcmUgcGFydAorICAgIC8vIG9mIHRoZSBmbG93IHRocmVhZCBpdHNlbGYuCisg
ICAgaWYgKG5ld0NoaWxkLT5pc1JlbmRlck11bHRpQ29sdW1uU2V0KCkpCisgICAgICAgIFJlbmRl
ckJsb2NrOjphZGRDaGlsZChuZXdDaGlsZCwgYmVmb3JlQ2hpbGQpOworICAgIGVsc2UKKyAgICAg
ICAgbV9mbG93VGhyZWFkLT5hZGRDaGlsZChuZXdDaGlsZCwgYmVmb3JlQ2hpbGQpOworfQorCiBj
b25zdCBjaGFyKiBSZW5kZXJNdWx0aUNvbHVtbkJsb2NrOjpyZW5kZXJOYW1lKCkgY29uc3QKIHsg
ICAgCiAgICAgaWYgKGlzRmxvYXRpbmcoKSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJNdWx0aUNvbHVtbkJsb2NrLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1uQmxvY2suaAkocmV2aXNpb24gMTE4NTM2KQorKysg
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1uQmxvY2suaAkod29ya2lu
ZyBjb3B5KQpAQCAtMzEsNiArMzEsOCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNz
IFJlbmRlck11bHRpQ29sdW1uRmxvd1RocmVhZDsKKwogY2xhc3MgUmVuZGVyTXVsdGlDb2x1bW5C
bG9jayA6IHB1YmxpYyBSZW5kZXJCbG9jayB7CiBwdWJsaWM6CiAgICAgUmVuZGVyTXVsdGlDb2x1
bW5CbG9jayhOb2RlKik7CkBAIC00MSw3ICs0MywxMyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwg
Ym9vbCByZWNvbXB1dGVMb2dpY2FsV2lkdGgoKTsKICAgICB2b2lkIGNvbXB1dGVDb2x1bW5Db3Vu
dEFuZFdpZHRoKCk7CiAKKyAgICB2aXJ0dWFsIHZvaWQgYWRkQ2hpbGQoUmVuZGVyT2JqZWN0KiBu
ZXdDaGlsZCwgUmVuZGVyT2JqZWN0KiBiZWZvcmVDaGlsZCA9IDApIE9WRVJSSURFOworCisgICAg
UmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFkKiBmbG93VGhyZWFkKCkgY29uc3QgeyByZXR1cm4g
bV9mbG93VGhyZWFkOyB9CisKIHByaXZhdGU6CisgICAgUmVuZGVyTXVsdGlDb2x1bW5GbG93VGhy
ZWFkKiBtX2Zsb3dUaHJlYWQ7CisKICAgICB1bnNpZ25lZCBtX2NvbHVtbkNvdW50OyAgIC8vIFRo
ZSBkZWZhdWx0IGNvbHVtbiBjb3VudC93aWR0aCB0aGF0IGFyZSBiYXNlZCBvZmYgb3VyIGNvbnRh
aW5pbmcgYmxvY2sgd2lkdGguIFRoZXNlIHZhbHVlcyByZXByZXNlbnQgb25seSB0aGUgZGVmYXVs
dCwKICAgICBMYXlvdXRVbml0IG1fY29sdW1uV2lkdGg7IC8vIHNpbmNlIGEgbXVsdGktY29sdW1u
IGJsb2NrIHRoYXQgaXMgc3BsaXQgYWNyb3NzIHZhcmlhYmxlIHdpZHRoIHBhZ2VzIG9yIHJlZ2lv
bnMgd2lsbCBoYXZlIGRpZmZlcmVudCBjb2x1bW4gY291bnRzIGFuZCB3aWR0aHMgaW4gZWFjaC4K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRoZXNlIHZhbHVlcyB3aWxsIGJlIGNh
Y2hlZCAoZXZlbnR1YWxseSkgZm9yIG11bHRpLWNvbHVtbiBibG9ja3MuCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFkLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5GbG93VGhy
ZWFkLmNwcAkocmV2aXNpb24gMTE4NTM2KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlck11bHRpQ29sdW1uRmxvd1RocmVhZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMzLDYgKzMz
LDEwIEBAIFJlbmRlck11bHRpQ29sdW1uRmxvd1RocmVhZDo6UmVuZGVyTXVsdGkKIHsKIH0KIAor
UmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFkOjp+UmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFk
KCkKK3sKK30KKwogY29uc3QgY2hhciogUmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFkOjpyZW5k
ZXJOYW1lKCkgY29uc3QKIHsgICAgCiAgICAgcmV0dXJuICJSZW5kZXJNdWx0aUNvbHVtbkZsb3dU
aHJlYWQiOwpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1u
Rmxvd1RocmVhZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQuaAkocmV2aXNpb24gMTE4NTM2KQorKysgU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1uRmxvd1RocmVhZC5oCSh3b3JraW5nIGNv
cHkpCkBAIC0zNCw3ICszNCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIFJlbmRlck11
bHRpQ29sdW1uRmxvd1RocmVhZCA6IHB1YmxpYyBSZW5kZXJGbG93VGhyZWFkIHsKIHB1YmxpYzoK
ICAgICBSZW5kZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQoTm9kZSopOwotICAgIAorICAgIH5SZW5k
ZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQoKTsKKwogcHJpdmF0ZToKICAgICB2aXJ0dWFsIGNvbnN0
IGNoYXIqIHJlbmRlck5hbWUoKSBjb25zdCBPVkVSUklERTsKIH07CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5TZXQuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5TZXQuaAkocmV2aXNpb24gMTE4
NTM2KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck11bHRpQ29sdW1uU2V0LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTQ1LDYgKzQ1LDggQEAgY2xhc3MgUmVuZGVyTXVsdGlDb2x1bW5T
ZXQgOiBwdWJsaWMgUmVuZAogcHVibGljOgogICAgIFJlbmRlck11bHRpQ29sdW1uU2V0KE5vZGUq
LCBSZW5kZXJGbG93VGhyZWFkKik7CiAgICAgCisgICAgdmlydHVhbCBib29sIGlzUmVuZGVyTXVs
dGlDb2x1bW5TZXQoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiB0cnVlOyB9CisKIHByaXZhdGU6
CiAgICAgdmlydHVhbCBjb25zdCBjaGFyKiByZW5kZXJOYW1lKCkgY29uc3Q7CiB9OwpJbmRleDog
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAkocmV2aXNpb24gMTE4NTM2KQor
KysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0zNjAsNiArMzYwLDkgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCBib29sIGlzUmVuZGVy
Rmxvd1RocmVhZCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIGlz
UmVuZGVyTmFtZWRGbG93VGhyZWFkKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICAKKyAg
ICB2aXJ0dWFsIGJvb2wgaXNSZW5kZXJNdWx0aUNvbHVtblNldCgpIGNvbnN0IHsgcmV0dXJuIGZh
bHNlOyB9CisKICAgICB2aXJ0dWFsIGJvb2wgaXNSZW5kZXJTY3JvbGxiYXJQYXJ0KCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KICAgICBib29sIGNhbkhhdmVSZWdpb25TdHlsZSgpIGNvbnN0IHsg
cmV0dXJuIGlzUmVuZGVyQmxvY2soKSAmJiAhaXNBbm9ueW1vdXMoKSAmJiAhaXNSZW5kZXJGbG93
VGhyZWFkKCk7IH0KIAo=
</data>
<flag name="review"
          id="150857"
          type_id="1"
          status="+"
          setter="eric"
    />
    <flag name="commit-queue"
          id="150863"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
      

    </bug>

</bugzilla>