<?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>85437</bug_id>
          
          <creation_ts>2012-05-02 17:17:01 -0700</creation_ts>
          <short_desc>Move RenderLayers z-index lists dirtying to post style change</short_desc>
          <delta_ts>2012-05-08 19:18:00 -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>All</rep_platform>
          <op_sys>All</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="Julien Chaffraix">jchaffraix</reporter>
          <assigned_to name="Julien Chaffraix">jchaffraix</assigned_to>
          <cc>eric</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>614843</commentid>
    <comment_count>0</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-05-02 17:17:01 -0700</bug_when>
    <thetext>This is a follow-up of bug 84920, currently RenderLayer z-index list dirtying is done in RenderBoxModelObject::styleWillChange.

This has one downside: to tighten our code, we would rather be able to determine when we are switch from being a stacking context to a non-stacking context. We could add a pre-style change hook in RenderLayer but we already have a post-style change hook in RenderLayer::styleChanged. To avoid duplication, we should try to move the code there.

As a side note, this would also make the layer handle its low-level operation instead of delegating that to the associated RenderBoxModelObject.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>618111</commentid>
    <comment_count>1</comment_count>
      <attachid>140623</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-05-07 17:01:23 -0700</bug_when>
    <thetext>Created attachment 140623
Proposed refactoring 1: Move code and added handling for the stacking context transition.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>618739</commentid>
    <comment_count>2</comment_count>
      <attachid>140623</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-05-08 13:08:21 -0700</bug_when>
    <thetext>Comment on attachment 140623
Proposed refactoring 1: Move code and added handling for the stacking context transition.

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

&gt; Source/WebCore/rendering/RenderLayer.cpp:195
&gt; +    m_zOrderListsDirty = isStackingContext();

This needs a “why” comment.

&gt; Source/WebCore/rendering/RenderLayer.cpp:4702
&gt; +    // FIXME: RenderLayer already handles visibility changes through our visiblity dirty bits. This logic could
&gt; +    // likely be folded along with the rest.
&gt; +    if (oldStyle-&gt;zIndex() != renderer()-&gt;style()-&gt;zIndex() || oldStyle-&gt;visibility() != renderer()-&gt;style()-&gt;visibility()) {
&gt; +        dirtyStackingContextZOrderLists();
&gt; +        if (isStackingContext)
&gt; +            dirtyZOrderLists();
&gt; +    }

This work is redundant if isStackingContext != wasStackingContext since dirtyStackingContextZOrderLists and dirtyZOrderLists were already called as necessary. I think it would be better to structure the code so we don’t do it twice. Could be as simple as putting a return inside the earlier code.

&gt; Source/WebCore/rendering/RenderLayer.h:620
&gt; +    bool layerWithStyleIsStackingContext(const RenderStyle* style) const { return !style-&gt;hasAutoZIndex() || renderer()-&gt;isRenderView(); }

The naming here is strange. I think that it could be named isStackingContext just like the public function and just be an overload that takes an explicit style argument.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619004</commentid>
    <comment_count>3</comment_count>
      <attachid>140827</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-05-08 17:32:37 -0700</bug_when>
    <thetext>Created attachment 140827
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619102</commentid>
    <comment_count>4</comment_count>
      <attachid>140827</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-08 19:17:56 -0700</bug_when>
    <thetext>Comment on attachment 140827
Patch for landing

Clearing flags on attachment: 140827

Committed r116480: &lt;http://trac.webkit.org/changeset/116480&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619103</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-08 19:18:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140623</attachid>
            <date>2012-05-07 17:01:23 -0700</date>
            <delta_ts>2012-05-08 17:32:30 -0700</delta_ts>
            <desc>Proposed refactoring 1: Move code and added handling for the stacking context transition.</desc>
            <filename>bug-85437-20120507170122.patch</filename>
            <type>text/plain</type>
            <size>7771</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2MzU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGFjNWJlZTEyZDQxZTVm
MzJmMTA4YjNiY2JjMWQ0NDlkYmFjYjRmZS4uZDAwNzliYWRmZjU5OGE1ZTg5ZmFkYmE1MjIyZGRi
MGM5NWEzODgwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTA3ICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIE1vdmUgUmVu
ZGVyTGF5ZXJzIHotaW5kZXggbGlzdHMgZGlydHlpbmcgdG8gcG9zdCBzdHlsZSBjaGFuZ2UKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1NDM3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gZXhwZWN0ZWQg
Y2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgIFRoaXMgY2hhbmdlIG1vdmVzIHRoZSB6LW9y
ZGVyIGxpc3RzIHRvIFJlbmRlckxheWVyOjpzdHlsZUNoYW5nZWQuIEFzIHBhcnQgb2YgdGhpcwor
ICAgICAgICBjaGFuZ2UsIGFsc28gYWRkZWQgcHJvcGVyIGhhbmRsaW5nIG9mIHN0YWNraW5nIGNv
bnRleHQgdHJhbnNpdGlvbi4gVGhpcyBlbmFibGVkCisgICAgICAgIHVzIHRvIHRpZ2h0ZW4gbW9y
ZSBvZiB0aGUgZGlydHlaT3JkZXJMaXN0cyAvIGNsZWFyWk9yZGVyTGlzdHMgY29kZS4KKworICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6c3R5bGVXaWxsQ2hhbmdlKToKKyAgICAgICAgUmVt
b3ZlZCB0aGlzIGNvZGUsIG1vdmVkIHRvIHVwZGF0ZVN0YWNraW5nQ29udGV4dHNBZnRlclN0eWxl
Q2hhbmdlLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlckxheWVyOjpSZW5kZXJMYXllcik6CisgICAgICAgIE9ubHkgc3RhY2tp
bmcgY29udGV4dHMgc3RhcnQgd2l0aCBkaXJ0eSB6LW9yZGVyIGxpc3RzLgorCisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJMYXllcjo6ZGlydHlaT3JkZXJMaXN0cyk6CisgICAgICAgIEFkZGVkIGFu
IEFTU0VSVC4KKworICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnVwZGF0ZVN0YWNraW5n
Q29udGV4dHNBZnRlclN0eWxlQ2hhbmdlKToKKyAgICAgICAgUmVmYWN0b3JlZCB0aGUgY29kZSB0
byBoYW5kbGUgdGhlIHRyYW5zaXRpb24gYmV0d2VlbiBzdGFja2luZyBjb250ZXh0IHN0YXR1cy4K
KworICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnN0eWxlQ2hhbmdlZCk6CisgICAgICAg
IEFkZGVkIGEgY2FsbCB0byB1cGRhdGVTdGFja2luZ0NvbnRleHRzQWZ0ZXJTdHlsZUNoYW5nZS4K
KworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5oOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyTGF5ZXI6OmlzU3RhY2tpbmdDb250ZXh0KToKKyAgICAgICAgQWRkZWQgYSBjYWxsIHRv
IHRoZSBuZXh0IGZ1bmN0aW9uLgorCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6bGF5
ZXJXaXRoU3R5bGVJc1N0YWNraW5nQ29udGV4dCk6CisgICAgICAgIEZhY3RvcmVkIHRoZSBpc1N0
YWNraW5nQ29udGV4dCBsb2dpYyBoZXJlIHNvIHRoYXQgd2UgY2FuIHJldXNlIGl0IGluc2lkZQor
ICAgICAgICB1cGRhdGVTdGFja2luZ0NvbnRleHRzQWZ0ZXJTdHlsZUNoYW5nZS4KKworICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmNsZWFyWk9yZGVyTGlzdHMpOgorICAgICAgICBBZGRl
ZCBhbiBBU1NFUlQuCisKIDIwMTItMDUtMDcgIFJheW1vbmQgVG95ICA8cnRveUBnb29nbGUuY29t
PgogCiAgICAgICAgIENvbnZvbHZlck5vZGUgc2V0QnVmZmVyKCkgc2hvdWxkIG5vdCBBU1NFUlQg
b24gbnVsbCBidWZmZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCb3hNb2RlbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94
TW9kZWxPYmplY3QuY3BwCmluZGV4IGVlZDM1NzdhM2QwZTQwZmJlNGVlY2Y4NWNjYWRkMzNkOWY4
ZGJjMmUuLjc4YWY1NTkyZDA3NmJiYzA1Y2U2ZTM1NWEwZjM5ZTRkNThmNTQxOTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcApAQCAt
NDExLDE1ICs0MTEsNiBAQCB2b2lkIFJlbmRlckJveE1vZGVsT2JqZWN0OjpzdHlsZVdpbGxDaGFu
Z2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0eQogICAgICAgICAgICAgICAg
IHJlcGFpbnQoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotCi0gICAgICAgIGlmIChoYXNM
YXllcigpCi0gICAgICAgICAgICAmJiAob2xkU3R5bGUtPmhhc0F1dG9aSW5kZXgoKSAhPSBuZXdT
dHlsZS0+aGFzQXV0b1pJbmRleCgpCi0gICAgICAgICAgICAgICAgfHwgb2xkU3R5bGUtPnpJbmRl
eCgpICE9IG5ld1N0eWxlLT56SW5kZXgoKQotICAgICAgICAgICAgICAgIHx8IG9sZFN0eWxlLT52
aXNpYmlsaXR5KCkgIT0gbmV3U3R5bGUtPnZpc2liaWxpdHkoKSkpIHsKLSAgICAgICAgICAgIGxh
eWVyKCktPmRpcnR5U3RhY2tpbmdDb250ZXh0Wk9yZGVyTGlzdHMoKTsKLSAgICAgICAgICAgIGlm
IChvbGRTdHlsZS0+aGFzQXV0b1pJbmRleCgpICE9IG5ld1N0eWxlLT5oYXNBdXRvWkluZGV4KCkg
fHwgb2xkU3R5bGUtPnZpc2liaWxpdHkoKSAhPSBuZXdTdHlsZS0+dmlzaWJpbGl0eSgpKQotICAg
ICAgICAgICAgICAgIGxheWVyKCktPmRpcnR5Wk9yZGVyTGlzdHMoKTsKLSAgICAgICAgfQogICAg
IH0KIAogICAgIFJlbmRlck9iamVjdDo6c3R5bGVXaWxsQ2hhbmdlKGRpZmYsIG5ld1N0eWxlKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDMzMzc5Y2YyNDgz
YjcyZTc4NzUwN2QxZWJlMTk0NTNhZjNhMGFkMjAuLjQxM2Q1YTZlMzljZTJkNjNkMTkzNjU1ODlm
MmM0NmMxMDkwZTVjNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNw
cApAQCAtMTQ3LDcgKzE0Nyw2IEBAIHZvaWQgQ2xpcFJlY3RzOjpkZXN0cm95KFJlbmRlckFyZW5h
KiByZW5kZXJBcmVuYSkKIFJlbmRlckxheWVyOjpSZW5kZXJMYXllcihSZW5kZXJCb3hNb2RlbE9i
amVjdCogcmVuZGVyZXIpCiAgICAgOiBtX2luUmVzaXplTW9kZShmYWxzZSkKICAgICAsIG1fc2Ny
b2xsRGltZW5zaW9uc0RpcnR5KHRydWUpCi0gICAgLCBtX3pPcmRlckxpc3RzRGlydHkodHJ1ZSkK
ICAgICAsIG1fbm9ybWFsRmxvd0xpc3REaXJ0eSh0cnVlKQogICAgICwgbV91c2VkVHJhbnNwYXJl
bmN5KGZhbHNlKQogICAgICwgbV9wYWludGluZ0luc2lkZVJlZmxlY3Rpb24oZmFsc2UpCkBAIC0x
OTMsNiArMTkyLDcgQEAgUmVuZGVyTGF5ZXI6OlJlbmRlckxheWVyKFJlbmRlckJveE1vZGVsT2Jq
ZWN0KiByZW5kZXJlcikKICAgICAsIG1fcmVzaXplcigwKQogewogICAgIG1faXNOb3JtYWxGbG93
T25seSA9IHNob3VsZEJlTm9ybWFsRmxvd09ubHkoKTsKKyAgICBtX3pPcmRlckxpc3RzRGlydHkg
PSBpc1N0YWNraW5nQ29udGV4dCgpOwogCiAgICAgU2Nyb2xsYWJsZUFyZWE6OnNldENvbnN0cmFp
bnNTY3JvbGxpbmdUb0NvbnRlbnRFZGdlKGZhbHNlKTsKIApAQCAtNDQ2Miw4ICs0NDYyLDcgQEAg
c3RhdGljIGlubGluZSBib29sIGNvbXBhcmVaSW5kZXgoUmVuZGVyTGF5ZXIqIGZpcnN0LCBSZW5k
ZXJMYXllciogc2Vjb25kKQogdm9pZCBSZW5kZXJMYXllcjo6ZGlydHlaT3JkZXJMaXN0cygpCiB7
CiAgICAgQVNTRVJUKG1fbGF5ZXJMaXN0TXV0YXRpb25BbGxvd2VkKTsKLSAgICAvLyBXZSBjYW5u
b3QgYXNzdW1lIHRoYXQgd2UgYXJlIGNhbGxlZCBvbiBhIHN0YWNraW5nIGNvbnRleHQgYXMgaXQK
LSAgICAvLyBpcyBjYWxsZWQgd2hlbiB3ZSBqdXN0IGdvdCBkZW1vdGVkIGZyb20gYmVpbmcgYSBz
dGFja2luZyBjb250ZXh0LgorICAgIEFTU0VSVChpc1N0YWNraW5nQ29udGV4dCgpKTsKIAogICAg
IGlmIChtX3Bvc1pPcmRlckxpc3QpCiAgICAgICAgIG1fcG9zWk9yZGVyTGlzdC0+Y2xlYXIoKTsK
QEAgLTQ2NzksNiArNDY3OCwzMCBAQCBib29sIFJlbmRlckxheWVyOjppc1NlbGZQYWludGluZ0xh
eWVyKCkgY29uc3QKICAgICAgICAgfHwgcmVuZGVyZXIoKS0+aXNSZW5kZXJJRnJhbWUoKTsKIH0K
IAordm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlU3RhY2tpbmdDb250ZXh0c0FmdGVyU3R5bGVDaGFu
Z2UoY29uc3QgUmVuZGVyU3R5bGUqIG9sZFN0eWxlKQoreworICAgIGlmICghb2xkU3R5bGUpCisg
ICAgICAgIHJldHVybjsKKworICAgIGJvb2wgd2FzU3RhY2tpbmdDb250ZXh0ID0gbGF5ZXJXaXRo
U3R5bGVJc1N0YWNraW5nQ29udGV4dChvbGRTdHlsZSk7CisgICAgYm9vbCBpc1N0YWNraW5nQ29u
dGV4dCA9IHRoaXMtPmlzU3RhY2tpbmdDb250ZXh0KCk7CisgICAgaWYgKGlzU3RhY2tpbmdDb250
ZXh0ICE9IHdhc1N0YWNraW5nQ29udGV4dCkgeworICAgICAgICBkaXJ0eVN0YWNraW5nQ29udGV4
dFpPcmRlckxpc3RzKCk7CisgICAgICAgIGlmIChpc1N0YWNraW5nQ29udGV4dCkKKyAgICAgICAg
ICAgIGRpcnR5Wk9yZGVyTGlzdHMoKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY2xlYXJa
T3JkZXJMaXN0cygpOworICAgIH0KKworICAgIC8vIEZJWE1FOiBSZW5kZXJMYXllciBhbHJlYWR5
IGhhbmRsZXMgdmlzaWJpbGl0eSBjaGFuZ2VzIHRocm91Z2ggb3VyIHZpc2libGl0eSBkaXJ0eSBi
aXRzLiBUaGlzIGxvZ2ljIGNvdWxkCisgICAgLy8gbGlrZWx5IGJlIGZvbGRlZCBhbG9uZyB3aXRo
IHRoZSByZXN0LgorICAgIGlmIChvbGRTdHlsZS0+ekluZGV4KCkgIT0gcmVuZGVyZXIoKS0+c3R5
bGUoKS0+ekluZGV4KCkgfHwgb2xkU3R5bGUtPnZpc2liaWxpdHkoKSAhPSByZW5kZXJlcigpLT5z
dHlsZSgpLT52aXNpYmlsaXR5KCkpIHsKKyAgICAgICAgZGlydHlTdGFja2luZ0NvbnRleHRaT3Jk
ZXJMaXN0cygpOworICAgICAgICBpZiAoaXNTdGFja2luZ0NvbnRleHQpCisgICAgICAgICAgICBk
aXJ0eVpPcmRlckxpc3RzKCk7CisgICAgfQorfQorCiBzdGF0aWMgYm9vbCBvdmVyZmxvd0Nhbkhh
dmVBU2Nyb2xsYmFyKEVPdmVyZmxvdyBvdmVyZmxvdykKIHsKICAgICByZXR1cm4gb3ZlcmZsb3cg
PT0gT0FVVE8gfHwgb3ZlcmZsb3cgPT0gT1NDUk9MTCB8fCBvdmVyZmxvdyA9PSBPT1ZFUkxBWTsK
QEAgLTQ3MzMsNyArNDc1Niw4IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnN0eWxlQ2hhbmdlZChTdHls
ZURpZmZlcmVuY2UsIGNvbnN0IFJlbmRlclN0eWxlKiBvbGRTdHlsZSkKICAgICAgICAgZGVsZXRl
IG1fbWFycXVlZTsKICAgICAgICAgbV9tYXJxdWVlID0gMDsKICAgICB9Ci0gICAgCisKKyAgICB1
cGRhdGVTdGFja2luZ0NvbnRleHRzQWZ0ZXJTdHlsZUNoYW5nZShvbGRTdHlsZSk7CiAgICAgdXBk
YXRlU2Nyb2xsYmFyc0FmdGVyU3R5bGVDaGFuZ2Uob2xkU3R5bGUpOwogCiAgICAgaWYgKCFoYXNS
ZWZsZWN0aW9uKCkgJiYgbV9yZWZsZWN0aW9uKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXIuaAppbmRleCA5NWMwZjM5MzNjODE3NTk5YjhkNjE3NTZjYTU0YjQ3ZjcxOTRlMjM5Li4x
OGY0ZjM3N2M1YTdiMjAyNzg0ZmY5MjZmYTY1ZmI0YjcxMDM3MzFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaApAQCAtMzgyLDcgKzM4Miw3IEBAIHB1YmxpYzoKICAgICAv
LyBHZXQgdGhlIGVuY2xvc2luZyBzdGFja2luZyBjb250ZXh0IGZvciB0aGlzIGxheWVyLiAgQSBz
dGFja2luZyBjb250ZXh0IGlzIGEgbGF5ZXIKICAgICAvLyB0aGF0IGhhcyBhIG5vbi1hdXRvIHot
aW5kZXguCiAgICAgUmVuZGVyTGF5ZXIqIHN0YWNraW5nQ29udGV4dCgpIGNvbnN0OwotICAgIGJv
b2wgaXNTdGFja2luZ0NvbnRleHQoKSBjb25zdCB7IHJldHVybiAhaGFzQXV0b1pJbmRleCgpIHx8
IHJlbmRlcmVyKCktPmlzUmVuZGVyVmlldygpOyB9CisgICAgYm9vbCBpc1N0YWNraW5nQ29udGV4
dCgpIGNvbnN0IHsgcmV0dXJuIGxheWVyV2l0aFN0eWxlSXNTdGFja2luZ0NvbnRleHQocmVuZGVy
ZXIoKS0+c3R5bGUoKSk7IH0KIAogICAgIHZvaWQgZGlydHlaT3JkZXJMaXN0cygpOwogICAgIHZv
aWQgZGlydHlTdGFja2luZ0NvbnRleHRaT3JkZXJMaXN0cygpOwpAQCAtNDQzLDcgKzQ0Myw2IEBA
IHB1YmxpYzoKICAgICB2b2lkIGNvbnZlcnRUb0xheWVyQ29vcmRzKGNvbnN0IFJlbmRlckxheWVy
KiBhbmNlc3RvckxheWVyLCBMYXlvdXRQb2ludCYgbG9jYXRpb24pIGNvbnN0OwogICAgIHZvaWQg
Y29udmVydFRvTGF5ZXJDb29yZHMoY29uc3QgUmVuZGVyTGF5ZXIqIGFuY2VzdG9yTGF5ZXIsIExh
eW91dFJlY3QmKSBjb25zdDsKIAotICAgIGJvb2wgaGFzQXV0b1pJbmRleCgpIGNvbnN0IHsgcmV0
dXJuIHJlbmRlcmVyKCktPnN0eWxlKCktPmhhc0F1dG9aSW5kZXgoKTsgfQogICAgIGludCB6SW5k
ZXgoKSBjb25zdCB7IHJldHVybiByZW5kZXJlcigpLT5zdHlsZSgpLT56SW5kZXgoKTsgfQogCiAg
ICAgZW51bSBQYWludExheWVyRmxhZyB7CkBAIC02MTgsNiArNjE3LDcgQEAgcHJpdmF0ZToKIAog
ICAgIHZvaWQgdXBkYXRlTm9ybWFsRmxvd0xpc3QoKTsKIAorICAgIGJvb2wgbGF5ZXJXaXRoU3R5
bGVJc1N0YWNraW5nQ29udGV4dChjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUpIGNvbnN0IHsgcmV0
dXJuICFzdHlsZS0+aGFzQXV0b1pJbmRleCgpIHx8IHJlbmRlcmVyKCktPmlzUmVuZGVyVmlldygp
OyB9CiAgICAgYm9vbCBpc0RpcnR5U3RhY2tpbmdDb250ZXh0KCkgY29uc3QgeyByZXR1cm4gbV96
T3JkZXJMaXN0c0RpcnR5ICYmIGlzU3RhY2tpbmdDb250ZXh0KCk7IH0KIAogICAgIHZvaWQgY29t
cHV0ZVJlcGFpbnRSZWN0cyhMYXlvdXRQb2ludCogb2Zmc2V0RnJvbVJvb3QgPSAwKTsKQEAgLTYy
OSw2ICs2MjksOCBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBzaG91bGRSZXBhaW50QWZ0ZXJMYXlv
dXQoKSBjb25zdDsKIAorICAgIHZvaWQgdXBkYXRlU3RhY2tpbmdDb250ZXh0c0FmdGVyU3R5bGVD
aGFuZ2UoY29uc3QgUmVuZGVyU3R5bGUqIG9sZFN0eWxlKTsKKwogICAgIHZvaWQgdXBkYXRlU2Ny
b2xsYmFyc0FmdGVyU3R5bGVDaGFuZ2UoY29uc3QgUmVuZGVyU3R5bGUqIG9sZFN0eWxlKTsKICAg
ICB2b2lkIHVwZGF0ZVNjcm9sbGJhcnNBZnRlckxheW91dCgpOwogCkBAIC05MzYsNiArOTM4LDgg
QEAgcHJpdmF0ZToKIAogaW5saW5lIHZvaWQgUmVuZGVyTGF5ZXI6OmNsZWFyWk9yZGVyTGlzdHMo
KQogeworICAgIEFTU0VSVCghaXNTdGFja2luZ0NvbnRleHQoKSk7CisKICAgICBpZiAobV9wb3Na
T3JkZXJMaXN0KSB7CiAgICAgICAgIGRlbGV0ZSBtX3Bvc1pPcmRlckxpc3Q7CiAgICAgICAgIG1f
cG9zWk9yZGVyTGlzdCA9IDA7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140827</attachid>
            <date>2012-05-08 17:32:37 -0700</date>
            <delta_ts>2012-05-08 19:17:56 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-85437-20120508173235.patch</filename>
            <type>text/plain</type>
            <size>7884</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2NDU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTQxMGJkYjlhYjYyNzQ2
NGViYWZmM2M4ZmVmM2YzYjAwN2FlNTczOS4uYTAyMjcxM2ZiOTRjN2QxMzI4YTdmOWFkM2MwZGFl
NTIxZDBhOTMzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTA4ICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIE1vdmUgUmVu
ZGVyTGF5ZXJzIHotaW5kZXggbGlzdHMgZGlydHlpbmcgdG8gcG9zdCBzdHlsZSBjaGFuZ2UKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1NDM3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgTm8gZXhwZWN0ZWQgY2hh
bmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgIFRoaXMgY2hhbmdlIG1vdmVzIHRoZSB6LW9yZGVy
IGxpc3RzIHRvIFJlbmRlckxheWVyOjpzdHlsZUNoYW5nZWQuIEFzIHBhcnQgb2YgdGhpcworICAg
ICAgICBjaGFuZ2UsIGFsc28gYWRkZWQgcHJvcGVyIGhhbmRsaW5nIG9mIHN0YWNraW5nIGNvbnRl
eHQgdHJhbnNpdGlvbi4gVGhpcyBlbmFibGVkCisgICAgICAgIHVzIHRvIHRpZ2h0ZW4gbW9yZSBv
ZiB0aGUgZGlydHlaT3JkZXJMaXN0cyAvIGNsZWFyWk9yZGVyTGlzdHMgY29kZS4KKworICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6c3R5bGVXaWxsQ2hhbmdlKToKKyAgICAgICAgUmVtb3Zl
ZCB0aGlzIGNvZGUsIG1vdmVkIHRvIHVwZGF0ZVN0YWNraW5nQ29udGV4dHNBZnRlclN0eWxlQ2hh
bmdlLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckxheWVyOjpSZW5kZXJMYXllcik6CisgICAgICAgIE9ubHkgc3RhY2tpbmcg
Y29udGV4dHMgc3RhcnQgd2l0aCBkaXJ0eSB6LW9yZGVyIGxpc3RzLgorCisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJMYXllcjo6ZGlydHlaT3JkZXJMaXN0cyk6CisgICAgICAgIEFkZGVkIGFuIEFT
U0VSVC4KKworICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnVwZGF0ZVN0YWNraW5nQ29u
dGV4dHNBZnRlclN0eWxlQ2hhbmdlKToKKyAgICAgICAgUmVmYWN0b3JlZCB0aGUgY29kZSB0byBo
YW5kbGUgdGhlIHRyYW5zaXRpb24gYmV0d2VlbiBzdGFja2luZyBjb250ZXh0IHN0YXR1cy4KKwor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnN0eWxlQ2hhbmdlZCk6CisgICAgICAgIEFk
ZGVkIGEgY2FsbCB0byB1cGRhdGVTdGFja2luZ0NvbnRleHRzQWZ0ZXJTdHlsZUNoYW5nZS4KKwor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5oOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXI6OmlzU3RhY2tpbmdDb250ZXh0KToKKyAgICAgICAgQWRkZWQgYSBjYWxsIHRvIHRo
ZSBuZXh0IGZ1bmN0aW9uLgorCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6bGF5ZXJX
aXRoU3R5bGVJc1N0YWNraW5nQ29udGV4dCk6CisgICAgICAgIEZhY3RvcmVkIHRoZSBpc1N0YWNr
aW5nQ29udGV4dCBsb2dpYyBoZXJlIHNvIHRoYXQgd2UgY2FuIHJldXNlIGl0IGluc2lkZQorICAg
ICAgICB1cGRhdGVTdGFja2luZ0NvbnRleHRzQWZ0ZXJTdHlsZUNoYW5nZS4KKworICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmNsZWFyWk9yZGVyTGlzdHMpOgorICAgICAgICBBZGRlZCBh
biBBU1NFUlQuCisKIDIwMTItMDUtMDggIFJhcGhhZWwgS3VibyBkYSBDb3N0YSAgPHJha3Vjb0B3
ZWJraXQub3JnPgogCiAgICAgICAgIFtDTWFrZV0gUmV3cml0ZSBGaW5kR1N0cmVhbWVyLmNtYWtl
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2Jq
ZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5j
cHAKaW5kZXggZjA3OWQ4YjA1YTE2ZDFiMDE4ZmY5N2Y3NGM3ZGQwYjI5MGZkYTYwOC4uZmNjYTFi
M2Q1MWI4ZjU1YjE5MjkzNmJkMTk3ZjQwMDA4MGJhNjM2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCkBAIC00MTEsMTUgKzQxMSw2
IEBAIHZvaWQgUmVuZGVyQm94TW9kZWxPYmplY3Q6OnN0eWxlV2lsbENoYW5nZShTdHlsZURpZmZl
cmVuY2UgZGlmZiwgY29uc3QgUmVuZGVyU3R5CiAgICAgICAgICAgICAgICAgcmVwYWludCgpOwog
ICAgICAgICAgICAgfQogICAgICAgICB9Ci0KLSAgICAgICAgaWYgKGhhc0xheWVyKCkKLSAgICAg
ICAgICAgICYmIChvbGRTdHlsZS0+aGFzQXV0b1pJbmRleCgpICE9IG5ld1N0eWxlLT5oYXNBdXRv
WkluZGV4KCkKLSAgICAgICAgICAgICAgICB8fCBvbGRTdHlsZS0+ekluZGV4KCkgIT0gbmV3U3R5
bGUtPnpJbmRleCgpCi0gICAgICAgICAgICAgICAgfHwgb2xkU3R5bGUtPnZpc2liaWxpdHkoKSAh
PSBuZXdTdHlsZS0+dmlzaWJpbGl0eSgpKSkgewotICAgICAgICAgICAgbGF5ZXIoKS0+ZGlydHlT
dGFja2luZ0NvbnRleHRaT3JkZXJMaXN0cygpOwotICAgICAgICAgICAgaWYgKG9sZFN0eWxlLT5o
YXNBdXRvWkluZGV4KCkgIT0gbmV3U3R5bGUtPmhhc0F1dG9aSW5kZXgoKSB8fCBvbGRTdHlsZS0+
dmlzaWJpbGl0eSgpICE9IG5ld1N0eWxlLT52aXNpYmlsaXR5KCkpCi0gICAgICAgICAgICAgICAg
bGF5ZXIoKS0+ZGlydHlaT3JkZXJMaXN0cygpOwotICAgICAgICB9CiAgICAgfQogCiAgICAgUmVu
ZGVyT2JqZWN0OjpzdHlsZVdpbGxDaGFuZ2UoZGlmZiwgbmV3U3R5bGUpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKaW5kZXggMjYzMTljNGY4NGNmMzczOGRkMGY2ZDA0
NDYwZGI1ZTUyYTcwMzMzNS4uZDRhNTg1NTY2YWQyMmQ0MGUyMTJkZmQxNDU4MmZhODVmZDQ5ODA2
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCkBAIC0xNDcsNyAr
MTQ3LDYgQEAgdm9pZCBDbGlwUmVjdHM6OmRlc3Ryb3koUmVuZGVyQXJlbmEqIHJlbmRlckFyZW5h
KQogUmVuZGVyTGF5ZXI6OlJlbmRlckxheWVyKFJlbmRlckJveE1vZGVsT2JqZWN0KiByZW5kZXJl
cikKICAgICA6IG1faW5SZXNpemVNb2RlKGZhbHNlKQogICAgICwgbV9zY3JvbGxEaW1lbnNpb25z
RGlydHkodHJ1ZSkKLSAgICAsIG1fek9yZGVyTGlzdHNEaXJ0eSh0cnVlKQogICAgICwgbV9ub3Jt
YWxGbG93TGlzdERpcnR5KHRydWUpCiAgICAgLCBtX3VzZWRUcmFuc3BhcmVuY3koZmFsc2UpCiAg
ICAgLCBtX3BhaW50aW5nSW5zaWRlUmVmbGVjdGlvbihmYWxzZSkKQEAgLTE5Myw2ICsxOTIsOSBA
QCBSZW5kZXJMYXllcjo6UmVuZGVyTGF5ZXIoUmVuZGVyQm94TW9kZWxPYmplY3QqIHJlbmRlcmVy
KQogICAgICwgbV9yZXNpemVyKDApCiB7CiAgICAgbV9pc05vcm1hbEZsb3dPbmx5ID0gc2hvdWxk
QmVOb3JtYWxGbG93T25seSgpOworICAgIC8vIE5vbi1zdGFja2luZyBjb250ZXh0cyBzaG91bGQg
aGF2ZSBlbXB0eSB6LW9yZGVyIGxpc3RzLiBBcyB0aGlzIGlzIGFscmVhZHkgdGhlIGNhc2UsCisg
ICAgLy8gdGhlcmUgaXMgbm8gbmVlZCB0byBkaXJ0eSAvIHJlY29tcHV0ZSB0aGVzZSBsaXN0cy4K
KyAgICBtX3pPcmRlckxpc3RzRGlydHkgPSBpc1N0YWNraW5nQ29udGV4dCgpOwogCiAgICAgU2Ny
b2xsYWJsZUFyZWE6OnNldENvbnN0cmFpbnNTY3JvbGxpbmdUb0NvbnRlbnRFZGdlKGZhbHNlKTsK
IApAQCAtNDQ2Myw4ICs0NDY1LDcgQEAgc3RhdGljIGlubGluZSBib29sIGNvbXBhcmVaSW5kZXgo
UmVuZGVyTGF5ZXIqIGZpcnN0LCBSZW5kZXJMYXllciogc2Vjb25kKQogdm9pZCBSZW5kZXJMYXll
cjo6ZGlydHlaT3JkZXJMaXN0cygpCiB7CiAgICAgQVNTRVJUKG1fbGF5ZXJMaXN0TXV0YXRpb25B
bGxvd2VkKTsKLSAgICAvLyBXZSBjYW5ub3QgYXNzdW1lIHRoYXQgd2UgYXJlIGNhbGxlZCBvbiBh
IHN0YWNraW5nIGNvbnRleHQgYXMgaXQKLSAgICAvLyBpcyBjYWxsZWQgd2hlbiB3ZSBqdXN0IGdv
dCBkZW1vdGVkIGZyb20gYmVpbmcgYSBzdGFja2luZyBjb250ZXh0LgorICAgIEFTU0VSVChpc1N0
YWNraW5nQ29udGV4dCgpKTsKIAogICAgIGlmIChtX3Bvc1pPcmRlckxpc3QpCiAgICAgICAgIG1f
cG9zWk9yZGVyTGlzdC0+Y2xlYXIoKTsKQEAgLTQ2ODAsNiArNDY4MSwzMSBAQCBib29sIFJlbmRl
ckxheWVyOjppc1NlbGZQYWludGluZ0xheWVyKCkgY29uc3QKICAgICAgICAgfHwgcmVuZGVyZXIo
KS0+aXNSZW5kZXJJRnJhbWUoKTsKIH0KIAordm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlU3RhY2tp
bmdDb250ZXh0c0FmdGVyU3R5bGVDaGFuZ2UoY29uc3QgUmVuZGVyU3R5bGUqIG9sZFN0eWxlKQor
eworICAgIGlmICghb2xkU3R5bGUpCisgICAgICAgIHJldHVybjsKKworICAgIGJvb2wgd2FzU3Rh
Y2tpbmdDb250ZXh0ID0gaXNTdGFja2luZ0NvbnRleHQob2xkU3R5bGUpOworICAgIGJvb2wgaXNT
dGFja2luZ0NvbnRleHQgPSB0aGlzLT5pc1N0YWNraW5nQ29udGV4dCgpOworICAgIGlmIChpc1N0
YWNraW5nQ29udGV4dCAhPSB3YXNTdGFja2luZ0NvbnRleHQpIHsKKyAgICAgICAgZGlydHlTdGFj
a2luZ0NvbnRleHRaT3JkZXJMaXN0cygpOworICAgICAgICBpZiAoaXNTdGFja2luZ0NvbnRleHQp
CisgICAgICAgICAgICBkaXJ0eVpPcmRlckxpc3RzKCk7CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIGNsZWFyWk9yZGVyTGlzdHMoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIC8v
IEZJWE1FOiBSZW5kZXJMYXllciBhbHJlYWR5IGhhbmRsZXMgdmlzaWJpbGl0eSBjaGFuZ2VzIHRo
cm91Z2ggb3VyIHZpc2libGl0eSBkaXJ0eSBiaXRzLiBUaGlzIGxvZ2ljIGNvdWxkCisgICAgLy8g
bGlrZWx5IGJlIGZvbGRlZCBhbG9uZyB3aXRoIHRoZSByZXN0LgorICAgIGlmIChvbGRTdHlsZS0+
ekluZGV4KCkgIT0gcmVuZGVyZXIoKS0+c3R5bGUoKS0+ekluZGV4KCkgfHwgb2xkU3R5bGUtPnZp
c2liaWxpdHkoKSAhPSByZW5kZXJlcigpLT5zdHlsZSgpLT52aXNpYmlsaXR5KCkpIHsKKyAgICAg
ICAgZGlydHlTdGFja2luZ0NvbnRleHRaT3JkZXJMaXN0cygpOworICAgICAgICBpZiAoaXNTdGFj
a2luZ0NvbnRleHQpCisgICAgICAgICAgICBkaXJ0eVpPcmRlckxpc3RzKCk7CisgICAgfQorfQor
CiBzdGF0aWMgYm9vbCBvdmVyZmxvd0NhbkhhdmVBU2Nyb2xsYmFyKEVPdmVyZmxvdyBvdmVyZmxv
dykKIHsKICAgICByZXR1cm4gb3ZlcmZsb3cgPT0gT0FVVE8gfHwgb3ZlcmZsb3cgPT0gT1NDUk9M
TCB8fCBvdmVyZmxvdyA9PSBPT1ZFUkxBWTsKQEAgLTQ3MzQsNyArNDc2MCw4IEBAIHZvaWQgUmVu
ZGVyTGF5ZXI6OnN0eWxlQ2hhbmdlZChTdHlsZURpZmZlcmVuY2UsIGNvbnN0IFJlbmRlclN0eWxl
KiBvbGRTdHlsZSkKICAgICAgICAgZGVsZXRlIG1fbWFycXVlZTsKICAgICAgICAgbV9tYXJxdWVl
ID0gMDsKICAgICB9Ci0gICAgCisKKyAgICB1cGRhdGVTdGFja2luZ0NvbnRleHRzQWZ0ZXJTdHls
ZUNoYW5nZShvbGRTdHlsZSk7CiAgICAgdXBkYXRlU2Nyb2xsYmFyc0FmdGVyU3R5bGVDaGFuZ2Uo
b2xkU3R5bGUpOwogCiAgICAgaWYgKCFoYXNSZWZsZWN0aW9uKCkgJiYgbV9yZWZsZWN0aW9uKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaAppbmRleCA5NWMwZjM5MzNjODE3NTk5
YjhkNjE3NTZjYTU0YjQ3ZjcxOTRlMjM5Li45YjM0ZTdmNjZkMjVjMWM0ZWU1NjA2YmRhOTkzYWVm
ZWUzOTNiZTE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaApAQCAtMzgy
LDcgKzM4Miw3IEBAIHB1YmxpYzoKICAgICAvLyBHZXQgdGhlIGVuY2xvc2luZyBzdGFja2luZyBj
b250ZXh0IGZvciB0aGlzIGxheWVyLiAgQSBzdGFja2luZyBjb250ZXh0IGlzIGEgbGF5ZXIKICAg
ICAvLyB0aGF0IGhhcyBhIG5vbi1hdXRvIHotaW5kZXguCiAgICAgUmVuZGVyTGF5ZXIqIHN0YWNr
aW5nQ29udGV4dCgpIGNvbnN0OwotICAgIGJvb2wgaXNTdGFja2luZ0NvbnRleHQoKSBjb25zdCB7
IHJldHVybiAhaGFzQXV0b1pJbmRleCgpIHx8IHJlbmRlcmVyKCktPmlzUmVuZGVyVmlldygpOyB9
CisgICAgYm9vbCBpc1N0YWNraW5nQ29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIGlzU3RhY2tpbmdD
b250ZXh0KHJlbmRlcmVyKCktPnN0eWxlKCkpOyB9CiAKICAgICB2b2lkIGRpcnR5Wk9yZGVyTGlz
dHMoKTsKICAgICB2b2lkIGRpcnR5U3RhY2tpbmdDb250ZXh0Wk9yZGVyTGlzdHMoKTsKQEAgLTQ0
Myw3ICs0NDMsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBjb252ZXJ0VG9MYXllckNvb3Jkcyhjb25z
dCBSZW5kZXJMYXllciogYW5jZXN0b3JMYXllciwgTGF5b3V0UG9pbnQmIGxvY2F0aW9uKSBjb25z
dDsKICAgICB2b2lkIGNvbnZlcnRUb0xheWVyQ29vcmRzKGNvbnN0IFJlbmRlckxheWVyKiBhbmNl
c3RvckxheWVyLCBMYXlvdXRSZWN0JikgY29uc3Q7CiAKLSAgICBib29sIGhhc0F1dG9aSW5kZXgo
KSBjb25zdCB7IHJldHVybiByZW5kZXJlcigpLT5zdHlsZSgpLT5oYXNBdXRvWkluZGV4KCk7IH0K
ICAgICBpbnQgekluZGV4KCkgY29uc3QgeyByZXR1cm4gcmVuZGVyZXIoKS0+c3R5bGUoKS0+eklu
ZGV4KCk7IH0KIAogICAgIGVudW0gUGFpbnRMYXllckZsYWcgewpAQCAtNjE4LDYgKzYxNyw3IEBA
IHByaXZhdGU6CiAKICAgICB2b2lkIHVwZGF0ZU5vcm1hbEZsb3dMaXN0KCk7CiAKKyAgICBib29s
IGlzU3RhY2tpbmdDb250ZXh0KGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSkgY29uc3QgeyByZXR1
cm4gIXN0eWxlLT5oYXNBdXRvWkluZGV4KCkgfHwgcmVuZGVyZXIoKS0+aXNSZW5kZXJWaWV3KCk7
IH0KICAgICBib29sIGlzRGlydHlTdGFja2luZ0NvbnRleHQoKSBjb25zdCB7IHJldHVybiBtX3pP
cmRlckxpc3RzRGlydHkgJiYgaXNTdGFja2luZ0NvbnRleHQoKTsgfQogCiAgICAgdm9pZCBjb21w
dXRlUmVwYWludFJlY3RzKExheW91dFBvaW50KiBvZmZzZXRGcm9tUm9vdCA9IDApOwpAQCAtNjI5
LDYgKzYyOSw4IEBAIHByaXZhdGU6CiAKICAgICBib29sIHNob3VsZFJlcGFpbnRBZnRlckxheW91
dCgpIGNvbnN0OwogCisgICAgdm9pZCB1cGRhdGVTdGFja2luZ0NvbnRleHRzQWZ0ZXJTdHlsZUNo
YW5nZShjb25zdCBSZW5kZXJTdHlsZSogb2xkU3R5bGUpOworCiAgICAgdm9pZCB1cGRhdGVTY3Jv
bGxiYXJzQWZ0ZXJTdHlsZUNoYW5nZShjb25zdCBSZW5kZXJTdHlsZSogb2xkU3R5bGUpOwogICAg
IHZvaWQgdXBkYXRlU2Nyb2xsYmFyc0FmdGVyTGF5b3V0KCk7CiAKQEAgLTkzNiw2ICs5MzgsOCBA
QCBwcml2YXRlOgogCiBpbmxpbmUgdm9pZCBSZW5kZXJMYXllcjo6Y2xlYXJaT3JkZXJMaXN0cygp
CiB7CisgICAgQVNTRVJUKCFpc1N0YWNraW5nQ29udGV4dCgpKTsKKwogICAgIGlmIChtX3Bvc1pP
cmRlckxpc3QpIHsKICAgICAgICAgZGVsZXRlIG1fcG9zWk9yZGVyTGlzdDsKICAgICAgICAgbV9w
b3NaT3JkZXJMaXN0ID0gMDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>