<?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>93743</bug_id>
          
          <creation_ts>2012-08-10 14:16:37 -0700</creation_ts>
          <short_desc>[chromium] Update HUD resources as a final step to drawing a frame</short_desc>
          <delta_ts>2012-08-20 11:23:28 -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>New Bugs</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="Dana Jansens">danakj</reporter>
          <assigned_to name="Dana Jansens">danakj</assigned_to>
          <cc>cc-bugs</cc>
    
    <cc>enne</cc>
    
    <cc>jamesr</cc>
    
    <cc>piman</cc>
    
    <cc>shawnsingh</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>wjmaclean</cc>
    
    <cc>zlieber</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>692876</commentid>
    <comment_count>0</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-10 14:16:37 -0700</bug_when>
    <thetext>[chromium] Update HUD resources as a final step to drawing a frame</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>692877</commentid>
    <comment_count>1</comment_count>
      <attachid>157808</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-10 14:19:22 -0700</bug_when>
    <thetext>Created attachment 157808
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>692878</commentid>
    <comment_count>2</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-10 14:19:59 -0700</bug_when>
    <thetext>This needs tests, but I am wondering about feelings about this approach to solving http://code.google.com/p/chromium/issues/detail?id=141920</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693778</commentid>
    <comment_count>3</comment_count>
      <attachid>157808</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-08-13 10:16:49 -0700</bug_when>
    <thetext>Comment on attachment 157808
Patch

I think I&apos;d really prefer not to add some step that applies to all layers.  Updating resources that you have already put in quads also seems potentially fragile.  It may work now, but it seems easy to break, and we have no HUD tests.

I think the only information that you don&apos;t have immediately post-calcDraw is the screen space occlusion rects.  My thought is that you can save all but those rects explicitly on the HUD layer right after calcDraw and then make the HUD layer the container for the screen space occlusion rects to get those right when it needs it during appendQuads since it goes last.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>696267</commentid>
    <comment_count>4</comment_count>
      <attachid>158616</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-15 12:33:55 -0700</bug_when>
    <thetext>Created attachment 158616
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>696270</commentid>
    <comment_count>5</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-15 12:34:49 -0700</bug_when>
    <thetext>Here&apos;s a new proposal for ya!

1. Have the HUD layer save a pointer to itself on commit in the CCLTHI.
2. CCLTHI clears this pointer each commit to avoid staleness.
3. CCLTHI calls the HUD layer to update its texture just before it draws the frame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>696480</commentid>
    <comment_count>6</comment_count>
      <attachid>158616</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-08-15 16:26:28 -0700</bug_when>
    <thetext>Comment on attachment 158616
Patch

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

&gt; Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:77
&gt; +    hostImpl-&gt;setHudLayer(this);

Can you move this to CCLayerTreeHost::finishCommitOnImplThread with the rest of the syncing code, clearing the hud layer pointer if it doesn&apos;t exist?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>697219</commentid>
    <comment_count>7</comment_count>
      <attachid>158616</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-16 09:40:17 -0700</bug_when>
    <thetext>Comment on attachment 158616
Patch

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

&gt;&gt; Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:77
&gt;&gt; +    hostImpl-&gt;setHudLayer(this);
&gt; 
&gt; Can you move this to CCLayerTreeHost::finishCommitOnImplThread with the rest of the syncing code, clearing the hud layer pointer if it doesn&apos;t exist?

The thing is CCLTH doesn&apos;t know the impl pointer unless we store it in the HUDLayer over there. This lets us avoid storing the Impl pointer on the non-impl tree anywhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>697244</commentid>
    <comment_count>8</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-08-16 10:07:08 -0700</bug_when>
    <thetext>I think it&apos;s OK for one or both LTH&apos;s to know about the HUD layer.  It&apos;s quite magical already.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>697274</commentid>
    <comment_count>9</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-16 10:52:36 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; I think it&apos;s OK for one or both LTH&apos;s to know about the HUD layer.  It&apos;s quite magical already.

Yeh, as it does in this patch. But I mean there&apos;s no link from HUDLayerChromium to CCHUDLayerImpl unless we store the impl layer&apos;s pointer in the HUDLayerChromium when we create the impl layer. Then the CCLTH could pull it out that way.

But it seems more sketchy to me to store a pointer from Layer-&gt;LayerImpl as that&apos;s something we don&apos;t do ever now.

Or we do something in TreeSychronizer, or do a tree walk to find the CCHUDLayerImpl by ID in CCLTH.

Preferences?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>698749</commentid>
    <comment_count>10</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-08-17 16:13:04 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; I think it&apos;s OK for one or both LTH&apos;s to know about the HUD layer.  It&apos;s quite magical already.
&gt; 
&gt; Yeh, as it does in this patch. But I mean there&apos;s no link from HUDLayerChromium to CCHUDLayerImpl unless we store the impl layer&apos;s pointer in the HUDLayerChromium when we create the impl layer. Then the CCLTH could pull it out that way.
&gt; 
&gt; But it seems more sketchy to me to store a pointer from Layer-&gt;LayerImpl as that&apos;s something we don&apos;t do ever now.
&gt; 
&gt; Or we do something in TreeSychronizer, or do a tree walk to find the CCHUDLayerImpl by ID in CCLTH.
&gt; 
&gt; Preferences?

A tree walk to find the layer by ID during commit seems reasonable.  I&apos;d rather not complicate TreeSynchronizer anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>699581</commentid>
    <comment_count>11</comment_count>
      <attachid>159449</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-20 09:10:57 -0700</bug_when>
    <thetext>Created attachment 159449
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>699616</commentid>
    <comment_count>12</comment_count>
      <attachid>159459</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-20 09:55:56 -0700</bug_when>
    <thetext>Created attachment 159459
Patch

Oh, CC header paths have changed. I made a layer tree walk in CCLTH to push over the hud layer pointer as requested\!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>699676</commentid>
    <comment_count>13</comment_count>
      <attachid>159459</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-08-20 10:59:29 -0700</bug_when>
    <thetext>Comment on attachment 159459
Patch

R=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>699724</commentid>
    <comment_count>14</comment_count>
      <attachid>159459</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-20 11:23:24 -0700</bug_when>
    <thetext>Comment on attachment 159459
Patch

Clearing flags on attachment: 159459

Committed r126046: &lt;http://trac.webkit.org/changeset/126046&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>699725</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-20 11:23:28 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>157808</attachid>
            <date>2012-08-10 14:19:22 -0700</date>
            <delta_ts>2012-08-15 12:33:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93743-20120810171853.patch</filename>
            <type>text/plain</type>
            <size>5917</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI1MzI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODc3MzZjOTFhMzQwNzdm
MzE0ZDRlOTBjMDliOWYwZDgwZDc1OThiYy4uZGFhYjI0ZTRlNTNhN2IwODkzZTNhYjM5NWNhN2Y2
MjJmMzUyNzRmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTA4LTEwICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gVXBk
YXRlIEhVRCByZXNvdXJjZXMgYXMgYSBmaW5hbCBzdGVwIHRvIGRyYXdpbmcgYSBmcmFtZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTM3NDMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgSFVEIHNob3Vs
ZCBiZSBwYWludGVkIGFzIGEgbGFzdCBzdGVwLCBhZnRlciB0aGUgd2hvbGUgZnJhbWUgaGFzIGJl
ZW4KKyAgICAgICAgZ2VuZXJhdGVkLiBUaGlzIGludHJvZHVjZXMgYSBuZXcgInVwZGF0ZVJlc291
cmNlcyIgbWV0aG9kIHRoYXQgaXMgY2FsbGVkCisgICAgICAgIG9uIGFsbCBsYXllcnMgYmVmb3Jl
IHRoZSBmcmFtZSBpcyBkcmF3biB0byB0aGUgc2NyZWVuLiBUaGlzIGFsbG93cyB0aGUKKyAgICAg
ICAgbGF5ZXJzIHRvIGRvIGZpbmFsIHVwZGF0ZSBvZiB0aGUgcmVzb3VyY2VzIHRoZXkgaGF2ZSBn
aXZlbiBvdXQgaW4gdGhlaXIKKyAgICAgICAgcXVhZHMgYmVmb3JlIHRoZXkgYXJlIHNlbnQgb2Yg
dG8gYmUgZHJhd24sIG9yIGV4cG9ydGVkIHRvIHRoZSBwYXJlbnQKKyAgICAgICAgY29tcG9zaXRv
ci4KKworICAgICAgICBUZXN0cyBtaXNzaW5nOyB0byBiZSBhZGRlZC4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDSGVhZHNVcERpc3BsYXlMYXllckltcGwuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q0NIZWFkc1VwRGlzcGxheUxheWVySW1wbDo6d2lsbERyYXcp
OgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpDQ0hlYWRzVXBEaXNwbGF5
TGF5ZXJJbXBsOjp1cGRhdGVSZXNvdXJjZXMpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDSGVhZHNVcERpc3BsYXlMYXllckltcGwuaDoKKyAgICAgICAgKENDSGVh
ZHNVcERpc3BsYXlMYXllckltcGwpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDTGF5ZXJJbXBsLmg6CisgICAgICAgIChXZWJDb3JlOjpDQ0xheWVySW1wbDo6dXBk
YXRlUmVzb3VyY2VzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9D
Q0xheWVyVHJlZUhvc3RJbXBsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUcmVlSG9z
dEltcGw6OmRyYXdMYXllcnMpOgorCiAyMDEyLTA4LTEwICBNYXJpbyBTYW5jaGV6IFByYWRhICA8
bXNhbmNoZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBCcm9rZW4gaW1wbGVtZW50YXRp
b24gb2YgQXRrVGV4dCBhbmQgQXRrRWRpdGFibGVUZXh0IGZvciBwYXNzd29yZCBmaWVsZHMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0ND
SGVhZHNVcERpc3BsYXlMYXllckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5jcHAKaW5kZXggNmI0
Njg1MWRiMTQxOGZmMmJiYzllYTkwY2M2ZTc5YjZlOTMzY2ZiNC4uN2VmN2U4YzU5ZWY5YTEwN2Mx
MzJjNDM5NTg3ODY5YTVmMTA4ZjI2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1Vw
RGlzcGxheUxheWVySW1wbC5jcHAKQEAgLTg3LDcgKzg3LDEzIEBAIHZvaWQgQ0NIZWFkc1VwRGlz
cGxheUxheWVySW1wbDo6d2lsbERyYXcoQ0NSZXNvdXJjZVByb3ZpZGVyKiByZXNvdXJjZVByb3Zp
ZGVyKQogICAgIGlmIChtX2h1ZFRleHR1cmUtPnNpemUoKSAhPSBib3VuZHMoKSkKICAgICAgICAg
bV9odWRUZXh0dXJlLT5mcmVlKCk7CiAKLSAgICBpZiAoIW1faHVkVGV4dHVyZS0+aWQoKSAmJiAh
bV9odWRUZXh0dXJlLT5hbGxvY2F0ZShDQ1JlbmRlcmVyOjpJbXBsUG9vbCwgYm91bmRzKCksIEdy
YXBoaWNzQ29udGV4dDNEOjpSR0JBLCBDQ1Jlc291cmNlUHJvdmlkZXI6OlRleHR1cmVVc2FnZUFu
eSkpCisgICAgaWYgKCFtX2h1ZFRleHR1cmUtPmlkKCkpCisgICAgICAgIG1faHVkVGV4dHVyZS0+
YWxsb2NhdGUoQ0NSZW5kZXJlcjo6SW1wbFBvb2wsIGJvdW5kcygpLCBHcmFwaGljc0NvbnRleHQz
RDo6UkdCQSwgQ0NSZXNvdXJjZVByb3ZpZGVyOjpUZXh0dXJlVXNhZ2VBbnkpOworfQorCit2b2lk
IENDSGVhZHNVcERpc3BsYXlMYXllckltcGw6OnVwZGF0ZVJlc291cmNlcyhDQ1Jlc291cmNlUHJv
dmlkZXIqIHJlc291cmNlUHJvdmlkZXIpCit7CisgICAgaWYgKCFtX2h1ZFRleHR1cmUtPmlkKCkp
CiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIFJlbmRlciBwaXhlbHMgaW50byB0aGUgdGV4dHVy
ZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L2NjL0NDSGVhZHNVcERpc3BsYXlMYXllckltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDSGVhZHNVcERpc3BsYXlMYXllckltcGwuaAppbmRleCBi
MmNkYjRkMzEwZWFiNzU0NDkzNmJkYjI5NGRlNjUyMzU3NDkyNzFmLi42M2IyYzc5NGI5YjVmOTc2
NmZiMGUwMTJhZDJjYWI2MzE5M2RiMzYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1Vw
RGlzcGxheUxheWVySW1wbC5oCkBAIC01MCw2ICs1MCw3IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1
YWwgdm9pZCB3aWxsRHJhdyhDQ1Jlc291cmNlUHJvdmlkZXIqKSBPVkVSUklERTsKICAgICB2aXJ0
dWFsIHZvaWQgYXBwZW5kUXVhZHMoQ0NRdWFkU2luayYsIGNvbnN0IENDU2hhcmVkUXVhZFN0YXRl
KiwgYm9vbCYgaGFkTWlzc2luZ1RpbGVzKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZvaWQgdXBk
YXRlUmVzb3VyY2VzKENDUmVzb3VyY2VQcm92aWRlciopIE9WRVJSSURFOwogICAgIHZpcnR1YWwg
dm9pZCBkaWREcmF3KENDUmVzb3VyY2VQcm92aWRlciopIE9WRVJSSURFOwogCiAgICAgdmlydHVh
bCB2b2lkIGRpZExvc2VDb250ZXh0KCkgT1ZFUlJJREU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuaAppbmRl
eCBmZjA4OWI1Mzc3YThkMjlmNDc5ZWVlMDY2YzYxMzI4NzAyYjY3MDNhLi5iMDRjMjZhMzFlYTE1
ODNmNTQzNzEwNDA4OTYwYzEzZDJhYTVhYTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJJbXBsLmgKQEAgLTk2
LDYgKzk2LDcgQEAgcHVibGljOgogICAgIC8vIHdpbGxEcmF3L2RpZERyYXcgbXVzdCBjYWxsIHRo
ZSBiYXNlIGNsYXNzIHZlcnNpb24uCiAgICAgdmlydHVhbCB2b2lkIHdpbGxEcmF3KENDUmVzb3Vy
Y2VQcm92aWRlciopOwogICAgIHZpcnR1YWwgdm9pZCBhcHBlbmRRdWFkcyhDQ1F1YWRTaW5rJiwg
Y29uc3QgQ0NTaGFyZWRRdWFkU3RhdGUqLCBib29sJiBoYWRNaXNzaW5nVGlsZXMpIHsgfQorICAg
IHZpcnR1YWwgdm9pZCB1cGRhdGVSZXNvdXJjZXMoQ0NSZXNvdXJjZVByb3ZpZGVyKikgeyB9CiAg
ICAgdmlydHVhbCB2b2lkIGRpZERyYXcoQ0NSZXNvdXJjZVByb3ZpZGVyKik7CiAgICAgdm9pZCBh
cHBlbmREZWJ1Z0JvcmRlclF1YWQoQ0NRdWFkU2luayYsIGNvbnN0IENDU2hhcmVkUXVhZFN0YXRl
KikgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKaW5kZXgg
YjRmODA4ZTE1MGU3NDMwOGM2YzIyNTU5ODAwODJlOGU2NmI5NmVhOS4uZmI4YjkzZWM3MmVmNzhj
ZDVmZmRhNmI5YjMxYTRlZDEzOTdmOGZjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVI
b3N0SW1wbC5jcHAKQEAgLTU0MywxMSArNTQzLDIwIEBAIHZvaWQgQ0NMYXllclRyZWVIb3N0SW1w
bDo6ZHJhd0xheWVycyhjb25zdCBGcmFtZURhdGEmIGZyYW1lKQogICAgIC8vIFJlbmRlcldpZGdl
dC4KICAgICBtX2Zwc0NvdW50ZXItPm1hcmtCZWdpbm5pbmdPZkZyYW1lKGN1cnJlbnRUaW1lKCkp
OwogCi0gICAgbV9sYXllclJlbmRlcmVyLT5kcmF3RnJhbWUoZnJhbWUucmVuZGVyUGFzc2VzLCBm
cmFtZS5yZW5kZXJQYXNzZXNCeUlkKTsKLQogICAgIGlmIChtX3NldHRpbmdzLnNob3dEZWJ1Z1Jl
Y3RzKCkpCiAgICAgICAgIG1fZGVidWdSZWN0SGlzdG9yeS0+c2F2ZURlYnVnUmVjdHNGb3JDdXJy
ZW50RnJhbWUobV9yb290TGF5ZXJJbXBsLmdldCgpLCAqZnJhbWUucmVuZGVyU3VyZmFjZUxheWVy
TGlzdCwgZnJhbWUub2NjbHVkaW5nU2NyZWVuU3BhY2VSZWN0cywgc2V0dGluZ3MoKSk7CiAKKyAg
ICAvLyBOb24tb3JkZXItZGVwZW5kZW50IHdhbGsgdGhyb3VnaCB0aGUgbGF5ZXJzLgorICAgIHR5
cGVkZWYgQ0NMYXllckl0ZXJhdG9yPENDTGF5ZXJJbXBsLCBWZWN0b3I8Q0NMYXllckltcGwqPiwg
Q0NSZW5kZXJTdXJmYWNlLCBDQ0xheWVySXRlcmF0b3JBY3Rpb25zOjpCYWNrVG9Gcm9udD4gQ0NM
YXllckl0ZXJhdG9yVHlwZTsKKyAgICBDQ0xheWVySXRlcmF0b3JUeXBlIGVuZCA9IENDTGF5ZXJJ
dGVyYXRvclR5cGU6OmVuZChmcmFtZS5yZW5kZXJTdXJmYWNlTGF5ZXJMaXN0KTsKKyAgICBmb3Ig
KENDTGF5ZXJJdGVyYXRvclR5cGUgaXQgPSBDQ0xheWVySXRlcmF0b3JUeXBlOjpiZWdpbihmcmFt
ZS5yZW5kZXJTdXJmYWNlTGF5ZXJMaXN0KTsgaXQgIT0gZW5kOyArK2l0KSB7CisgICAgICAgIGlm
ICghaXQucmVwcmVzZW50c0l0c2VsZigpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAg
IGl0LT51cGRhdGVSZXNvdXJjZXMobV9yZXNvdXJjZVByb3ZpZGVyLmdldCgpKTsKKyAgICB9CisK
KyAgICBtX2xheWVyUmVuZGVyZXItPmRyYXdGcmFtZShmcmFtZS5yZW5kZXJQYXNzZXMsIGZyYW1l
LnJlbmRlclBhc3Nlc0J5SWQpOworCiAgICAgLy8gT25jZSBhIFJlbmRlclBhc3MgaGFzIGJlZW4g
ZHJhd24sIGl0cyBkYW1hZ2Ugc2hvdWxkIGJlIGNsZWFyZWQgaW4KICAgICAvLyBjYXNlIHRoZSBS
ZW5kZXJQYXNzIHdpbGwgYmUgcmV1c2VkIG5leHQgZnJhbWUuCiAgICAgZm9yICh1bnNpZ25lZCBp
bnQgaSA9IDA7IGkgPCBmcmFtZS5yZW5kZXJQYXNzZXMuc2l6ZSgpOyBpKyspCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>158616</attachid>
            <date>2012-08-15 12:33:55 -0700</date>
            <delta_ts>2012-08-20 09:10:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93743-20120815153321.patch</filename>
            <type>text/plain</type>
            <size>10433</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI1Njg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzAyNTFhYmExZDUxMWRh
NDFmOTE4ZWFlMjllNzkxOWY2MThlZWQ2OC4uYzE2YzdlNjVkYjIxZjRkNDFlMmNhNDMwZGJiNjcz
MDY2MWE3MmRjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDEyLTA4LTE1ICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gVXBk
YXRlIEhVRCByZXNvdXJjZXMgYXMgYSBmaW5hbCBzdGVwIHRvIGRyYXdpbmcgYSBmcmFtZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTM3NDMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgSFVEIHNob3Vs
ZCBiZSBwYWludGVkIGFzIGEgbGFzdCBzdGVwLCBhZnRlciB0aGUgd2hvbGUgZnJhbWUgaGFzIGJl
ZW4KKyAgICAgICAgZ2VuZXJhdGVkLiBUaGlzIGludHJvZHVjZXMgYSBuZXcgInVwZGF0ZUh1ZFRl
eHR1cmUiIG1ldGhvZCBvbiB0aGUgSFVEIGxheWVyCisgICAgICAgIGFuZCBoYXMgdGhlIEhVRCBs
YXllciBzYXZlIGl0c2VsZiBvbiBDQ0xheWVyVHJlZUhvc3RJbXBsIHNvIHRoYXQgaXQgY2FuCisg
ICAgICAgIGNhbGwgYmFjayB0byB0aGlzIG1ldGhvZC4KKworICAgICAgICBUaGlzIGFsbG93cyB0
aGUgQ0NMYXllclRyZWVIb3N0SW1wbCB0byBjYXVzZSB0aGUgSFVEIGxheWVyIHRvIHVwZGF0ZSBp
dHMKKyAgICAgICAgdGV4dHVyZSBhcyBhIGZpbmFsIHN0ZXAgYmVmb3JlIGRyYXdpbmcgdGhlIGZy
YW1lLCBhbGxvd2luZyB0aGUgSFVEIHRleHR1cmUKKyAgICAgICAgdG8gY29udGFpbiBhbGwgcG9z
c2libGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgZnJhbWUuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNDSGVhZHNVcERpc3BsYXlMYXllckltcGw6OnNldExheWVy
VHJlZUhvc3RJbXBsKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q0NI
ZWFkc1VwRGlzcGxheUxheWVySW1wbDo6d2lsbERyYXcpOgorICAgICAgICAoV2ViQ29yZTo6Q0NI
ZWFkc1VwRGlzcGxheUxheWVySW1wbDo6YXBwZW5kUXVhZHMpOgorICAgICAgICAoV2ViQ29yZTo6
Q0NIZWFkc1VwRGlzcGxheUxheWVySW1wbDo6dXBkYXRlSHVkVGV4dHVyZSk6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5o
OgorICAgICAgICAoQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbCk6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkNDTGF5ZXJJbXBsOjpzZXRMYXllclRyZWVIb3N0SW1wbCk6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpDQ0xheWVyVHJlZUhvc3RJbXBsOjpDQ0xheWVyVHJlZUhvc3RJbXBsKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNDTGF5ZXJUcmVlSG9zdEltcGw6OmJlZ2luQ29tbWl0KToKKyAgICAgICAg
KFdlYkNvcmU6OkNDTGF5ZXJUcmVlSG9zdEltcGw6OmRyYXdMYXllcnMpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuaDoKKyAgICAg
ICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q0NMYXllclRyZWVIb3N0SW1wbDo6c2V0
SHVkTGF5ZXIpOgorICAgICAgICAoV2ViQ29yZTo6Q0NMYXllclRyZWVIb3N0SW1wbDo6aHVkTGF5
ZXIpOgorICAgICAgICAoQ0NMYXllclRyZWVIb3N0SW1wbCk6CisKIDIwMTItMDgtMTUgIEpvYW5t
YXJpZSBEaWdncyAgPGpkaWdnc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHdGtdIGF0a190ZXh0
X2dldF90ZXh0X2F0X29mZnNldCgpIGZhaWxzIHRvIHByb3ZpZGUgdGhlIGNvcnJlY3QgbGluZSBm
b3IgcGFyYWdyYXBocyBpbiBsaXN0IGl0ZW1zIHdob3NlIHRleHQgd3JhcHMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDSGVhZHNVcERp
c3BsYXlMYXllckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5jcHAKaW5kZXggOTdkMWVmNTRhODQw
N2JhZTBmYTA3MzQzYmEwZDJlYjQwNzk3MzZkNy4uYzZmYjlhOWQ4ZDMwYjE4ZWZlODEwMTM3OGVm
MGIwMTljMzY4ZGZjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxh
eWVySW1wbC5jcHAKQEAgLTcwLDYgKzcwLDEzIEBAIENDSGVhZHNVcERpc3BsYXlMYXllckltcGw6
On5DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsKCkKIHsKIH0KIAordm9pZCBDQ0hlYWRzVXBEaXNw
bGF5TGF5ZXJJbXBsOjpzZXRMYXllclRyZWVIb3N0SW1wbChDQ0xheWVyVHJlZUhvc3RJbXBsKiBo
b3N0SW1wbCkKK3sKKyAgICBDQ0xheWVySW1wbDo6c2V0TGF5ZXJUcmVlSG9zdEltcGwoaG9zdElt
cGwpOworCisgICAgaG9zdEltcGwtPnNldEh1ZExheWVyKHRoaXMpOworfQorCiB2b2lkIENDSGVh
ZHNVcERpc3BsYXlMYXllckltcGw6OnNldEZvbnRBdGxhcyhQYXNzT3duUHRyPENDRm9udEF0bGFz
PiBmb250QXRsYXMpCiB7CiAgICAgbV9mb250QXRsYXMgPSBmb250QXRsYXM7CkBAIC04Nyw3ICs5
NCwyNSBAQCB2b2lkIENDSGVhZHNVcERpc3BsYXlMYXllckltcGw6OndpbGxEcmF3KENDUmVzb3Vy
Y2VQcm92aWRlciogcmVzb3VyY2VQcm92aWRlcikKICAgICBpZiAobV9odWRUZXh0dXJlLT5zaXpl
KCkgIT0gYm91bmRzKCkpCiAgICAgICAgIG1faHVkVGV4dHVyZS0+ZnJlZSgpOwogCi0gICAgaWYg
KCFtX2h1ZFRleHR1cmUtPmlkKCkgJiYgIW1faHVkVGV4dHVyZS0+YWxsb2NhdGUoQ0NSZW5kZXJl
cjo6SW1wbFBvb2wsIGJvdW5kcygpLCBHcmFwaGljc0NvbnRleHQzRDo6UkdCQSwgQ0NSZXNvdXJj
ZVByb3ZpZGVyOjpUZXh0dXJlVXNhZ2VBbnkpKQorICAgIGlmICghbV9odWRUZXh0dXJlLT5pZCgp
KQorICAgICAgICBtX2h1ZFRleHR1cmUtPmFsbG9jYXRlKENDUmVuZGVyZXI6OkltcGxQb29sLCBi
b3VuZHMoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlJHQkEsIENDUmVzb3VyY2VQcm92aWRlcjo6VGV4
dHVyZVVzYWdlQW55KTsKK30KKwordm9pZCBDQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsOjphcHBl
bmRRdWFkcyhDQ1F1YWRTaW5rJiBxdWFkTGlzdCwgY29uc3QgQ0NTaGFyZWRRdWFkU3RhdGUqIHNo
YXJlZFF1YWRTdGF0ZSwgYm9vbCYpCit7CisgICAgaWYgKCFtX2h1ZFRleHR1cmUtPmlkKCkpCisg
ICAgICAgIHJldHVybjsKKworICAgIEludFJlY3QgcXVhZFJlY3QoSW50UG9pbnQoKSwgYm91bmRz
KCkpOworICAgIGJvb2wgcHJlbXVsdGlwbGllZEFscGhhID0gdHJ1ZTsKKyAgICBGbG9hdFJlY3Qg
dXZSZWN0KDAsIDAsIDEsIDEpOworICAgIGJvb2wgZmxpcHBlZCA9IGZhbHNlOworICAgIHF1YWRM
aXN0LmFwcGVuZChDQ1RleHR1cmVEcmF3UXVhZDo6Y3JlYXRlKHNoYXJlZFF1YWRTdGF0ZSwgcXVh
ZFJlY3QsIG1faHVkVGV4dHVyZS0+aWQoKSwgcHJlbXVsdGlwbGllZEFscGhhLCB1dlJlY3QsIGZs
aXBwZWQpKTsKK30KKwordm9pZCBDQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsOjp1cGRhdGVIdWRU
ZXh0dXJlKENDUmVzb3VyY2VQcm92aWRlciogcmVzb3VyY2VQcm92aWRlcikKK3sKKyAgICBpZiAo
IW1faHVkVGV4dHVyZS0+aWQoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgU2tJU2l6ZSBjYW52
YXNTaXplOwpAQCAtMTEwLDE4ICsxMzUsNiBAQCB2b2lkIENDSGVhZHNVcERpc3BsYXlMYXllcklt
cGw6OndpbGxEcmF3KENDUmVzb3VyY2VQcm92aWRlciogcmVzb3VyY2VQcm92aWRlcikKICAgICBy
ZXNvdXJjZVByb3ZpZGVyLT51cGxvYWQobV9odWRUZXh0dXJlLT5pZCgpLCBzdGF0aWNfY2FzdDxj
b25zdCB1aW50OF90Kj4oYml0bWFwLT5nZXRQaXhlbHMoKSksIGxheWVyUmVjdCwgbGF5ZXJSZWN0
LCBsYXllclJlY3QpOwogfQogCi12b2lkIENDSGVhZHNVcERpc3BsYXlMYXllckltcGw6OmFwcGVu
ZFF1YWRzKENDUXVhZFNpbmsmIHF1YWRMaXN0LCBjb25zdCBDQ1NoYXJlZFF1YWRTdGF0ZSogc2hh
cmVkUXVhZFN0YXRlLCBib29sJikKLXsKLSAgICBpZiAoIW1faHVkVGV4dHVyZS0+aWQoKSkKLSAg
ICAgICAgcmV0dXJuOwotCi0gICAgSW50UmVjdCBxdWFkUmVjdChJbnRQb2ludCgpLCBib3VuZHMo
KSk7Ci0gICAgYm9vbCBwcmVtdWx0aXBsaWVkQWxwaGEgPSB0cnVlOwotICAgIEZsb2F0UmVjdCB1
dlJlY3QoMCwgMCwgMSwgMSk7Ci0gICAgYm9vbCBmbGlwcGVkID0gZmFsc2U7Ci0gICAgcXVhZExp
c3QuYXBwZW5kKENDVGV4dHVyZURyYXdRdWFkOjpjcmVhdGUoc2hhcmVkUXVhZFN0YXRlLCBxdWFk
UmVjdCwgbV9odWRUZXh0dXJlLT5pZCgpLCBwcmVtdWx0aXBsaWVkQWxwaGEsIHV2UmVjdCwgZmxp
cHBlZCkpOwotfQotCiB2b2lkIENDSGVhZHNVcERpc3BsYXlMYXllckltcGw6OmRpZERyYXcoQ0NS
ZXNvdXJjZVByb3ZpZGVyKiByZXNvdXJjZVByb3ZpZGVyKQogewogICAgIENDTGF5ZXJJbXBsOjpk
aWREcmF3KHJlc291cmNlUHJvdmlkZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlz
cGxheUxheWVySW1wbC5oCmluZGV4IGY3MjI4MTZlNTllYTk3ZjIyYWNjMzk2NTM3ZWI2ZGVmZTI3
YzU2ZTguLjNjYmMzM2Q4OWQyZjM0MmY3MTM1NTk1NDk3MWZmNDY1OWU5N2RjZmEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDSGVhZHNV
cERpc3BsYXlMYXllckltcGwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9jYy9DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsLmgKQEAgLTQ2LDEwICs0Niwx
MyBAQCBwdWJsaWM6CiAgICAgfQogICAgIHZpcnR1YWwgfkNDSGVhZHNVcERpc3BsYXlMYXllcklt
cGwoKTsKIAorICAgIHZpcnR1YWwgdm9pZCBzZXRMYXllclRyZWVIb3N0SW1wbChDQ0xheWVyVHJl
ZUhvc3RJbXBsKikgT1ZFUlJJREU7CisKICAgICB2b2lkIHNldEZvbnRBdGxhcyhQYXNzT3duUHRy
PENDRm9udEF0bGFzPik7CiAKICAgICB2aXJ0dWFsIHZvaWQgd2lsbERyYXcoQ0NSZXNvdXJjZVBy
b3ZpZGVyKikgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIGFwcGVuZFF1YWRzKENDUXVhZFNp
bmsmLCBjb25zdCBDQ1NoYXJlZFF1YWRTdGF0ZSosIGJvb2wmIGhhZE1pc3NpbmdUaWxlcykgT1ZF
UlJJREU7CisgICAgdm9pZCB1cGRhdGVIdWRUZXh0dXJlKENDUmVzb3VyY2VQcm92aWRlciopOwog
ICAgIHZpcnR1YWwgdm9pZCBkaWREcmF3KENDUmVzb3VyY2VQcm92aWRlciopIE9WRVJSSURFOwog
CiAgICAgdmlydHVhbCB2b2lkIGRpZExvc2VDb250ZXh0KCkgT1ZFUlJJREU7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1w
bC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXll
ckltcGwuaAppbmRleCBmZjA4OWI1Mzc3YThkMjlmNDc5ZWVlMDY2YzYxMzI4NzAyYjY3MDNhLi4y
NDY4YTcxMjVlZmUxMTM4YWY5NjZkZjU2N2I1NzIzM2I4ZTRkMDM4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJJ
bXBsLmgKQEAgLTg3LDcgKzg3LDcgQEAgcHVibGljOgogICAgIGJvb2wgcmVwbGljYUhhc01hc2so
KSBjb25zdCB7IHJldHVybiBtX3JlcGxpY2FMYXllciAmJiAobV9tYXNrTGF5ZXIgfHwgbV9yZXBs
aWNhTGF5ZXItPm1fbWFza0xheWVyKTsgfQogCiAgICAgQ0NMYXllclRyZWVIb3N0SW1wbCogbGF5
ZXJUcmVlSG9zdEltcGwoKSBjb25zdCB7IHJldHVybiBtX2xheWVyVHJlZUhvc3RJbXBsOyB9Ci0g
ICAgdm9pZCBzZXRMYXllclRyZWVIb3N0SW1wbChDQ0xheWVyVHJlZUhvc3RJbXBsKiBob3N0SW1w
bCkgeyBtX2xheWVyVHJlZUhvc3RJbXBsID0gaG9zdEltcGw7IH0KKyAgICB2aXJ0dWFsIHZvaWQg
c2V0TGF5ZXJUcmVlSG9zdEltcGwoQ0NMYXllclRyZWVIb3N0SW1wbCogaG9zdEltcGwpIHsgbV9s
YXllclRyZWVIb3N0SW1wbCA9IGhvc3RJbXBsOyB9CiAKICAgICBQYXNzT3duUHRyPENDU2hhcmVk
UXVhZFN0YXRlPiBjcmVhdGVTaGFyZWRRdWFkU3RhdGUoaW50IGlkKSBjb25zdDsKICAgICAvLyB3
aWxsRHJhdyBtdXN0IGJlIGNhbGxlZCBiZWZvcmUgYXBwZW5kUXVhZHMuIElmIHdpbGxEcmF3IGlz
IGNhbGxlZCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2No
cm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKaW5kZXggMTY2
NzcyYWRhMTcwNjRkNDZhN2Q0ODU2ZmVlZDY5OTkyZTg2MzYyYi4uMzFiZDVlMjExMjRiNWM4MDNj
N2RhOTA2ZTA5NDE1YTcyZGEzYjFiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0
SW1wbC5jcHAKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJjYy9DQ0RlbGF5QmFzZWRUaW1l
U291cmNlLmgiCiAjaW5jbHVkZSAiY2MvQ0NGb250QXRsYXMuaCIKICNpbmNsdWRlICJjYy9DQ0Zy
YW1lUmF0ZUNvdW50ZXIuaCIKKyNpbmNsdWRlICJjYy9DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBs
LmgiCiAjaW5jbHVkZSAiY2MvQ0NMYXllckl0ZXJhdG9yLmgiCiAjaW5jbHVkZSAiY2MvQ0NMYXll
clRyZWVIb3N0LmgiCiAjaW5jbHVkZSAiY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmgiCkBAIC0x
MTgsNiArMTE5LDcgQEAgQ0NMYXllclRyZWVIb3N0SW1wbDo6Q0NMYXllclRyZWVIb3N0SW1wbChj
b25zdCBDQ0xheWVyVHJlZVNldHRpbmdzJiBzZXR0aW5ncywgQ0MKICAgICAsIG1fc291cmNlRnJh
bWVOdW1iZXIoLTEpCiAgICAgLCBtX3Jvb3RTY3JvbGxMYXllckltcGwoMCkKICAgICAsIG1fY3Vy
cmVudGx5U2Nyb2xsaW5nTGF5ZXJJbXBsKDApCisgICAgLCBtX2h1ZExheWVySW1wbCgwKQogICAg
ICwgbV9zY3JvbGxpbmdMYXllcklkRnJvbVByZXZpb3VzVHJlZSgtMSkKICAgICAsIG1fc2V0dGlu
Z3Moc2V0dGluZ3MpCiAgICAgLCBtX2RldmljZVNjYWxlRmFjdG9yKDEpCkBAIC0xNTEsNiArMTUz
LDcgQEAgQ0NMYXllclRyZWVIb3N0SW1wbDo6fkNDTGF5ZXJUcmVlSG9zdEltcGwoKQogCiB2b2lk
IENDTGF5ZXJUcmVlSG9zdEltcGw6OmJlZ2luQ29tbWl0KCkKIHsKKyAgICBtX2h1ZExheWVySW1w
bCA9IDA7CiB9CiAKIHZvaWQgQ0NMYXllclRyZWVIb3N0SW1wbDo6Y29tbWl0Q29tcGxldGUoKQpA
QCAtNTQ0LDExICs1NDcsMTYgQEAgdm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBsOjpkcmF3TGF5ZXJz
KGNvbnN0IEZyYW1lRGF0YSYgZnJhbWUpCiAgICAgLy8gUmVuZGVyV2lkZ2V0LgogICAgIG1fZnBz
Q291bnRlci0+bWFya0JlZ2lubmluZ09mRnJhbWUoY3VycmVudFRpbWUoKSk7CiAKLSAgICBtX2xh
eWVyUmVuZGVyZXItPmRyYXdGcmFtZShmcmFtZS5yZW5kZXJQYXNzZXMsIGZyYW1lLnJlbmRlclBh
c3Nlc0J5SWQpOwotCiAgICAgaWYgKG1fc2V0dGluZ3Muc2hvd0RlYnVnUmVjdHMoKSkKICAgICAg
ICAgbV9kZWJ1Z1JlY3RIaXN0b3J5LT5zYXZlRGVidWdSZWN0c0ZvckN1cnJlbnRGcmFtZShtX3Jv
b3RMYXllckltcGwuZ2V0KCksICpmcmFtZS5yZW5kZXJTdXJmYWNlTGF5ZXJMaXN0LCBmcmFtZS5v
Y2NsdWRpbmdTY3JlZW5TcGFjZVJlY3RzLCBzZXR0aW5ncygpKTsKIAorICAgIC8vIEJlY2F1c2Ug
dGhlIGNvbnRlbnRzIG9mIHRoZSBIVUQgZGVwZW5kIG9uIGV2ZXJ5dGhpbmcgZWxzZSBpbiB0aGUg
ZnJhbWUsIHRoZSBjb250ZW50cworICAgIC8vIG9mIGl0cyB0ZXh0dXJlIGFyZSB1cGRhdGVkIGFz
IHRoZSBsYXN0IHRoaW5nIGJlZm9yZSB0aGUgZnJhbWUgaXMgZHJhd24uCisgICAgaWYgKG1faHVk
TGF5ZXJJbXBsKQorICAgICAgICBtX2h1ZExheWVySW1wbC0+dXBkYXRlSHVkVGV4dHVyZShtX3Jl
c291cmNlUHJvdmlkZXIuZ2V0KCkpOworCisgICAgbV9sYXllclJlbmRlcmVyLT5kcmF3RnJhbWUo
ZnJhbWUucmVuZGVyUGFzc2VzLCBmcmFtZS5yZW5kZXJQYXNzZXNCeUlkKTsKKwogICAgIC8vIE9u
Y2UgYSBSZW5kZXJQYXNzIGhhcyBiZWVuIGRyYXduLCBpdHMgZGFtYWdlIHNob3VsZCBiZSBjbGVh
cmVkIGluCiAgICAgLy8gY2FzZSB0aGUgUmVuZGVyUGFzcyB3aWxsIGJlIHJldXNlZCBuZXh0IGZy
YW1lLgogICAgIGZvciAodW5zaWduZWQgaW50IGkgPSAwOyBpIDwgZnJhbWUucmVuZGVyUGFzc2Vz
LnNpemUoKTsgaSsrKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5oCmluZGV4IGM2
MDBiNWRiMTkyOGQwNWRiYjE3ZjljZjk5OWIwMTUzMzAwNGNkOGEuLjlmOTMwYTAyYTQ2NTUzYjAz
MWIzNTNmYTc5ZDE2MDBkZDY1NjM5OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJ
bXBsLmgKQEAgLTQxLDYgKzQxLDcgQEAgY2xhc3MgQ0NBY3RpdmVHZXN0dXJlQW5pbWF0aW9uOwog
Y2xhc3MgQ0NDb21wbGV0aW9uRXZlbnQ7CiBjbGFzcyBDQ0RlYnVnUmVjdEhpc3Rvcnk7CiBjbGFz
cyBDQ0ZyYW1lUmF0ZUNvdW50ZXI7CitjbGFzcyBDQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsOwog
Y2xhc3MgQ0NMYXllckltcGw7CiBjbGFzcyBDQ0xheWVyVHJlZUhvc3RJbXBsVGltZVNvdXJjZUFk
YXB0ZXI7CiBjbGFzcyBDQ1BhZ2VTY2FsZUFuaW1hdGlvbjsKQEAgLTE0MCw2ICsxNDEsOSBAQCBw
dWJsaWM6CiAgICAgdm9pZCBzZXRSb290TGF5ZXIoUGFzc093blB0cjxDQ0xheWVySW1wbD4pOwog
ICAgIENDTGF5ZXJJbXBsKiByb290TGF5ZXIoKSB7IHJldHVybiBtX3Jvb3RMYXllckltcGwuZ2V0
KCk7IH0KIAorICAgIHZvaWQgc2V0SHVkTGF5ZXIoQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbCog
bGF5ZXJJbXBsKSB7IG1faHVkTGF5ZXJJbXBsID0gbGF5ZXJJbXBsOyB9CisgICAgQ0NIZWFkc1Vw
RGlzcGxheUxheWVySW1wbCogaHVkTGF5ZXIoKSB7IHJldHVybiBtX2h1ZExheWVySW1wbDsgfQor
CiAgICAgLy8gUmVsZWFzZSBvd25lcnNoaXAgb2YgdGhlIGN1cnJlbnQgbGF5ZXIgdHJlZSBhbmQg
cmVwbGFjZSBpdCB3aXRoIGFuIGVtcHR5CiAgICAgLy8gdHJlZS4gUmV0dXJucyB0aGUgcm9vdCBs
YXllciBvZiB0aGUgZGV0YWNoZWQgdHJlZS4KICAgICBQYXNzT3duUHRyPENDTGF5ZXJJbXBsPiBk
ZXRhY2hMYXllclRyZWUoKTsKQEAgLTI2Nyw2ICsyNzEsNyBAQCBwcml2YXRlOgogICAgIE93blB0
cjxDQ0xheWVySW1wbD4gbV9yb290TGF5ZXJJbXBsOwogICAgIENDTGF5ZXJJbXBsKiBtX3Jvb3RT
Y3JvbGxMYXllckltcGw7CiAgICAgQ0NMYXllckltcGwqIG1fY3VycmVudGx5U2Nyb2xsaW5nTGF5
ZXJJbXBsOworICAgIENDSGVhZHNVcERpc3BsYXlMYXllckltcGwqIG1faHVkTGF5ZXJJbXBsOwog
ICAgIGludCBtX3Njcm9sbGluZ0xheWVySWRGcm9tUHJldmlvdXNUcmVlOwogICAgIENDTGF5ZXJU
cmVlU2V0dGluZ3MgbV9zZXR0aW5nczsKICAgICBJbnRTaXplIG1fbGF5b3V0Vmlld3BvcnRTaXpl
Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>159449</attachid>
            <date>2012-08-20 09:10:57 -0700</date>
            <delta_ts>2012-08-20 09:55:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93743-20120820121018.patch</filename>
            <type>text/plain</type>
            <size>9876</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI1OTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDBjNmE1ZmE3NzBhZWU3
MWY1MGNiODEzYTY5MWJjZTY1YjYxOGFhNy4uZGIwOTI1NjIwOTVmNGFhYWEzZmRjODcxOGZiZDIz
ZTliOTVlODNkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDEyLTA4LTIwICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gVXBk
YXRlIEhVRCByZXNvdXJjZXMgYXMgYSBmaW5hbCBzdGVwIHRvIGRyYXdpbmcgYSBmcmFtZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTM3NDMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgSFVEIHNob3Vs
ZCBiZSBwYWludGVkIGFzIGEgbGFzdCBzdGVwLCBhZnRlciB0aGUgd2hvbGUgZnJhbWUgaGFzIGJl
ZW4KKyAgICAgICAgZ2VuZXJhdGVkLiBUaGlzIGludHJvZHVjZXMgYSBuZXcgInVwZGF0ZUh1ZFRl
eHR1cmUiIG1ldGhvZCBvbiB0aGUgSFVEIGxheWVyCisgICAgICAgIGFuZCBoYXMgdGhlIEhVRCBs
YXllciBzYXZlIGl0c2VsZiBvbiBDQ0xheWVyVHJlZUhvc3RJbXBsIHNvIHRoYXQgaXQgY2FuCisg
ICAgICAgIGNhbGwgYmFjayB0byB0aGlzIG1ldGhvZC4KKworICAgICAgICBUaGlzIGFsbG93cyB0
aGUgQ0NMYXllclRyZWVIb3N0SW1wbCB0byBjYXVzZSB0aGUgSFVEIGxheWVyIHRvIHVwZGF0ZSBp
dHMKKyAgICAgICAgdGV4dHVyZSBhcyBhIGZpbmFsIHN0ZXAgYmVmb3JlIGRyYXdpbmcgdGhlIGZy
YW1lLCBhbGxvd2luZyB0aGUgSFVEIHRleHR1cmUKKyAgICAgICAgdG8gY29udGFpbiBhbGwgcG9z
c2libGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgZnJhbWUuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNDSGVhZHNVcERpc3BsYXlMYXllckltcGw6OndpbGxEcmF3
KToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q0NIZWFkc1VwRGlzcGxh
eUxheWVySW1wbDo6YXBwZW5kUXVhZHMpOgorICAgICAgICAoV2ViQ29yZTo6Q0NIZWFkc1VwRGlz
cGxheUxheWVySW1wbDo6dXBkYXRlSHVkVGV4dHVyZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5oOgorICAgICAgICAo
Q0NIZWFkc1VwRGlzcGxheUxheWVySW1wbCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5
ZXJUcmVlSG9zdDo6ZmluaXNoQ29tbWl0T25JbXBsVGhyZWFkKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNDTGF5ZXJUcmVlSG9zdEltcGw6OkNDTGF5ZXJUcmVlSG9zdEltcGwpOgorICAg
ICAgICAoV2ViQ29yZTo6Q0NMYXllclRyZWVIb3N0SW1wbDo6ZHJhd0xheWVycyk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5oOgor
ICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpDQ0xheWVyVHJlZUhvc3RJbXBs
OjpzZXRIdWRMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpDQ0xheWVyVHJlZUhvc3RJbXBsOjpo
dWRMYXllcik6CisgICAgICAgIChDQ0xheWVyVHJlZUhvc3RJbXBsKToKKwogMjAxMi0wOC0xNyAg
QWxsYW4gU2FuZGZlbGQgSmVuc2VuICA8YWxsYW4uamVuc2VuQG5va2lhLmNvbT4KIAogICAgICAg
ICBUb3VjaCBhZGp1c3RtZW50IGZvciBjb250ZXh0IG1lbnUgZ2VzdHVyZXMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDSGVhZHNVcERp
c3BsYXlMYXllckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5jcHAKaW5kZXggZWRjNTY0NTYwNzE4
ODM2MzQ0MjhiYzNhOGZiZjM5NGE2YzNiMmNkZi4uY2RhMDYwYTk4NzQzODJiZjE3YThiNjE3M2Mx
YWYxOTRkYTMxZjVkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxh
eWVySW1wbC5jcHAKQEAgLTg3LDcgKzg3LDI1IEBAIHZvaWQgQ0NIZWFkc1VwRGlzcGxheUxheWVy
SW1wbDo6d2lsbERyYXcoQ0NSZXNvdXJjZVByb3ZpZGVyKiByZXNvdXJjZVByb3ZpZGVyKQogICAg
IGlmIChtX2h1ZFRleHR1cmUtPnNpemUoKSAhPSBib3VuZHMoKSkKICAgICAgICAgbV9odWRUZXh0
dXJlLT5mcmVlKCk7CiAKLSAgICBpZiAoIW1faHVkVGV4dHVyZS0+aWQoKSAmJiAhbV9odWRUZXh0
dXJlLT5hbGxvY2F0ZShDQ1JlbmRlcmVyOjpJbXBsUG9vbCwgYm91bmRzKCksIEdyYXBoaWNzQ29u
dGV4dDNEOjpSR0JBLCBDQ1Jlc291cmNlUHJvdmlkZXI6OlRleHR1cmVVc2FnZUFueSkpCisgICAg
aWYgKCFtX2h1ZFRleHR1cmUtPmlkKCkpCisgICAgICAgIG1faHVkVGV4dHVyZS0+YWxsb2NhdGUo
Q0NSZW5kZXJlcjo6SW1wbFBvb2wsIGJvdW5kcygpLCBHcmFwaGljc0NvbnRleHQzRDo6UkdCQSwg
Q0NSZXNvdXJjZVByb3ZpZGVyOjpUZXh0dXJlVXNhZ2VBbnkpOworfQorCit2b2lkIENDSGVhZHNV
cERpc3BsYXlMYXllckltcGw6OmFwcGVuZFF1YWRzKENDUXVhZFNpbmsmIHF1YWRMaXN0LCBjb25z
dCBDQ1NoYXJlZFF1YWRTdGF0ZSogc2hhcmVkUXVhZFN0YXRlLCBib29sJikKK3sKKyAgICBpZiAo
IW1faHVkVGV4dHVyZS0+aWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgSW50UmVjdCBxdWFk
UmVjdChJbnRQb2ludCgpLCBib3VuZHMoKSk7CisgICAgYm9vbCBwcmVtdWx0aXBsaWVkQWxwaGEg
PSB0cnVlOworICAgIEZsb2F0UmVjdCB1dlJlY3QoMCwgMCwgMSwgMSk7CisgICAgYm9vbCBmbGlw
cGVkID0gZmFsc2U7CisgICAgcXVhZExpc3QuYXBwZW5kKENDVGV4dHVyZURyYXdRdWFkOjpjcmVh
dGUoc2hhcmVkUXVhZFN0YXRlLCBxdWFkUmVjdCwgbV9odWRUZXh0dXJlLT5pZCgpLCBwcmVtdWx0
aXBsaWVkQWxwaGEsIHV2UmVjdCwgZmxpcHBlZCkpOworfQorCit2b2lkIENDSGVhZHNVcERpc3Bs
YXlMYXllckltcGw6OnVwZGF0ZUh1ZFRleHR1cmUoQ0NSZXNvdXJjZVByb3ZpZGVyKiByZXNvdXJj
ZVByb3ZpZGVyKQoreworICAgIGlmICghbV9odWRUZXh0dXJlLT5pZCgpKQogICAgICAgICByZXR1
cm47CiAKICAgICBTa0lTaXplIGNhbnZhc1NpemU7CkBAIC0xMTAsMTggKzEyOCw2IEBAIHZvaWQg
Q0NIZWFkc1VwRGlzcGxheUxheWVySW1wbDo6d2lsbERyYXcoQ0NSZXNvdXJjZVByb3ZpZGVyKiBy
ZXNvdXJjZVByb3ZpZGVyKQogICAgIHJlc291cmNlUHJvdmlkZXItPnVwbG9hZChtX2h1ZFRleHR1
cmUtPmlkKCksIHN0YXRpY19jYXN0PGNvbnN0IHVpbnQ4X3QqPihiaXRtYXAtPmdldFBpeGVscygp
KSwgbGF5ZXJSZWN0LCBsYXllclJlY3QsIEludFNpemUoKSk7CiB9CiAKLXZvaWQgQ0NIZWFkc1Vw
RGlzcGxheUxheWVySW1wbDo6YXBwZW5kUXVhZHMoQ0NRdWFkU2luayYgcXVhZExpc3QsIGNvbnN0
IENDU2hhcmVkUXVhZFN0YXRlKiBzaGFyZWRRdWFkU3RhdGUsIGJvb2wmKQotewotICAgIGlmICgh
bV9odWRUZXh0dXJlLT5pZCgpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBJbnRSZWN0IHF1YWRS
ZWN0KEludFBvaW50KCksIGJvdW5kcygpKTsKLSAgICBib29sIHByZW11bHRpcGxpZWRBbHBoYSA9
IHRydWU7Ci0gICAgRmxvYXRSZWN0IHV2UmVjdCgwLCAwLCAxLCAxKTsKLSAgICBib29sIGZsaXBw
ZWQgPSBmYWxzZTsKLSAgICBxdWFkTGlzdC5hcHBlbmQoQ0NUZXh0dXJlRHJhd1F1YWQ6OmNyZWF0
ZShzaGFyZWRRdWFkU3RhdGUsIHF1YWRSZWN0LCBtX2h1ZFRleHR1cmUtPmlkKCksIHByZW11bHRp
cGxpZWRBbHBoYSwgdXZSZWN0LCBmbGlwcGVkKSk7Ci19Ci0KIHZvaWQgQ0NIZWFkc1VwRGlzcGxh
eUxheWVySW1wbDo6ZGlkRHJhdyhDQ1Jlc291cmNlUHJvdmlkZXIqIHJlc291cmNlUHJvdmlkZXIp
CiB7CiAgICAgQ0NMYXllckltcGw6OmRpZERyYXcocmVzb3VyY2VQcm92aWRlcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0hlYWRz
VXBEaXNwbGF5TGF5ZXJJbXBsLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsLmgKaW5kZXggZjcyMjgxNmU1OWVh
OTdmMjJhY2MzOTY1MzdlYjZkZWZlMjdjNTZlOC4uMTc5ODljNmY2MWVkNzMxZDE5OGY5Zjk2ZDJi
N2FkM2FjNzQyMjY3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDSGVhZHNVcERpc3BsYXlMYXll
ckltcGwuaApAQCAtNTAsNiArNTAsNyBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZvaWQgd2ls
bERyYXcoQ0NSZXNvdXJjZVByb3ZpZGVyKikgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIGFw
cGVuZFF1YWRzKENDUXVhZFNpbmsmLCBjb25zdCBDQ1NoYXJlZFF1YWRTdGF0ZSosIGJvb2wmIGhh
ZE1pc3NpbmdUaWxlcykgT1ZFUlJJREU7CisgICAgdm9pZCB1cGRhdGVIdWRUZXh0dXJlKENDUmVz
b3VyY2VQcm92aWRlciopOwogICAgIHZpcnR1YWwgdm9pZCBkaWREcmF3KENDUmVzb3VyY2VQcm92
aWRlciopIE9WRVJSSURFOwogCiAgICAgdmlydHVhbCB2b2lkIGRpZExvc2VDb250ZXh0KCkgT1ZF
UlJJREU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcAppbmRleCBlNzkzOTMyN2E5Yjhh
ODYzMjM2YTU4OTJkZTAzN2MxNTk2Y2ExYWM4Li4xZDlhMmI5MDY5ZDE3OGEzYzQ1MjY4OGViMWIy
ZGY0Yzk3MjcxOTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHAKQEAgLTMzLDYg
KzMzLDcgQEAKICNpbmNsdWRlICJUcmVlU3luY2hyb25pemVyLmgiCiAjaW5jbHVkZSAiY2MvQ0NG
b250QXRsYXMuaCIKICNpbmNsdWRlICJjYy9DQ0dyYXBoaWNzQ29udGV4dC5oIgorI2luY2x1ZGUg
ImNjL0NDSGVhZHNVcERpc3BsYXlMYXllckltcGwuaCIKICNpbmNsdWRlICJjYy9DQ0xheWVyQW5p
bWF0aW9uQ29udHJvbGxlci5oIgogI2luY2x1ZGUgImNjL0NDTGF5ZXJJdGVyYXRvci5oIgogI2lu
Y2x1ZGUgImNjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5oIgpAQCAtMjM2LDYgKzIzNywxMSBAQCB2
b2lkIENDTGF5ZXJUcmVlSG9zdDo6ZmluaXNoQ29tbWl0T25JbXBsVGhyZWFkKENDTGF5ZXJUcmVl
SG9zdEltcGwqIGhvc3RJbXBsKQogCiAgICAgaG9zdEltcGwtPnNldFJvb3RMYXllcihUcmVlU3lu
Y2hyb25pemVyOjpzeW5jaHJvbml6ZVRyZWVzKHJvb3RMYXllcigpLCBob3N0SW1wbC0+ZGV0YWNo
TGF5ZXJUcmVlKCksIGhvc3RJbXBsKSk7CiAKKyAgICBpZiAoIW1faHVkTGF5ZXIpCisgICAgICAg
IGhvc3RJbXBsLT5zZXRIdWRMYXllcigwKTsKKyAgICBlbHNlCisgICAgICAgIGhvc3RJbXBsLT5z
ZXRIdWRMYXllcihzdGF0aWNfY2FzdDxDQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsKj4oQ0NMYXll
clRyZWVIb3N0Q29tbW9uOjpmaW5kTGF5ZXJJblN1YnRyZWUoaG9zdEltcGwtPnJvb3RMYXllcigp
LCBtX2h1ZExheWVyLT5pZCgpKSkpOworCiAgICAgLy8gV2UgbWF5IGhhdmUgYWRkZWQgYW4gYW5p
bWF0aW9uIGR1cmluZyB0aGUgdHJlZSBzeW5jLiBUaGlzIHdpbGwgY2F1c2UgYm90aCBsYXllciB0
cmVlIGhvc3RzCiAgICAgLy8gdG8gdmlzaXQgdGhlaXIgY29udHJvbGxlcnMuCiAgICAgaWYgKHJv
b3RMYXllcigpICYmIG1fbmVlZHNBbmltYXRlTGF5ZXJzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVy
VHJlZUhvc3RJbXBsLmNwcAppbmRleCBmZjZhMDBhMTZkZDZiODI3OWQ1MjA2YWMxNDM3MjliNzhi
ZGQ2MzlhLi5jMDQ2NzE1ODhjMTI1ZjU2OTE0OGFmMGFlZjM0MTI2NWM5YzM4NTdkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVy
VHJlZUhvc3RJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcApAQCAtMzUsNiArMzUsNyBAQAogI2lu
Y2x1ZGUgImNjL0NDRGVsYXlCYXNlZFRpbWVTb3VyY2UuaCIKICNpbmNsdWRlICJjYy9DQ0ZvbnRB
dGxhcy5oIgogI2luY2x1ZGUgImNjL0NDRnJhbWVSYXRlQ291bnRlci5oIgorI2luY2x1ZGUgImNj
L0NDSGVhZHNVcERpc3BsYXlMYXllckltcGwuaCIKICNpbmNsdWRlICJjYy9DQ0xheWVySXRlcmF0
b3IuaCIKICNpbmNsdWRlICJjYy9DQ0xheWVyVHJlZUhvc3QuaCIKICNpbmNsdWRlICJjYy9DQ0xh
eWVyVHJlZUhvc3RDb21tb24uaCIKQEAgLTExOCw2ICsxMTksNyBAQCBDQ0xheWVyVHJlZUhvc3RJ
bXBsOjpDQ0xheWVyVHJlZUhvc3RJbXBsKGNvbnN0IENDTGF5ZXJUcmVlU2V0dGluZ3MmIHNldHRp
bmdzLCBDQwogICAgICwgbV9zb3VyY2VGcmFtZU51bWJlcigtMSkKICAgICAsIG1fcm9vdFNjcm9s
bExheWVySW1wbCgwKQogICAgICwgbV9jdXJyZW50bHlTY3JvbGxpbmdMYXllckltcGwoMCkKKyAg
ICAsIG1faHVkTGF5ZXJJbXBsKDApCiAgICAgLCBtX3Njcm9sbGluZ0xheWVySWRGcm9tUHJldmlv
dXNUcmVlKC0xKQogICAgICwgbV9zZXR0aW5ncyhzZXR0aW5ncykKICAgICAsIG1fZGV2aWNlU2Nh
bGVGYWN0b3IoMSkKQEAgLTU0NSwxMSArNTQ3LDE2IEBAIHZvaWQgQ0NMYXllclRyZWVIb3N0SW1w
bDo6ZHJhd0xheWVycyhjb25zdCBGcmFtZURhdGEmIGZyYW1lKQogICAgIC8vIFJlbmRlcldpZGdl
dC4KICAgICBtX2Zwc0NvdW50ZXItPm1hcmtCZWdpbm5pbmdPZkZyYW1lKGN1cnJlbnRUaW1lKCkp
OwogCi0gICAgbV9sYXllclJlbmRlcmVyLT5kcmF3RnJhbWUoZnJhbWUucmVuZGVyUGFzc2VzLCBm
cmFtZS5yZW5kZXJQYXNzZXNCeUlkKTsKLQogICAgIGlmIChtX3NldHRpbmdzLnNob3dEZWJ1Z1Jl
Y3RzKCkpCiAgICAgICAgIG1fZGVidWdSZWN0SGlzdG9yeS0+c2F2ZURlYnVnUmVjdHNGb3JDdXJy
ZW50RnJhbWUobV9yb290TGF5ZXJJbXBsLmdldCgpLCAqZnJhbWUucmVuZGVyU3VyZmFjZUxheWVy
TGlzdCwgZnJhbWUub2NjbHVkaW5nU2NyZWVuU3BhY2VSZWN0cywgc2V0dGluZ3MoKSk7CiAKKyAg
ICAvLyBCZWNhdXNlIHRoZSBjb250ZW50cyBvZiB0aGUgSFVEIGRlcGVuZCBvbiBldmVyeXRoaW5n
IGVsc2UgaW4gdGhlIGZyYW1lLCB0aGUgY29udGVudHMKKyAgICAvLyBvZiBpdHMgdGV4dHVyZSBh
cmUgdXBkYXRlZCBhcyB0aGUgbGFzdCB0aGluZyBiZWZvcmUgdGhlIGZyYW1lIGlzIGRyYXduLgor
ICAgIGlmIChtX2h1ZExheWVySW1wbCkKKyAgICAgICAgbV9odWRMYXllckltcGwtPnVwZGF0ZUh1
ZFRleHR1cmUobV9yZXNvdXJjZVByb3ZpZGVyLmdldCgpKTsKKworICAgIG1fbGF5ZXJSZW5kZXJl
ci0+ZHJhd0ZyYW1lKGZyYW1lLnJlbmRlclBhc3NlcywgZnJhbWUucmVuZGVyUGFzc2VzQnlJZCk7
CisKICAgICAvLyBPbmNlIGEgUmVuZGVyUGFzcyBoYXMgYmVlbiBkcmF3biwgaXRzIGRhbWFnZSBz
aG91bGQgYmUgY2xlYXJlZCBpbgogICAgIC8vIGNhc2UgdGhlIFJlbmRlclBhc3Mgd2lsbCBiZSBy
ZXVzZWQgbmV4dCBmcmFtZS4KICAgICBmb3IgKHVuc2lnbmVkIGludCBpID0gMDsgaSA8IGZyYW1l
LnJlbmRlclBhc3Nlcy5zaXplKCk7IGkrKykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdElt
cGwuaAppbmRleCBjNjAwYjVkYjE5MjhkMDVkYmIxN2Y5Y2Y5OTliMDE1MzMwMDRjZDhhLi45Zjkz
MGEwMmE0NjU1M2IwMzFiMzUzZmE3OWQxNjAwZGQ2NTYzOThlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBs
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NM
YXllclRyZWVIb3N0SW1wbC5oCkBAIC00MSw2ICs0MSw3IEBAIGNsYXNzIENDQWN0aXZlR2VzdHVy
ZUFuaW1hdGlvbjsKIGNsYXNzIENDQ29tcGxldGlvbkV2ZW50OwogY2xhc3MgQ0NEZWJ1Z1JlY3RI
aXN0b3J5OwogY2xhc3MgQ0NGcmFtZVJhdGVDb3VudGVyOworY2xhc3MgQ0NIZWFkc1VwRGlzcGxh
eUxheWVySW1wbDsKIGNsYXNzIENDTGF5ZXJJbXBsOwogY2xhc3MgQ0NMYXllclRyZWVIb3N0SW1w
bFRpbWVTb3VyY2VBZGFwdGVyOwogY2xhc3MgQ0NQYWdlU2NhbGVBbmltYXRpb247CkBAIC0xNDAs
NiArMTQxLDkgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Um9vdExheWVyKFBhc3NPd25QdHI8Q0NM
YXllckltcGw+KTsKICAgICBDQ0xheWVySW1wbCogcm9vdExheWVyKCkgeyByZXR1cm4gbV9yb290
TGF5ZXJJbXBsLmdldCgpOyB9CiAKKyAgICB2b2lkIHNldEh1ZExheWVyKENDSGVhZHNVcERpc3Bs
YXlMYXllckltcGwqIGxheWVySW1wbCkgeyBtX2h1ZExheWVySW1wbCA9IGxheWVySW1wbDsgfQor
ICAgIENDSGVhZHNVcERpc3BsYXlMYXllckltcGwqIGh1ZExheWVyKCkgeyByZXR1cm4gbV9odWRM
YXllckltcGw7IH0KKwogICAgIC8vIFJlbGVhc2Ugb3duZXJzaGlwIG9mIHRoZSBjdXJyZW50IGxh
eWVyIHRyZWUgYW5kIHJlcGxhY2UgaXQgd2l0aCBhbiBlbXB0eQogICAgIC8vIHRyZWUuIFJldHVy
bnMgdGhlIHJvb3QgbGF5ZXIgb2YgdGhlIGRldGFjaGVkIHRyZWUuCiAgICAgUGFzc093blB0cjxD
Q0xheWVySW1wbD4gZGV0YWNoTGF5ZXJUcmVlKCk7CkBAIC0yNjcsNiArMjcxLDcgQEAgcHJpdmF0
ZToKICAgICBPd25QdHI8Q0NMYXllckltcGw+IG1fcm9vdExheWVySW1wbDsKICAgICBDQ0xheWVy
SW1wbCogbV9yb290U2Nyb2xsTGF5ZXJJbXBsOwogICAgIENDTGF5ZXJJbXBsKiBtX2N1cnJlbnRs
eVNjcm9sbGluZ0xheWVySW1wbDsKKyAgICBDQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsKiBtX2h1
ZExheWVySW1wbDsKICAgICBpbnQgbV9zY3JvbGxpbmdMYXllcklkRnJvbVByZXZpb3VzVHJlZTsK
ICAgICBDQ0xheWVyVHJlZVNldHRpbmdzIG1fc2V0dGluZ3M7CiAgICAgSW50U2l6ZSBtX2xheW91
dFZpZXdwb3J0U2l6ZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>159459</attachid>
            <date>2012-08-20 09:55:56 -0700</date>
            <delta_ts>2012-08-20 11:23:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93743-20120820125516.patch</filename>
            <type>text/plain</type>
            <size>9835</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2MDQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzFkN2UzNTU1YTNjNjY2
MjhkNmM4ZWQ1N2MxYjMzNTc2YTU0NjIwZC4uNTk5YjU3NmQ1ZWQ2ZjQzZDJlYzMwN2VhNGMzNmQy
NGI2NDQwNjgyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDEyLTA4LTIwICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gVXBk
YXRlIEhVRCByZXNvdXJjZXMgYXMgYSBmaW5hbCBzdGVwIHRvIGRyYXdpbmcgYSBmcmFtZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTM3NDMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgSFVEIHNob3Vs
ZCBiZSBwYWludGVkIGFzIGEgbGFzdCBzdGVwLCBhZnRlciB0aGUgd2hvbGUgZnJhbWUgaGFzIGJl
ZW4KKyAgICAgICAgZ2VuZXJhdGVkLiBUaGlzIGludHJvZHVjZXMgYSBuZXcgInVwZGF0ZUh1ZFRl
eHR1cmUiIG1ldGhvZCBvbiB0aGUgSFVEIGxheWVyCisgICAgICAgIGFuZCBoYXMgdGhlIEhVRCBs
YXllciBzYXZlIGl0c2VsZiBvbiBDQ0xheWVyVHJlZUhvc3RJbXBsIHNvIHRoYXQgaXQgY2FuCisg
ICAgICAgIGNhbGwgYmFjayB0byB0aGlzIG1ldGhvZC4KKworICAgICAgICBUaGlzIGFsbG93cyB0
aGUgQ0NMYXllclRyZWVIb3N0SW1wbCB0byBjYXVzZSB0aGUgSFVEIGxheWVyIHRvIHVwZGF0ZSBp
dHMKKyAgICAgICAgdGV4dHVyZSBhcyBhIGZpbmFsIHN0ZXAgYmVmb3JlIGRyYXdpbmcgdGhlIGZy
YW1lLCBhbGxvd2luZyB0aGUgSFVEIHRleHR1cmUKKyAgICAgICAgdG8gY29udGFpbiBhbGwgcG9z
c2libGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgZnJhbWUuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNDSGVhZHNVcERpc3BsYXlMYXllckltcGw6OndpbGxEcmF3
KToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q0NIZWFkc1VwRGlzcGxh
eUxheWVySW1wbDo6YXBwZW5kUXVhZHMpOgorICAgICAgICAoV2ViQ29yZTo6Q0NIZWFkc1VwRGlz
cGxheUxheWVySW1wbDo6dXBkYXRlSHVkVGV4dHVyZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5oOgorICAgICAgICAo
Q0NIZWFkc1VwRGlzcGxheUxheWVySW1wbCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5
ZXJUcmVlSG9zdDo6ZmluaXNoQ29tbWl0T25JbXBsVGhyZWFkKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNDTGF5ZXJUcmVlSG9zdEltcGw6OkNDTGF5ZXJUcmVlSG9zdEltcGwpOgorICAg
ICAgICAoV2ViQ29yZTo6Q0NMYXllclRyZWVIb3N0SW1wbDo6ZHJhd0xheWVycyk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5oOgor
ICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpDQ0xheWVyVHJlZUhvc3RJbXBs
OjpzZXRIdWRMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpDQ0xheWVyVHJlZUhvc3RJbXBsOjpo
dWRMYXllcik6CisgICAgICAgIChDQ0xheWVyVHJlZUhvc3RJbXBsKToKKwogMjAxMi0wOC0yMCAg
Q2hyaXN0b3BoZSBEdW1leiAgPGNocmlzdG9waGUuZHVtZXpAaW50ZWwuY29tPgogCiAgICAgICAg
IHBvc3RNZXNzYWdlKCkgaW4gTWVzc2FnZVBvcnQuaWRsIGRvZXMgbm90IG1hdGNoIHNwZWMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0ND
SGVhZHNVcERpc3BsYXlMYXllckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5jcHAKaW5kZXggZGRi
NDBmMzBiYjA5ZmFjMmJmYWY1MWRmNTdmYzVlNjBkMzliMDE2OS4uNWZkZDJjZDY5YWRlZDcwYmMw
MGU2MDYwY2NkMDc4Mjc2ZDNmNmEyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1Vw
RGlzcGxheUxheWVySW1wbC5jcHAKQEAgLTg3LDcgKzg3LDI1IEBAIHZvaWQgQ0NIZWFkc1VwRGlz
cGxheUxheWVySW1wbDo6d2lsbERyYXcoQ0NSZXNvdXJjZVByb3ZpZGVyKiByZXNvdXJjZVByb3Zp
ZGVyKQogICAgIGlmIChtX2h1ZFRleHR1cmUtPnNpemUoKSAhPSBib3VuZHMoKSkKICAgICAgICAg
bV9odWRUZXh0dXJlLT5mcmVlKCk7CiAKLSAgICBpZiAoIW1faHVkVGV4dHVyZS0+aWQoKSAmJiAh
bV9odWRUZXh0dXJlLT5hbGxvY2F0ZShDQ1JlbmRlcmVyOjpJbXBsUG9vbCwgYm91bmRzKCksIEdy
YXBoaWNzQ29udGV4dDNEOjpSR0JBLCBDQ1Jlc291cmNlUHJvdmlkZXI6OlRleHR1cmVVc2FnZUFu
eSkpCisgICAgaWYgKCFtX2h1ZFRleHR1cmUtPmlkKCkpCisgICAgICAgIG1faHVkVGV4dHVyZS0+
YWxsb2NhdGUoQ0NSZW5kZXJlcjo6SW1wbFBvb2wsIGJvdW5kcygpLCBHcmFwaGljc0NvbnRleHQz
RDo6UkdCQSwgQ0NSZXNvdXJjZVByb3ZpZGVyOjpUZXh0dXJlVXNhZ2VBbnkpOworfQorCit2b2lk
IENDSGVhZHNVcERpc3BsYXlMYXllckltcGw6OmFwcGVuZFF1YWRzKENDUXVhZFNpbmsmIHF1YWRM
aXN0LCBjb25zdCBDQ1NoYXJlZFF1YWRTdGF0ZSogc2hhcmVkUXVhZFN0YXRlLCBib29sJikKK3sK
KyAgICBpZiAoIW1faHVkVGV4dHVyZS0+aWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgSW50
UmVjdCBxdWFkUmVjdChJbnRQb2ludCgpLCBib3VuZHMoKSk7CisgICAgYm9vbCBwcmVtdWx0aXBs
aWVkQWxwaGEgPSB0cnVlOworICAgIEZsb2F0UmVjdCB1dlJlY3QoMCwgMCwgMSwgMSk7CisgICAg
Ym9vbCBmbGlwcGVkID0gZmFsc2U7CisgICAgcXVhZExpc3QuYXBwZW5kKENDVGV4dHVyZURyYXdR
dWFkOjpjcmVhdGUoc2hhcmVkUXVhZFN0YXRlLCBxdWFkUmVjdCwgbV9odWRUZXh0dXJlLT5pZCgp
LCBwcmVtdWx0aXBsaWVkQWxwaGEsIHV2UmVjdCwgZmxpcHBlZCkpOworfQorCit2b2lkIENDSGVh
ZHNVcERpc3BsYXlMYXllckltcGw6OnVwZGF0ZUh1ZFRleHR1cmUoQ0NSZXNvdXJjZVByb3ZpZGVy
KiByZXNvdXJjZVByb3ZpZGVyKQoreworICAgIGlmICghbV9odWRUZXh0dXJlLT5pZCgpKQogICAg
ICAgICByZXR1cm47CiAKICAgICBTa0lTaXplIGNhbnZhc1NpemU7CkBAIC0xMTAsMTggKzEyOCw2
IEBAIHZvaWQgQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbDo6d2lsbERyYXcoQ0NSZXNvdXJjZVBy
b3ZpZGVyKiByZXNvdXJjZVByb3ZpZGVyKQogICAgIHJlc291cmNlUHJvdmlkZXItPnVwbG9hZCht
X2h1ZFRleHR1cmUtPmlkKCksIHN0YXRpY19jYXN0PGNvbnN0IHVpbnQ4X3QqPihiaXRtYXAtPmdl
dFBpeGVscygpKSwgbGF5ZXJSZWN0LCBsYXllclJlY3QsIEludFNpemUoKSk7CiB9CiAKLXZvaWQg
Q0NIZWFkc1VwRGlzcGxheUxheWVySW1wbDo6YXBwZW5kUXVhZHMoQ0NRdWFkU2luayYgcXVhZExp
c3QsIGNvbnN0IENDU2hhcmVkUXVhZFN0YXRlKiBzaGFyZWRRdWFkU3RhdGUsIGJvb2wmKQotewot
ICAgIGlmICghbV9odWRUZXh0dXJlLT5pZCgpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBJbnRS
ZWN0IHF1YWRSZWN0KEludFBvaW50KCksIGJvdW5kcygpKTsKLSAgICBib29sIHByZW11bHRpcGxp
ZWRBbHBoYSA9IHRydWU7Ci0gICAgRmxvYXRSZWN0IHV2UmVjdCgwLCAwLCAxLCAxKTsKLSAgICBi
b29sIGZsaXBwZWQgPSBmYWxzZTsKLSAgICBxdWFkTGlzdC5hcHBlbmQoQ0NUZXh0dXJlRHJhd1F1
YWQ6OmNyZWF0ZShzaGFyZWRRdWFkU3RhdGUsIHF1YWRSZWN0LCBtX2h1ZFRleHR1cmUtPmlkKCks
IHByZW11bHRpcGxpZWRBbHBoYSwgdXZSZWN0LCBmbGlwcGVkKSk7Ci19Ci0KIHZvaWQgQ0NIZWFk
c1VwRGlzcGxheUxheWVySW1wbDo6ZGlkRHJhdyhDQ1Jlc291cmNlUHJvdmlkZXIqIHJlc291cmNl
UHJvdmlkZXIpCiB7CiAgICAgQ0NMYXllckltcGw6OmRpZERyYXcocmVzb3VyY2VQcm92aWRlcik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9j
Yy9DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jaHJvbWl1bS9jYy9DQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsLmgKaW5kZXggN2Nk
YWM4ODk0YTBjMGY4NzllZmEzZWExNjY1MmQyNjhmYzhhOTViYi4uMWVlMjRjNDdlOGFlNTJlZGU3
OTYxZjA0NTRjNTE4NmVhNTMyY2EwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDSGVhZHNVcERp
c3BsYXlMYXllckltcGwuaApAQCAtNTAsNiArNTAsNyBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFs
IHZvaWQgd2lsbERyYXcoQ0NSZXNvdXJjZVByb3ZpZGVyKikgT1ZFUlJJREU7CiAgICAgdmlydHVh
bCB2b2lkIGFwcGVuZFF1YWRzKENDUXVhZFNpbmsmLCBjb25zdCBDQ1NoYXJlZFF1YWRTdGF0ZSos
IGJvb2wmIGhhZE1pc3NpbmdUaWxlcykgT1ZFUlJJREU7CisgICAgdm9pZCB1cGRhdGVIdWRUZXh0
dXJlKENDUmVzb3VyY2VQcm92aWRlciopOwogICAgIHZpcnR1YWwgdm9pZCBkaWREcmF3KENDUmVz
b3VyY2VQcm92aWRlciopIE9WRVJSSURFOwogCiAgICAgdmlydHVhbCB2b2lkIGRpZExvc2VDb250
ZXh0KCkgT1ZFUlJJREU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcAppbmRleCA1MTMx
OTQ5YTY3NTA1MmM3ODVmN2ExNmRjYzhmZWMyZjI3ZTY5M2JlLi5lYmQ3MzM5MDJlNGE5ZGM4MTdi
YWVmZWZiZDJmZmZhMjc3YmQwMjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHAK
QEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgIkNDRm9udEF0bGFzLmgiCiAjaW5jbHVkZSAi
Q0NHcmFwaGljc0NvbnRleHQuaCIKKyNpbmNsdWRlICJDQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBs
LmgiCiAjaW5jbHVkZSAiQ0NMYXllckFuaW1hdGlvbkNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJD
Q0xheWVySXRlcmF0b3IuaCIKICNpbmNsdWRlICJDQ0xheWVyVHJlZUhvc3RDb21tb24uaCIKQEAg
LTIzNiw2ICsyMzcsMTEgQEAgdm9pZCBDQ0xheWVyVHJlZUhvc3Q6OmZpbmlzaENvbW1pdE9uSW1w
bFRocmVhZChDQ0xheWVyVHJlZUhvc3RJbXBsKiBob3N0SW1wbCkKIAogICAgIGhvc3RJbXBsLT5z
ZXRSb290TGF5ZXIoVHJlZVN5bmNocm9uaXplcjo6c3luY2hyb25pemVUcmVlcyhyb290TGF5ZXIo
KSwgaG9zdEltcGwtPmRldGFjaExheWVyVHJlZSgpLCBob3N0SW1wbCkpOwogCisgICAgaWYgKCFt
X2h1ZExheWVyKQorICAgICAgICBob3N0SW1wbC0+c2V0SHVkTGF5ZXIoMCk7CisgICAgZWxzZQor
ICAgICAgICBob3N0SW1wbC0+c2V0SHVkTGF5ZXIoc3RhdGljX2Nhc3Q8Q0NIZWFkc1VwRGlzcGxh
eUxheWVySW1wbCo+KENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6ZmluZExheWVySW5TdWJ0cmVlKGhv
c3RJbXBsLT5yb290TGF5ZXIoKSwgbV9odWRMYXllci0+aWQoKSkpKTsKKwogICAgIC8vIFdlIG1h
eSBoYXZlIGFkZGVkIGFuIGFuaW1hdGlvbiBkdXJpbmcgdGhlIHRyZWUgc3luYy4gVGhpcyB3aWxs
IGNhdXNlIGJvdGggbGF5ZXIgdHJlZSBob3N0cwogICAgIC8vIHRvIHZpc2l0IHRoZWlyIGNvbnRy
b2xsZXJzLgogICAgIGlmIChyb290TGF5ZXIoKSAmJiBtX25lZWRzQW5pbWF0ZUxheWVycykKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0ND
TGF5ZXJUcmVlSG9zdEltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKaW5kZXggMWJjY2Y3Y2ZlYzUyYzk0
YjM5NTRiYTdmZTViM2M5NWEyMDAyZjM2NS4uNDZlZGNjMGE4MDE0NGUyY2M3NzQ3YWExOTY2ZWU3
NDljNThhOTFkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKQEAg
LTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJDQ0RlbGF5QmFzZWRUaW1lU291cmNlLmgiCiAjaW5j
bHVkZSAiQ0NGb250QXRsYXMuaCIKICNpbmNsdWRlICJDQ0ZyYW1lUmF0ZUNvdW50ZXIuaCIKKyNp
bmNsdWRlICJDQ0hlYWRzVXBEaXNwbGF5TGF5ZXJJbXBsLmgiCiAjaW5jbHVkZSAiQ0NMYXllckl0
ZXJhdG9yLmgiCiAjaW5jbHVkZSAiQ0NMYXllclRyZWVIb3N0LmgiCiAjaW5jbHVkZSAiQ0NMYXll
clRyZWVIb3N0Q29tbW9uLmgiCkBAIC0xMTksNiArMTIwLDcgQEAgQ0NMYXllclRyZWVIb3N0SW1w
bDo6Q0NMYXllclRyZWVIb3N0SW1wbChjb25zdCBDQ0xheWVyVHJlZVNldHRpbmdzJiBzZXR0aW5n
cywgQ0MKICAgICAsIG1fc291cmNlRnJhbWVOdW1iZXIoLTEpCiAgICAgLCBtX3Jvb3RTY3JvbGxM
YXllckltcGwoMCkKICAgICAsIG1fY3VycmVudGx5U2Nyb2xsaW5nTGF5ZXJJbXBsKDApCisgICAg
LCBtX2h1ZExheWVySW1wbCgwKQogICAgICwgbV9zY3JvbGxpbmdMYXllcklkRnJvbVByZXZpb3Vz
VHJlZSgtMSkKICAgICAsIG1fc2Nyb2xsRGVsdGFJc0luU2NyZWVuU3BhY2UoZmFsc2UpCiAgICAg
LCBtX3NldHRpbmdzKHNldHRpbmdzKQpAQCAtNTQ3LDExICs1NDksMTYgQEAgdm9pZCBDQ0xheWVy
VHJlZUhvc3RJbXBsOjpkcmF3TGF5ZXJzKGNvbnN0IEZyYW1lRGF0YSYgZnJhbWUpCiAgICAgLy8g
UmVuZGVyV2lkZ2V0LgogICAgIG1fZnBzQ291bnRlci0+bWFya0JlZ2lubmluZ09mRnJhbWUoY3Vy
cmVudFRpbWUoKSk7CiAKLSAgICBtX2xheWVyUmVuZGVyZXItPmRyYXdGcmFtZShmcmFtZS5yZW5k
ZXJQYXNzZXMsIGZyYW1lLnJlbmRlclBhc3Nlc0J5SWQpOwotCiAgICAgaWYgKG1fc2V0dGluZ3Mu
c2hvd0RlYnVnUmVjdHMoKSkKICAgICAgICAgbV9kZWJ1Z1JlY3RIaXN0b3J5LT5zYXZlRGVidWdS
ZWN0c0ZvckN1cnJlbnRGcmFtZShtX3Jvb3RMYXllckltcGwuZ2V0KCksICpmcmFtZS5yZW5kZXJT
dXJmYWNlTGF5ZXJMaXN0LCBmcmFtZS5vY2NsdWRpbmdTY3JlZW5TcGFjZVJlY3RzLCBzZXR0aW5n
cygpKTsKIAorICAgIC8vIEJlY2F1c2UgdGhlIGNvbnRlbnRzIG9mIHRoZSBIVUQgZGVwZW5kIG9u
IGV2ZXJ5dGhpbmcgZWxzZSBpbiB0aGUgZnJhbWUsIHRoZSBjb250ZW50cworICAgIC8vIG9mIGl0
cyB0ZXh0dXJlIGFyZSB1cGRhdGVkIGFzIHRoZSBsYXN0IHRoaW5nIGJlZm9yZSB0aGUgZnJhbWUg
aXMgZHJhd24uCisgICAgaWYgKG1faHVkTGF5ZXJJbXBsKQorICAgICAgICBtX2h1ZExheWVySW1w
bC0+dXBkYXRlSHVkVGV4dHVyZShtX3Jlc291cmNlUHJvdmlkZXIuZ2V0KCkpOworCisgICAgbV9s
YXllclJlbmRlcmVyLT5kcmF3RnJhbWUoZnJhbWUucmVuZGVyUGFzc2VzLCBmcmFtZS5yZW5kZXJQ
YXNzZXNCeUlkKTsKKwogICAgIC8vIE9uY2UgYSBSZW5kZXJQYXNzIGhhcyBiZWVuIGRyYXduLCBp
dHMgZGFtYWdlIHNob3VsZCBiZSBjbGVhcmVkIGluCiAgICAgLy8gY2FzZSB0aGUgUmVuZGVyUGFz
cyB3aWxsIGJlIHJldXNlZCBuZXh0IGZyYW1lLgogICAgIGZvciAodW5zaWduZWQgaW50IGkgPSAw
OyBpIDwgZnJhbWUucmVuZGVyUGFzc2VzLnNpemUoKTsgaSsrKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1w
bC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXll
clRyZWVIb3N0SW1wbC5oCmluZGV4IDYwODNmNWYwNGYwMzRlOGZhOWNmZDM0ZGNlOTlmOTNjMmNi
ODEwMDMuLjVhNGI2NGE1N2JmNTRkYmU3NWI1MTYxN2VlMGRjMjBlYjdlODgwYWEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJU
cmVlSG9zdEltcGwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmgKQEAgLTQxLDYgKzQxLDcgQEAgY2xhc3MgQ0NB
Y3RpdmVHZXN0dXJlQW5pbWF0aW9uOwogY2xhc3MgQ0NDb21wbGV0aW9uRXZlbnQ7CiBjbGFzcyBD
Q0RlYnVnUmVjdEhpc3Rvcnk7CiBjbGFzcyBDQ0ZyYW1lUmF0ZUNvdW50ZXI7CitjbGFzcyBDQ0hl
YWRzVXBEaXNwbGF5TGF5ZXJJbXBsOwogY2xhc3MgQ0NMYXllckltcGw7CiBjbGFzcyBDQ0xheWVy
VHJlZUhvc3RJbXBsVGltZVNvdXJjZUFkYXB0ZXI7CiBjbGFzcyBDQ1BhZ2VTY2FsZUFuaW1hdGlv
bjsKQEAgLTE0MCw2ICsxNDEsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRSb290TGF5ZXIoUGFz
c093blB0cjxDQ0xheWVySW1wbD4pOwogICAgIENDTGF5ZXJJbXBsKiByb290TGF5ZXIoKSB7IHJl
dHVybiBtX3Jvb3RMYXllckltcGwuZ2V0KCk7IH0KIAorICAgIHZvaWQgc2V0SHVkTGF5ZXIoQ0NI
ZWFkc1VwRGlzcGxheUxheWVySW1wbCogbGF5ZXJJbXBsKSB7IG1faHVkTGF5ZXJJbXBsID0gbGF5
ZXJJbXBsOyB9CisgICAgQ0NIZWFkc1VwRGlzcGxheUxheWVySW1wbCogaHVkTGF5ZXIoKSB7IHJl
dHVybiBtX2h1ZExheWVySW1wbDsgfQorCiAgICAgLy8gUmVsZWFzZSBvd25lcnNoaXAgb2YgdGhl
IGN1cnJlbnQgbGF5ZXIgdHJlZSBhbmQgcmVwbGFjZSBpdCB3aXRoIGFuIGVtcHR5CiAgICAgLy8g
dHJlZS4gUmV0dXJucyB0aGUgcm9vdCBsYXllciBvZiB0aGUgZGV0YWNoZWQgdHJlZS4KICAgICBQ
YXNzT3duUHRyPENDTGF5ZXJJbXBsPiBkZXRhY2hMYXllclRyZWUoKTsKQEAgLTI2Nyw2ICsyNzEs
NyBAQCBwcml2YXRlOgogICAgIE93blB0cjxDQ0xheWVySW1wbD4gbV9yb290TGF5ZXJJbXBsOwog
ICAgIENDTGF5ZXJJbXBsKiBtX3Jvb3RTY3JvbGxMYXllckltcGw7CiAgICAgQ0NMYXllckltcGwq
IG1fY3VycmVudGx5U2Nyb2xsaW5nTGF5ZXJJbXBsOworICAgIENDSGVhZHNVcERpc3BsYXlMYXll
ckltcGwqIG1faHVkTGF5ZXJJbXBsOwogICAgIGludCBtX3Njcm9sbGluZ0xheWVySWRGcm9tUHJl
dmlvdXNUcmVlOwogICAgIGJvb2wgbV9zY3JvbGxEZWx0YUlzSW5TY3JlZW5TcGFjZTsKICAgICBD
Q0xheWVyVHJlZVNldHRpbmdzIG1fc2V0dGluZ3M7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>