<?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>76317</bug_id>
          
          <creation_ts>2012-01-13 15:22:47 -0800</creation_ts>
          <short_desc>REGRESSION(r103245): can&apos;t scroll left/up using scrollbar controls of overflowing elements</short_desc>
          <delta_ts>2012-01-24 23:55:52 -0800</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>Linux</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>
          <dependson>76986</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tony Chang">tony</reporter>
          <assigned_to name="Tony Chang">tony</assigned_to>
          <cc>bdakin</cc>
    
    <cc>darin</cc>
    
    <cc>kling</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xji</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>536028</commentid>
    <comment_count>0</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-13 15:22:47 -0800</bug_when>
    <thetext>I&apos;ll attach a test case demonstrating the problem.  It seems like internally we think that the scroll offset is the top left of the block.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>536029</commentid>
    <comment_count>1</comment_count>
      <attachid>122507</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-13 15:23:15 -0800</bug_when>
    <thetext>Created attachment 122507
test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>536034</commentid>
    <comment_count>2</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-13 15:26:25 -0800</bug_when>
    <thetext>Huh, this only seems to not work on Linux.  It works for me on Chromium Win, Chromium Mac and Safari Mac.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539034</commentid>
    <comment_count>3</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-19 14:23:29 -0800</bug_when>
    <thetext>Ah, wrong again.  I was using an old build of the other browsers.  I&apos;m now able to repro in Chromium Win and Safari Mac using ToT WebKit.  This is a regression caused by bug 74830.

ScrollAnimators are always created with an offset of (0,0), but not all ScrollableAreas start with an offset of (0,0).

Maybe we should always call scrollToOffsetWithoutAnimation if scrollOffset != 0, 0?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540696</commentid>
    <comment_count>4</comment_count>
      <attachid>123586</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-23 11:36:47 -0800</bug_when>
    <thetext>Created attachment 123586
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540697</commentid>
    <comment_count>5</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-23 11:37:19 -0800</bug_when>
    <thetext>I verified that this patch does not create any additional ScrollAnimators on the html5 spec.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540702</commentid>
    <comment_count>6</comment_count>
      <attachid>123586</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-01-23 11:38:38 -0800</bug_when>
    <thetext>Comment on attachment 123586
Patch

Is this the only practical way to fix this? Special-casing 0 does not seem right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540719</commentid>
    <comment_count>7</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-23 11:52:27 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 123586 [details])
&gt; Is this the only practical way to fix this? Special-casing 0 does not seem right.

We could also check to see if the scroll origin is 0, 0.  Would that be better?

I also considered passing the initial offset to ScrollAnimator::create.  This is tricky because ScrollAnimator is created from lots of different code paths in ScrollableArea.  Not all of them know the initial offset.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540726</commentid>
    <comment_count>8</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-23 11:57:18 -0800</bug_when>
    <thetext>We might also be able to move the check from RenderLayer::scrollToOffset to RenderLayer::updateScrollInfoAfterLayout, but I&apos;m not sure if that will cause us to lose the optimization for other calls to RenderLayer::scrollToOffset.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540771</commentid>
    <comment_count>9</comment_count>
      <attachid>123605</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-23 13:06:05 -0800</bug_when>
    <thetext>Created attachment 123605
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540772</commentid>
    <comment_count>10</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-23 13:07:22 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; Created an attachment (id=123605) [details]
&gt; Patch

This duplicates the checking logic in scrollToOffset, but avoids checking against 0, 0.

Also, I&apos;ll do a follow up patch to change scrollOffset to a LayoutPoint.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>541606</commentid>
    <comment_count>11</comment_count>
      <attachid>123791</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-24 13:20:30 -0800</bug_when>
    <thetext>Created attachment 123791
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>541607</commentid>
    <comment_count>12</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-24 13:21:18 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; Created an attachment (id=123791) [details]
&gt; Patch

Just changed the test to not output scroll offsets since it will likely be different on different platforms.

Darin, can you take a look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>541642</commentid>
    <comment_count>13</comment_count>
      <attachid>123791</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-01-24 13:50:32 -0800</bug_when>
    <thetext>Comment on attachment 123791
Patch

We often use a technique where the failing results show the values but passing omits them. That makes it easier to diagnose problems while staying platform-independent in our expected results.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>541686</commentid>
    <comment_count>14</comment_count>
      <attachid>123807</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-24 14:17:42 -0800</bug_when>
    <thetext>Created attachment 123807
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>541687</commentid>
    <comment_count>15</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-01-24 14:18:02 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; (From update of attachment 123791 [details])
&gt; We often use a technique where the failing results show the values but passing omits them. That makes it easier to diagnose problems while staying platform-independent in our expected results.

Good idea; done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>541763</commentid>
    <comment_count>16</comment_count>
      <attachid>123807</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-24 15:21:24 -0800</bug_when>
    <thetext>Comment on attachment 123807
Patch for landing

Clearing flags on attachment: 123807

Committed r105820: &lt;http://trac.webkit.org/changeset/105820&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>541764</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-24 15:21:30 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>122507</attachid>
            <date>2012-01-13 15:23:15 -0800</date>
            <delta_ts>2012-01-13 15:23:15 -0800</delta_ts>
            <desc>test case</desc>
            <filename>test.html</filename>
            <type>text/html</type>
            <size>382</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">Q2xpY2tpbmcgdGhlIGFycm93IHRvIHNjcm9sbCBsZWZ0IHNob3VsZCBzY3JvbGwgdGhlIGRpdiBs
ZWZ0Lgo8ZGl2IHN0eWxlPSJkaXJlY3Rpb246IHJ0bDsgd2lkdGg6IDEwMHB4OyBvdmVyZmxvdzog
YXV0bzsiPgowMTIzNDU2Nzg5MDEyMzQ1Njc4OQo8L2Rpdj4KCkNsaWNraW5nIHRoZSBhcnJvdyB0
byBzY3JvbGwgdXAgc2hvdWxkIHNjcm9sbCB0aGUgZGl2IHVwLgo8ZGl2IHN0eWxlPSItd2Via2l0
LXdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC1idDsgaGVpZ2h0OiAxMDBweDsgb3ZlcmZsb3c6IGF1
dG87Ij4KYWFhPGJyPgpiYmI8YnI+CmNjYzxicj4KZGRkPGJyPgplZWU8YnI+CmZmZjxicj4KZ2dn
PGJyPgpoaGg8YnI+CmlpaTxicj4KampqPGJyPgpra2sKPC9kaXY+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123586</attachid>
            <date>2012-01-23 11:36:47 -0800</date>
            <delta_ts>2012-01-23 13:06:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-76317-20120123113726.patch</filename>
            <type>text/plain</type>
            <size>5712</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1NjMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzUzNDlkMjVkN2E0Y2Mz
ZWUyYzM3OTY3Y2ZiYjJmMGFkOGVjMzA4Ni4uMTNjZWJhM2U2ODM5N2VmYjQzOWZmMzM4ZThiNTAz
NTU5N2RjZjQxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEyLTAxLTIzICBUb255
IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMTAzMjQ1
KTogY2FuJ3Qgc2Nyb2xsIGxlZnQvdXAgdXNpbmcgc2Nyb2xsYmFyIGNvbnRyb2xzIG9mIG92ZXJm
bG93aW5nIGVsZW1lbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD03NjMxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFRlc3Q6IHNjcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci5odG1sCisKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXI6OnNjcm9sbFRvT2Zmc2V0KTogSWYgdGhlIG9mZnNldCBpcyBub3QgKDAsIDApLCBm
b3JjZSB0aGUgY3JlYXRpb24gb2YgYSBTY3JvbGxBbmltYXRvci4KKwogMjAxMi0wMS0yMyAgQW50
dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgQXR0ZW1wdCB0byBmaXgg
UXQgYnVpbGQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAppbmRleCA0
YTA5YTlmMDU4ZWE0NzQ5OTJjOTVjMzRkZTk0ZWMwMGFlNDFmMDYzLi4yNGExOWVkNjU5OGVhMzY1
YjE5ODJmZDM2ODI2YTJjNThlMWI0OWUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllci5jcHAKQEAgLTE0MTQsNyArMTQxNCw3IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnNjcm9s
bFRvT2Zmc2V0KExheW91dFVuaXQgeCwgTGF5b3V0VW5pdCB5LCBTY3JvbGxPZmZzZXRDbGFtcGlu
CiAgICAgfQogCiAgICAgTGF5b3V0UG9pbnQgbmV3U2Nyb2xsT2Zmc2V0KHgsIHkpOwotICAgIGlm
IChuZXdTY3JvbGxPZmZzZXQgIT0gTGF5b3V0UG9pbnQoc2Nyb2xsWE9mZnNldCgpLCBzY3JvbGxZ
T2Zmc2V0KCkpKQorICAgIGlmIChuZXdTY3JvbGxPZmZzZXQgIT0gTGF5b3V0UG9pbnQoMCwgMCkg
fHwgbmV3U2Nyb2xsT2Zmc2V0ICE9IExheW91dFBvaW50KHNjcm9sbFhPZmZzZXQoKSwgc2Nyb2xs
WU9mZnNldCgpKSkKICAgICAgICAgc2Nyb2xsVG9PZmZzZXRXaXRob3V0QW5pbWF0aW9uKG5ld1Nj
cm9sbE9mZnNldCk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5NWY3NGUxOTc0YzM4OGRiZDdkMTdjMmUyYmViNTA3
YmM4NmUzM2M2Li41YWVhYTg0MmU2NTdhYjc0MDZlMjJmMGU0NmM5ZTVhMTljZGMzYWE3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTQgQEAKKzIwMTItMDEtMjMgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSRUdSRVNTSU9OKHIxMDMyNDUpOiBjYW4ndCBzY3JvbGwgbGVmdC91
cCB1c2luZyBzY3JvbGxiYXIgY29udHJvbHMgb2Ygb3ZlcmZsb3dpbmcgZWxlbWVudHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc2MzE3CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4v
U2tpcHBlZDoKKyAgICAgICAgKiBzY3JvbGxiYXJzL3Njcm9sbC1ydGwtb3ItYnQtbGF5ZXItZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBzY3JvbGxiYXJzL3Njcm9sbC1ydGwtb3ItYnQt
bGF5ZXIuaHRtbDogQWRkZWQuCisKIDIwMTItMDEtMjMgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9y
bWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHVuc2tpcCBub3cgcGFzc2lu
ZyB0ZXN0cyBvbiBHVEsuIFNwb3R0ZWQgYnkgWmFuIERvYmVyc2VrLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
U2tpcHBlZAppbmRleCA2NjIyZjJlZDFkZTdiNzE1OGFmZjg5MjI5OWU5YTY4NmFmYjU0ZDljLi4x
YzJlYTYyNjBmOTFiZTI4NDczMDNkMGI1NDVjNzYyNDhlOWIwOTA3IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW4vU2tpcHBlZApAQCAtOTcwLDYgKzk3MCw3IEBAIGZhc3QvZXZlbnRzL2NvbnRpbnVvdXMtcGxh
dGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKIGZhc3QvZXZlbnRzL3doZWVs
ZXZlbnQtaW4taG9yaXpvbnRhbC1zY3JvbGxiYXItaW4tcnRsLmh0bWwKIGZhc3QvZXZlbnRzL3do
ZWVsZXZlbnQtaW4tdmVydGljYWwtc2Nyb2xsYmFyLWluLXJ0bC5odG1sCiBzY3JvbGxiYXJzL3Nj
cm9sbGV2ZW50LWlmcmFtZS1uby1zY3JvbGxpbmctd2hlZWwuaHRtbAorc2Nyb2xsYmFycy9zY3Jv
bGwtcnRsLW9yLWJ0LWxheWVyLmh0bWwKIAogIyBXaW5kb3dzIHBvcnQgZG9lc24ndCB5ZXQgc3Vw
cG9ydCByZW5kZXJpbmcgb2Ygbm9uLUJNUCBjaGFyYWN0ZXJzIGV2ZW4gdGhvdWdoIHRoZXJlJ3Mg
YSBmb250IGF2YWlsYWJsZS4KIGZhc3QvdGV4dC9pbnRlcm5hdGlvbmFsL3BsYW5lMi5odG1sIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Njcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1s
YXllci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTA4YjQwZWNkNzMzMTQ3NDVkNWNlODk1YTBj
MDliOGNmYzZiMWNmOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3Njcm9sbGJhcnMv
c2Nyb2xsLXJ0bC1vci1idC1sYXllci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitUaGlz
IHRlc3QgcmVxdWlyZXMgRHVtcFJlbmRlclRyZWUuIFRvIHRlc3QgbWFudWFsbHksIHRyeSB0byBz
Y3JvbGwgdGhlIGJsdWUgZGl2IHRvIHRoZSBsZWZ0IGFuZCB0aGUgcmVkIGRpdiB1cCB1c2luZyB0
aGUgc2Nyb2xsYmFyIGFycm93cyBvciB0aGUgbW91c2Ugd2hlZWwuIFRoZSB0ZXN0IHBhc3NlcyBp
ZiB0aGUgZGl2cyBzY3JvbGwuCisKK3J0bCBzY3JvbGxMZWZ0OiA2MAorcnRsIHNjcm9sbExlZnQ6
IDIwCitidCBzY3JvbGxMZWZ0OiAxMjAKK2J0IHNjcm9sbExlZnQ6IDgwCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3Njcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci5odG1sIGIvTGF5
b3V0VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVyLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMzVhM2I5NTA0MTQzOGU1MjE2ZDQ4MDNiYjkxY2Q5NWQ5NTllY2NjMAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL3Njcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci5odG1s
CkBAIC0wLDAgKzEsNjkgQEAKKzxodG1sPgorPGJvZHk+CisKKzxwPlRoaXMgdGVzdCByZXF1aXJl
cyBEdW1wUmVuZGVyVHJlZS4gIFRvIHRlc3QgbWFudWFsbHksIHRyeSB0byBzY3JvbGwgdGhlCiti
bHVlIGRpdiB0byB0aGUgbGVmdCBhbmQgdGhlIHJlZCBkaXYgdXAgdXNpbmcgdGhlIHNjcm9sbGJh
ciBhcnJvd3Mgb3IgdGhlCittb3VzZSB3aGVlbC4gIFRoZSB0ZXN0IHBhc3NlcyBpZiB0aGUgZGl2
cyBzY3JvbGwuPC9wPgorCis8ZGl2IGlkPSdydGwnIHN0eWxlPSJkaXJlY3Rpb246IHJ0bDsgd2lk
dGg6IDEwMHB4OyBvdmVyZmxvdzogYXV0bzsgYm9yZGVyOiAxcHggc29saWQgYmx1ZTsiPgorMDEy
MzQ1Njc4OTAxMjM0NTY3ODkKKzwvZGl2PgorCis8ZGl2IGlkPSdidCcgc3R5bGU9Ii13ZWJraXQt
d3JpdGluZy1tb2RlOiBob3Jpem9udGFsLWJ0OyBoZWlnaHQ6IDEwMHB4OyBvdmVyZmxvdzogYXV0
bzsgYm9yZGVyOiAxIHB4IHNvbGlkIHJlZDsiPgorYWFhPGJyPgorYmJiPGJyPgorY2NjPGJyPgor
ZGRkPGJyPgorZWVlPGJyPgorZmZmPGJyPgorZ2dnPGJyPgoraGhoPGJyPgoraWlpPGJyPgorampq
PGJyPgora2trCis8L2Rpdj4KKworPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisKKzxzY3JpcHQ+
CitmdW5jdGlvbiBsb2cobWVzc2FnZSkKK3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
Y29uc29sZSIpLmlubmVySFRNTCArPSBtZXNzYWdlICsgIjxicj4iOworfQorCitmdW5jdGlvbiBj
ZW50ZXJNb3VzZU9uKGVsZW1lbnRJZCkKK3sKKyAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKGVsZW1lbnRJZCk7CisgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oZWxl
bWVudC5vZmZzZXRMZWZ0ICsgZWxlbWVudC5vZmZzZXRXaWR0aCAvIDIsCisgICAgICAgIGVsZW1l
bnQub2Zmc2V0VG9wICsgZWxlbWVudC5vZmZzZXRIZWlnaHQgLyAyKTsKK30KKworZnVuY3Rpb24g
dGVzdCgpCit7CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgaWYgKCF3aW5kb3cuZXZl
bnRTZW5kZXIgfHwgIXdpbmRvdy5ldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5KSB7CisgICAgICAg
IGxvZygiVGhpcyB0ZXN0IHJlcXVpcmVzIER1bXBSZW5kZXJUcmVlIHdpdGggZXZlbnRTZW5kZXIu
bW91c2VTY3JvbGxCeS4iKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGNlbnRlck1v
dXNlT24oInJ0bCIpOworICAgIGxvZygicnRsIHNjcm9sbExlZnQ6ICIgKyBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicnRsIikuc2Nyb2xsTGVmdCk7CisgICAgZXZlbnRTZW5kZXIubW91c2VTY3Jv
bGxCeSgxLCAwKTsKKyAgICBsb2coInJ0bCBzY3JvbGxMZWZ0OiAiICsgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInJ0bCIpLnNjcm9sbExlZnQpOworCisgICAgY2VudGVyTW91c2VPbigiYnQiKTsK
KyAgICBsb2coImJ0IHNjcm9sbExlZnQ6ICIgKyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYnQi
KS5zY3JvbGxUb3ApOworICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnkoMCwgMSk7CisgICAg
bG9nKCJidCBzY3JvbGxMZWZ0OiAiICsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ0Iikuc2Ny
b2xsVG9wKTsKKworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInJ0bCIpKTsKKyAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJidCIpKTsKK30KKwordGVzdCgpOworPC9zY3JpcHQ+CisKKzwvYm9k
eT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123605</attachid>
            <date>2012-01-23 13:06:05 -0800</date>
            <delta_ts>2012-01-24 13:20:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-76317-20120123130643.patch</filename>
            <type>text/plain</type>
            <size>6260</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1NjMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzUzNDlkMjVkN2E0Y2Mz
ZWUyYzM3OTY3Y2ZiYjJmMGFkOGVjMzA4Ni4uNzEzNzU5M2MxNDAwMzVkODI5Y2YyZjMyOGY1NjQy
MDhiMjA2MzFhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTAxLTIzICBUb255
IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMTAzMjQ1
KTogY2FuJ3Qgc2Nyb2xsIGxlZnQvdXAgdXNpbmcgc2Nyb2xsYmFyIGNvbnRyb2xzIG9mIG92ZXJm
bG93aW5nIGVsZW1lbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD03NjMxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFRlc3Q6IHNjcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci5odG1sCisKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXI6OnVwZGF0ZVNjcm9sbEluZm9BZnRlckxheW91dCk6IENhbGwgc2Nyb2xsVG9PZmZz
ZXRXaXRob3V0QW5pbWF0aW9uIHNpbmNlIHdlJ3JlIGFsd2F5cworICAgICAgICBzY3JvbGxpbmcg
dG8gdGhlIGp1c3QgY29tcHV0ZWQgb2Zmc2V0LgorCiAyMDEyLTAxLTIzICBBbnR0aSBLb2l2aXN0
byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBBdHRlbXB0IHRvIGZpeCBRdCBidWlsZC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDRhMDlhOWYwNThl
YTQ3NDk5MmM5NWMzNGRlOTRlYzAwYWU0MWYwNjMuLmVlNzRiNTkwOWM5YmU1M2UyNzk2NjU2ODg0
ZDU1OTIzMWYwN2Y0YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNw
cApAQCAtMjI5MSw2ICsyMjkxLDcgQEAgdm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlU2Nyb2xsSW5m
b0FmdGVyTGF5b3V0KCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9zY3JvbGxEaW1lbnNpb25z
RGlydHkgPSB0cnVlOworICAgIEludFNpemUgc2Nyb2xsT2Zmc2V0T3JpZ2luYWwoc2Nyb2xsWE9m
ZnNldCgpLCBzY3JvbGxZT2Zmc2V0KCkpOwogCiAgICAgYm9vbCBob3Jpem9udGFsT3ZlcmZsb3cs
IHZlcnRpY2FsT3ZlcmZsb3c7CiAgICAgY29tcHV0ZVNjcm9sbERpbWVuc2lvbnMoJmhvcml6b250
YWxPdmVyZmxvdywgJnZlcnRpY2FsT3ZlcmZsb3cpOwpAQCAtMjM3Myw4ICsyMzc0LDkgQEAgdm9p
ZCBSZW5kZXJMYXllcjo6dXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0KCkKICAgICAgICAgbV92
QmFyLT5zZXRTdGVwcyhTY3JvbGxiYXI6OnBpeGVsc1BlckxpbmVTdGVwKCksIHBhZ2VTdGVwKTsK
ICAgICAgICAgbV92QmFyLT5zZXRQcm9wb3J0aW9uKGNsaWVudEhlaWdodCwgbV9zY3JvbGxTaXpl
LmhlaWdodCgpKTsKICAgICB9Ci0gCi0gICAgc2Nyb2xsVG9PZmZzZXQoc2Nyb2xsWE9mZnNldCgp
LCBzY3JvbGxZT2Zmc2V0KCkpOworCisgICAgaWYgKHNjcm9sbE9mZnNldE9yaWdpbmFsICE9IHNj
cm9sbE9mZnNldCgpKQorICAgICAgICBzY3JvbGxUb09mZnNldFdpdGhvdXRBbmltYXRpb24oTGF5
b3V0UG9pbnQoc2Nyb2xsWE9mZnNldCgpLCBzY3JvbGxZT2Zmc2V0KCkpKTsKIAogICAgIGlmIChy
ZW5kZXJlcigpLT5ub2RlKCkgJiYgcmVuZGVyZXIoKS0+ZG9jdW1lbnQoKS0+aGFzTGlzdGVuZXJU
eXBlKERvY3VtZW50OjpPVkVSRkxPV0NIQU5HRURfTElTVEVORVIpKQogICAgICAgICB1cGRhdGVP
dmVyZmxvd1N0YXR1cyhob3Jpem9udGFsT3ZlcmZsb3csIHZlcnRpY2FsT3ZlcmZsb3cpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDk1Zjc0ZTE5NzRjMzg4ZGJkN2QxN2MyZTJiZWI1MDdiYzg2ZTMzYzYuLjVhZWFhODQyZTY1
N2FiNzQwNmUyMmYwZTQ2YzllNWExOWNkYzNhYTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAx
Mi0wMS0yMyAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJFR1JF
U1NJT04ocjEwMzI0NSk6IGNhbid0IHNjcm9sbCBsZWZ0L3VwIHVzaW5nIHNjcm9sbGJhciBjb250
cm9scyBvZiBvdmVyZmxvd2luZyBlbGVtZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzYzMTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL3dpbi9Ta2lwcGVkOgorICAgICAgICAqIHNj
cm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIHNjcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci5odG1sOiBBZGRlZC4KKwog
MjAxMi0wMS0yMyAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAKICAg
ICAgICAgVW5yZXZpZXdlZCwgdW5za2lwIG5vdyBwYXNzaW5nIHRlc3RzIG9uIEdUSy4gU3BvdHRl
ZCBieSBaYW4gRG9iZXJzZWsuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
U2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCmluZGV4IDY2MjJmMmVk
MWRlN2I3MTU4YWZmODkyMjk5ZTlhNjg2YWZiNTRkOWMuLjFjMmVhNjI2MGY5MWJlMjg0NzMwM2Qw
YjU0NWM3NjI0OGU5YjA5MDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9T
a2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCkBAIC05NzAsNiAr
OTcwLDcgQEAgZmFzdC9ldmVudHMvY29udGludW91cy1wbGF0Zm9ybS13aGVlbGV2ZW50LWluLXNj
cm9sbGluZy1kaXYuaHRtbAogZmFzdC9ldmVudHMvd2hlZWxldmVudC1pbi1ob3Jpem9udGFsLXNj
cm9sbGJhci1pbi1ydGwuaHRtbAogZmFzdC9ldmVudHMvd2hlZWxldmVudC1pbi12ZXJ0aWNhbC1z
Y3JvbGxiYXItaW4tcnRsLmh0bWwKIHNjcm9sbGJhcnMvc2Nyb2xsZXZlbnQtaWZyYW1lLW5vLXNj
cm9sbGluZy13aGVlbC5odG1sCitzY3JvbGxiYXJzL3Njcm9sbC1ydGwtb3ItYnQtbGF5ZXIuaHRt
bAogCiAjIFdpbmRvd3MgcG9ydCBkb2Vzbid0IHlldCBzdXBwb3J0IHJlbmRlcmluZyBvZiBub24t
Qk1QIGNoYXJhY3RlcnMgZXZlbiB0aG91Z2ggdGhlcmUncyBhIGZvbnQgYXZhaWxhYmxlLgogZmFz
dC90ZXh0L2ludGVybmF0aW9uYWwvcGxhbmUyLmh0bWwgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9zY3JvbGxiYXJzL3Njcm9sbC1ydGwtb3ItYnQtbGF5ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVyLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hMDhiNDBlY2Q3MzMxNDc0NWQ1Y2U4OTVhMGMwOWI4Y2ZjNmIxY2Y4Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVy
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1RoaXMgdGVzdCByZXF1aXJlcyBEdW1wUmVu
ZGVyVHJlZS4gVG8gdGVzdCBtYW51YWxseSwgdHJ5IHRvIHNjcm9sbCB0aGUgYmx1ZSBkaXYgdG8g
dGhlIGxlZnQgYW5kIHRoZSByZWQgZGl2IHVwIHVzaW5nIHRoZSBzY3JvbGxiYXIgYXJyb3dzIG9y
IHRoZSBtb3VzZSB3aGVlbC4gVGhlIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXZzIHNjcm9sbC4KKwor
cnRsIHNjcm9sbExlZnQ6IDYwCitydGwgc2Nyb2xsTGVmdDogMjAKK2J0IHNjcm9sbExlZnQ6IDEy
MAorYnQgc2Nyb2xsTGVmdDogODAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsYmFy
cy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVyLmh0bWwgYi9MYXlvdXRUZXN0cy9zY3JvbGxiYXJzL3Nj
cm9sbC1ydGwtb3ItYnQtbGF5ZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNWEzYjk1MDQxNDM4ZTUyMTZk
NDgwM2JiOTFjZDk1ZDk1OWVjY2MwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc2Ny
b2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVyLmh0bWwKQEAgLTAsMCArMSw2OSBAQAorPGh0
bWw+Cis8Ym9keT4KKworPHA+VGhpcyB0ZXN0IHJlcXVpcmVzIER1bXBSZW5kZXJUcmVlLiAgVG8g
dGVzdCBtYW51YWxseSwgdHJ5IHRvIHNjcm9sbCB0aGUKK2JsdWUgZGl2IHRvIHRoZSBsZWZ0IGFu
ZCB0aGUgcmVkIGRpdiB1cCB1c2luZyB0aGUgc2Nyb2xsYmFyIGFycm93cyBvciB0aGUKK21vdXNl
IHdoZWVsLiAgVGhlIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXZzIHNjcm9sbC48L3A+CisKKzxkaXYg
aWQ9J3J0bCcgc3R5bGU9ImRpcmVjdGlvbjogcnRsOyB3aWR0aDogMTAwcHg7IG92ZXJmbG93OiBh
dXRvOyBib3JkZXI6IDFweCBzb2xpZCBibHVlOyI+CiswMTIzNDU2Nzg5MDEyMzQ1Njc4OQorPC9k
aXY+CisKKzxkaXYgaWQ9J2J0JyBzdHlsZT0iLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250
YWwtYnQ7IGhlaWdodDogMTAwcHg7IG92ZXJmbG93OiBhdXRvOyBib3JkZXI6IDEgcHggc29saWQg
cmVkOyI+CithYWE8YnI+CitiYmI8YnI+CitjY2M8YnI+CitkZGQ8YnI+CitlZWU8YnI+CitmZmY8
YnI+CitnZ2c8YnI+CitoaGg8YnI+CitpaWk8YnI+Citqamo8YnI+Citra2sKKzwvZGl2PgorCis8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KK2Z1bmN0aW9uIGxvZyhtZXNzYWdl
KQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIikuaW5uZXJIVE1MICs9
IG1lc3NhZ2UgKyAiPGJyPiI7Cit9CisKK2Z1bmN0aW9uIGNlbnRlck1vdXNlT24oZWxlbWVudElk
KQoreworICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZWxlbWVudElk
KTsKKyAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbyhlbGVtZW50Lm9mZnNldExlZnQgKyBlbGVt
ZW50Lm9mZnNldFdpZHRoIC8gMiwKKyAgICAgICAgZWxlbWVudC5vZmZzZXRUb3AgKyBlbGVtZW50
Lm9mZnNldEhlaWdodCAvIDIpOworfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sKKyAgICBpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5k
dW1wQXNUZXh0KCk7CisKKyAgICBpZiAoIXdpbmRvdy5ldmVudFNlbmRlciB8fCAhd2luZG93LmV2
ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnkpIHsKKyAgICAgICAgbG9nKCJUaGlzIHRlc3QgcmVxdWly
ZXMgRHVtcFJlbmRlclRyZWUgd2l0aCBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5LiIpOworICAg
ICAgICByZXR1cm47CisgICAgfQorCisgICAgY2VudGVyTW91c2VPbigicnRsIik7CisgICAgbG9n
KCJydGwgc2Nyb2xsTGVmdDogIiArIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJydGwiKS5zY3Jv
bGxMZWZ0KTsKKyAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5KDEsIDApOworICAgIGxvZygi
cnRsIHNjcm9sbExlZnQ6ICIgKyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicnRsIikuc2Nyb2xs
TGVmdCk7CisKKyAgICBjZW50ZXJNb3VzZU9uKCJidCIpOworICAgIGxvZygiYnQgc2Nyb2xsTGVm
dDogIiArIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJidCIpLnNjcm9sbFRvcCk7CisgICAgZXZl
bnRTZW5kZXIubW91c2VTY3JvbGxCeSgwLCAxKTsKKyAgICBsb2coImJ0IHNjcm9sbExlZnQ6ICIg
KyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYnQiKS5zY3JvbGxUb3ApOworCisgICAgZG9jdW1l
bnQuYm9keS5yZW1vdmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicnRsIikpOworICAg
IGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ0Iikp
OworfQorCit0ZXN0KCk7Cis8L3NjcmlwdD4KKworPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123791</attachid>
            <date>2012-01-24 13:20:30 -0800</date>
            <delta_ts>2012-01-24 14:17:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-76317-20120124132110.patch</filename>
            <type>text/plain</type>
            <size>6392</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1NzgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjdkMjAxNTc3YmFjZjYz
MTdmYTY4ZjVjOGZhY2Q2NGIzNzE2MzViMC4uNmJmNWFhNzRiMWQxYjIxOWRmODk1NTg4NWRlYWU0
MDUwZjcyNzYwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTAxLTI0ICBUb255
IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMTAzMjQ1
KTogY2FuJ3Qgc2Nyb2xsIGxlZnQvdXAgdXNpbmcgc2Nyb2xsYmFyIGNvbnRyb2xzIG9mIG92ZXJm
bG93aW5nIGVsZW1lbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD03NjMxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFRlc3Q6IHNjcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci5odG1sCisKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXI6OnVwZGF0ZVNjcm9sbEluZm9BZnRlckxheW91dCk6IENhbGwgc2Nyb2xsVG9PZmZz
ZXRXaXRob3V0QW5pbWF0aW9uIHNpbmNlIHdlJ3JlIGFsd2F5cworICAgICAgICBzY3JvbGxpbmcg
dG8gdGhlIGp1c3QgY29tcHV0ZWQgb2Zmc2V0LgorCiAyMDEyLTAxLTI0ICBKYW1lcyBSb2JpbnNv
biAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBBZGQgbnVsbCBj
aGVjayBmb3IgQ29udGVudExheWVyQ2hyb21pdW06Om1fZGVsZWdhdGUgYmFjayB0byBDb250ZW50
TGF5ZXJDaHJvbWl1bTo6ZHJhd3NDb250ZW50KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTGF5ZXIuY3BwCmluZGV4IDQxZjljZGEzNjY4YWFiNWRlNDI0ZTNmNzcwMGQwZTdmYzM3OTI1
NDEuLjc3NDFmZWI3NjZlODMxMTI5YjM3ZWYwMDMzM2Q2ZWY5ZDI5NzIzZjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAtMjI5Miw2ICsyMjkyLDcgQEAgdm9p
ZCBSZW5kZXJMYXllcjo6dXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0KCkKICAgICAgICAgcmV0
dXJuOwogCiAgICAgbV9zY3JvbGxEaW1lbnNpb25zRGlydHkgPSB0cnVlOworICAgIEludFNpemUg
c2Nyb2xsT2Zmc2V0T3JpZ2luYWwoc2Nyb2xsWE9mZnNldCgpLCBzY3JvbGxZT2Zmc2V0KCkpOwog
CiAgICAgYm9vbCBob3Jpem9udGFsT3ZlcmZsb3csIHZlcnRpY2FsT3ZlcmZsb3c7CiAgICAgY29t
cHV0ZVNjcm9sbERpbWVuc2lvbnMoJmhvcml6b250YWxPdmVyZmxvdywgJnZlcnRpY2FsT3ZlcmZs
b3cpOwpAQCAtMjM3NCw4ICsyMzc1LDkgQEAgdm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlU2Nyb2xs
SW5mb0FmdGVyTGF5b3V0KCkKICAgICAgICAgbV92QmFyLT5zZXRTdGVwcyhTY3JvbGxiYXI6OnBp
eGVsc1BlckxpbmVTdGVwKCksIHBhZ2VTdGVwKTsKICAgICAgICAgbV92QmFyLT5zZXRQcm9wb3J0
aW9uKGNsaWVudEhlaWdodCwgbV9zY3JvbGxTaXplLmhlaWdodCgpKTsKICAgICB9Ci0gCi0gICAg
c2Nyb2xsVG9PZmZzZXQoc2Nyb2xsWE9mZnNldCgpLCBzY3JvbGxZT2Zmc2V0KCkpOworCisgICAg
aWYgKHNjcm9sbE9mZnNldE9yaWdpbmFsICE9IHNjcm9sbE9mZnNldCgpKQorICAgICAgICBzY3Jv
bGxUb09mZnNldFdpdGhvdXRBbmltYXRpb24oTGF5b3V0UG9pbnQoc2Nyb2xsWE9mZnNldCgpLCBz
Y3JvbGxZT2Zmc2V0KCkpKTsKIAogICAgIGlmIChyZW5kZXJlcigpLT5ub2RlKCkgJiYgcmVuZGVy
ZXIoKS0+ZG9jdW1lbnQoKS0+aGFzTGlzdGVuZXJUeXBlKERvY3VtZW50OjpPVkVSRkxPV0NIQU5H
RURfTElTVEVORVIpKQogICAgICAgICB1cGRhdGVPdmVyZmxvd1N0YXR1cyhob3Jpem9udGFsT3Zl
cmZsb3csIHZlcnRpY2FsT3ZlcmZsb3cpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE5M2M2NzBkODVjMTdmYWM3YTY4MTdj
YjU3Mjg3MTRkZTdjNmE4ZmEuLjNjZjU2MDc5YWUyYzBmNjA3MWIwMDRmMGYxMDA0MGU1MDg2ZjAx
ZDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMi0wMS0yNCAgVG9ueSBDaGFuZyAgPHRvbnlA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJFR1JFU1NJT04ocjEwMzI0NSk6IGNhbid0IHNjcm9s
bCBsZWZ0L3VwIHVzaW5nIHNjcm9sbGJhciBjb250cm9scyBvZiBvdmVyZmxvd2luZyBlbGVtZW50
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzYzMTcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRm
b3JtL3dpbi9Ta2lwcGVkOgorICAgICAgICAqIHNjcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1s
YXllci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHNjcm9sbGJhcnMvc2Nyb2xsLXJ0
bC1vci1idC1sYXllci5odG1sOiBBZGRlZC4KKwogMjAxMi0wMS0yNCAgQWRhbSBCYXJ0aCAgPGFi
YXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIENocm9taXVtIE1hYyBMZXBvYXJkIG92ZXJyaWRl
cyBmb2xsb3dpbmcgdGhlIENocm9taXVtIE1hYyBTbm93IExlb3BhcmQgYmFzZWxpbmVzLgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93aW4vU2tpcHBlZAppbmRleCA2NjIyZjJlZDFkZTdiNzE1OGFmZjg5MjI5OWU5YTY4
NmFmYjU0ZDljLi4xYzJlYTYyNjBmOTFiZTI4NDczMDNkMGI1NDVjNzYyNDhlOWIwOTA3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW4vU2tpcHBlZApAQCAtOTcwLDYgKzk3MCw3IEBAIGZhc3QvZXZlbnRzL2Nv
bnRpbnVvdXMtcGxhdGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKIGZhc3Qv
ZXZlbnRzL3doZWVsZXZlbnQtaW4taG9yaXpvbnRhbC1zY3JvbGxiYXItaW4tcnRsLmh0bWwKIGZh
c3QvZXZlbnRzL3doZWVsZXZlbnQtaW4tdmVydGljYWwtc2Nyb2xsYmFyLWluLXJ0bC5odG1sCiBz
Y3JvbGxiYXJzL3Njcm9sbGV2ZW50LWlmcmFtZS1uby1zY3JvbGxpbmctd2hlZWwuaHRtbAorc2Ny
b2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVyLmh0bWwKIAogIyBXaW5kb3dzIHBvcnQgZG9l
c24ndCB5ZXQgc3VwcG9ydCByZW5kZXJpbmcgb2Ygbm9uLUJNUCBjaGFyYWN0ZXJzIGV2ZW4gdGhv
dWdoIHRoZXJlJ3MgYSBmb250IGF2YWlsYWJsZS4KIGZhc3QvdGV4dC9pbnRlcm5hdGlvbmFsL3Bs
YW5lMi5odG1sIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRs
LW9yLWJ0LWxheWVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Njcm9sbGJhcnMvc2Nyb2xs
LXJ0bC1vci1idC1sYXllci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTIyZjZkODI2ZDQyNmY2
ZDUyNjc1M2NiNTBkYTJlMjFhOWJiMjA3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3Njcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw1IEBACitUaGlzIHRlc3QgcmVxdWlyZXMgRHVtcFJlbmRlclRyZWUuIFRvIHRlc3QgbWFudWFs
bHksIHRyeSB0byBzY3JvbGwgdGhlIGJsdWUgZGl2IHRvIHRoZSBsZWZ0IGFuZCB0aGUgcmVkIGRp
diB1cCB1c2luZyB0aGUgc2Nyb2xsYmFyIGFycm93cyBvciB0aGUgbW91c2Ugd2hlZWwuIFRoZSB0
ZXN0IHBhc3NlcyBpZiB0aGUgZGl2cyBzY3JvbGwuCisKK3J0bDogUEFTUworYnQ6IFBBU1MKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVy
Lmh0bWwgYi9MYXlvdXRUZXN0cy9zY3JvbGxiYXJzL3Njcm9sbC1ydGwtb3ItYnQtbGF5ZXIuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi40YzE2NjlmOTgyMDA3ODBlZWQ5NDhlZjU3OTQ3ZTM4NDcyZTA5ZWQwCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0
LWxheWVyLmh0bWwKQEAgLTAsMCArMSw3MSBAQAorPGh0bWw+Cis8Ym9keT4KKworPHA+VGhpcyB0
ZXN0IHJlcXVpcmVzIER1bXBSZW5kZXJUcmVlLiAgVG8gdGVzdCBtYW51YWxseSwgdHJ5IHRvIHNj
cm9sbCB0aGUKK2JsdWUgZGl2IHRvIHRoZSBsZWZ0IGFuZCB0aGUgcmVkIGRpdiB1cCB1c2luZyB0
aGUgc2Nyb2xsYmFyIGFycm93cyBvciB0aGUKK21vdXNlIHdoZWVsLiAgVGhlIHRlc3QgcGFzc2Vz
IGlmIHRoZSBkaXZzIHNjcm9sbC48L3A+CisKKzxkaXYgaWQ9J3J0bCcgc3R5bGU9ImRpcmVjdGlv
bjogcnRsOyB3aWR0aDogMTAwcHg7IG92ZXJmbG93OiBhdXRvOyBib3JkZXI6IDFweCBzb2xpZCBi
bHVlOyI+CiswMTIzNDU2Nzg5MDEyMzQ1Njc4OQorPC9kaXY+CisKKzxkaXYgaWQ9J2J0JyBzdHls
ZT0iLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtYnQ7IGhlaWdodDogMTAwcHg7IG92
ZXJmbG93OiBhdXRvOyBib3JkZXI6IDEgcHggc29saWQgcmVkOyI+CithYWE8YnI+CitiYmI8YnI+
CitjY2M8YnI+CitkZGQ8YnI+CitlZWU8YnI+CitmZmY8YnI+CitnZ2c8YnI+CitoaGg8YnI+Citp
aWk8YnI+Citqamo8YnI+Citra2sKKzwvZGl2PgorCis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KworPHNjcmlwdD4KK2Z1bmN0aW9uIGxvZyhtZXNzYWdlKQoreworICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJjb25zb2xlIikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7Cit9CisK
K2Z1bmN0aW9uIGNlbnRlck1vdXNlT24oZWxlbWVudElkKQoreworICAgIHZhciBlbGVtZW50ID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZWxlbWVudElkKTsKKyAgICBldmVudFNlbmRlci5tb3Vz
ZU1vdmVUbyhlbGVtZW50Lm9mZnNldExlZnQgKyBlbGVtZW50Lm9mZnNldFdpZHRoIC8gMiwKKyAg
ICAgICAgZWxlbWVudC5vZmZzZXRUb3AgKyBlbGVtZW50Lm9mZnNldEhlaWdodCAvIDIpOworfQor
CitmdW5jdGlvbiB0ZXN0KCkKK3sKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVy
KQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICBpZiAo
IXdpbmRvdy5ldmVudFNlbmRlciB8fCAhd2luZG93LmV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnkp
IHsKKyAgICAgICAgbG9nKCJUaGlzIHRlc3QgcmVxdWlyZXMgRHVtcFJlbmRlclRyZWUgd2l0aCBl
dmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5LiIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgY2VudGVyTW91c2VPbigicnRsIik7CisgICAgdmFyIG9mZnNldEJlZm9yZSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJydGwiKS5zY3JvbGxMZWZ0OworICAgIGV2ZW50U2VuZGVyLm1vdXNl
U2Nyb2xsQnkoMSwgMCk7CisgICAgdmFyIG9mZnNldEFmdGVyID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInJ0bCIpLnNjcm9sbExlZnQ7CisgICAgbG9nKCJydGw6ICIgKyAob2Zmc2V0QmVmb3Jl
ID4gb2Zmc2V0QWZ0ZXIgPyAiUEFTUyIgOiAiRkFJTCIpKTsKKworICAgIGNlbnRlck1vdXNlT24o
ImJ0Iik7CisgICAgb2Zmc2V0QmVmb3JlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ0Iiku
c2Nyb2xsVG9wOworICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnkoMCwgMSk7CisgICAgb2Zm
c2V0QWZ0ZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYnQiKS5zY3JvbGxUb3A7CisgICAg
bG9nKCJidDogIiArIChvZmZzZXRCZWZvcmUgPiBvZmZzZXRBZnRlciA/ICJQQVNTIiA6ICJGQUlM
IikpOworCisgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicnRsIikpOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImJ0IikpOworfQorCit0ZXN0KCk7Cis8L3NjcmlwdD4KKworPC9ib2R5Pgor
PC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123807</attachid>
            <date>2012-01-24 14:17:42 -0800</date>
            <delta_ts>2012-01-24 15:21:24 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-76317-20120124141822.patch</filename>
            <type>text/plain</type>
            <size>6671</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1NzgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjdkMjAxNTc3YmFjZjYz
MTdmYTY4ZjVjOGZhY2Q2NGIzNzE2MzViMC4uNGRkMjFjMTMzZDZhZGNjNzg1ZjdiZjgxNGYwOWM0
ZDFjMTg5ODg0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTAxLTI0ICBUb255
IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMTAzMjQ1
KTogY2FuJ3Qgc2Nyb2xsIGxlZnQvdXAgdXNpbmcgc2Nyb2xsYmFyIGNvbnRyb2xzIG9mIG92ZXJm
bG93aW5nIGVsZW1lbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD03NjMxNworCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAg
ICAgIFRlc3Q6IHNjcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci5odG1sCisKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
TGF5ZXI6OnVwZGF0ZVNjcm9sbEluZm9BZnRlckxheW91dCk6IENhbGwgc2Nyb2xsVG9PZmZzZXRX
aXRob3V0QW5pbWF0aW9uIHNpbmNlIHdlJ3JlIGFsd2F5cworICAgICAgICBzY3JvbGxpbmcgdG8g
dGhlIGp1c3QgY29tcHV0ZWQgb2Zmc2V0LgorCiAyMDEyLTAxLTI0ICBKYW1lcyBSb2JpbnNvbiAg
PGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBBZGQgbnVsbCBjaGVj
ayBmb3IgQ29udGVudExheWVyQ2hyb21pdW06Om1fZGVsZWdhdGUgYmFjayB0byBDb250ZW50TGF5
ZXJDaHJvbWl1bTo6ZHJhd3NDb250ZW50KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXIuY3BwCmluZGV4IDQxZjljZGEzNjY4YWFiNWRlNDI0ZTNmNzcwMGQwZTdmYzM3OTI1NDEu
Ljc3NDFmZWI3NjZlODMxMTI5YjM3ZWYwMDMzM2Q2ZWY5ZDI5NzIzZjQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAtMjI5Miw2ICsyMjkyLDcgQEAgdm9pZCBS
ZW5kZXJMYXllcjo6dXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0KCkKICAgICAgICAgcmV0dXJu
OwogCiAgICAgbV9zY3JvbGxEaW1lbnNpb25zRGlydHkgPSB0cnVlOworICAgIEludFNpemUgc2Ny
b2xsT2Zmc2V0T3JpZ2luYWwoc2Nyb2xsWE9mZnNldCgpLCBzY3JvbGxZT2Zmc2V0KCkpOwogCiAg
ICAgYm9vbCBob3Jpem9udGFsT3ZlcmZsb3csIHZlcnRpY2FsT3ZlcmZsb3c7CiAgICAgY29tcHV0
ZVNjcm9sbERpbWVuc2lvbnMoJmhvcml6b250YWxPdmVyZmxvdywgJnZlcnRpY2FsT3ZlcmZsb3cp
OwpAQCAtMjM3NCw4ICsyMzc1LDkgQEAgdm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlU2Nyb2xsSW5m
b0FmdGVyTGF5b3V0KCkKICAgICAgICAgbV92QmFyLT5zZXRTdGVwcyhTY3JvbGxiYXI6OnBpeGVs
c1BlckxpbmVTdGVwKCksIHBhZ2VTdGVwKTsKICAgICAgICAgbV92QmFyLT5zZXRQcm9wb3J0aW9u
KGNsaWVudEhlaWdodCwgbV9zY3JvbGxTaXplLmhlaWdodCgpKTsKICAgICB9Ci0gCi0gICAgc2Ny
b2xsVG9PZmZzZXQoc2Nyb2xsWE9mZnNldCgpLCBzY3JvbGxZT2Zmc2V0KCkpOworCisgICAgaWYg
KHNjcm9sbE9mZnNldE9yaWdpbmFsICE9IHNjcm9sbE9mZnNldCgpKQorICAgICAgICBzY3JvbGxU
b09mZnNldFdpdGhvdXRBbmltYXRpb24oTGF5b3V0UG9pbnQoc2Nyb2xsWE9mZnNldCgpLCBzY3Jv
bGxZT2Zmc2V0KCkpKTsKIAogICAgIGlmIChyZW5kZXJlcigpLT5ub2RlKCkgJiYgcmVuZGVyZXIo
KS0+ZG9jdW1lbnQoKS0+aGFzTGlzdGVuZXJUeXBlKERvY3VtZW50OjpPVkVSRkxPV0NIQU5HRURf
TElTVEVORVIpKQogICAgICAgICB1cGRhdGVPdmVyZmxvd1N0YXR1cyhob3Jpem9udGFsT3ZlcmZs
b3csIHZlcnRpY2FsT3ZlcmZsb3cpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE5M2M2NzBkODVjMTdmYWM3YTY4MTdjYjU3
Mjg3MTRkZTdjNmE4ZmEuLmYyMDk2ZmQ4ZjRhMTgwZDUzZmZkMmQ3YjNiMzE1ZDJiMWI2ZGIzMmYg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMi0wMS0yNCAgVG9ueSBDaGFuZyAgPHRvbnlAY2hy
b21pdW0ub3JnPgorCisgICAgICAgIFJFR1JFU1NJT04ocjEwMzI0NSk6IGNhbid0IHNjcm9sbCBs
ZWZ0L3VwIHVzaW5nIHNjcm9sbGJhciBjb250cm9scyBvZiBvdmVyZmxvd2luZyBlbGVtZW50cwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzYzMTcKKwor
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICAqIHBsYXRmb3JtL3dp
bi9Ta2lwcGVkOgorICAgICAgICAqIHNjcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHNjcm9sbGJhcnMvc2Nyb2xsLXJ0bC1vci1i
dC1sYXllci5odG1sOiBBZGRlZC4KKwogMjAxMi0wMS0yNCAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3
ZWJraXQub3JnPgogCiAgICAgICAgIENocm9taXVtIE1hYyBMZXBvYXJkIG92ZXJyaWRlcyBmb2xs
b3dpbmcgdGhlIENocm9taXVtIE1hYyBTbm93IExlb3BhcmQgYmFzZWxpbmVzLgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS93aW4vU2tpcHBlZAppbmRleCA2NjIyZjJlZDFkZTdiNzE1OGFmZjg5MjI5OWU5YTY4NmFmYjU0
ZDljLi4xYzJlYTYyNjBmOTFiZTI4NDczMDNkMGI1NDVjNzYyNDhlOWIwOTA3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW4vU2tpcHBlZApAQCAtOTcwLDYgKzk3MCw3IEBAIGZhc3QvZXZlbnRzL2NvbnRpbnVv
dXMtcGxhdGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKIGZhc3QvZXZlbnRz
L3doZWVsZXZlbnQtaW4taG9yaXpvbnRhbC1zY3JvbGxiYXItaW4tcnRsLmh0bWwKIGZhc3QvZXZl
bnRzL3doZWVsZXZlbnQtaW4tdmVydGljYWwtc2Nyb2xsYmFyLWluLXJ0bC5odG1sCiBzY3JvbGxi
YXJzL3Njcm9sbGV2ZW50LWlmcmFtZS1uby1zY3JvbGxpbmctd2hlZWwuaHRtbAorc2Nyb2xsYmFy
cy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVyLmh0bWwKIAogIyBXaW5kb3dzIHBvcnQgZG9lc24ndCB5
ZXQgc3VwcG9ydCByZW5kZXJpbmcgb2Ygbm9uLUJNUCBjaGFyYWN0ZXJzIGV2ZW4gdGhvdWdoIHRo
ZXJlJ3MgYSBmb250IGF2YWlsYWJsZS4KIGZhc3QvdGV4dC9pbnRlcm5hdGlvbmFsL3BsYW5lMi5o
dG1sIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0
LWxheWVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Njcm9sbGJhcnMvc2Nyb2xsLXJ0bC1v
ci1idC1sYXllci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTIyZjZkODI2ZDQyNmY2ZDUyNjc1
M2NiNTBkYTJlMjFhOWJiMjA3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3Njcm9s
bGJhcnMvc2Nyb2xsLXJ0bC1vci1idC1sYXllci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBA
CitUaGlzIHRlc3QgcmVxdWlyZXMgRHVtcFJlbmRlclRyZWUuIFRvIHRlc3QgbWFudWFsbHksIHRy
eSB0byBzY3JvbGwgdGhlIGJsdWUgZGl2IHRvIHRoZSBsZWZ0IGFuZCB0aGUgcmVkIGRpdiB1cCB1
c2luZyB0aGUgc2Nyb2xsYmFyIGFycm93cyBvciB0aGUgbW91c2Ugd2hlZWwuIFRoZSB0ZXN0IHBh
c3NlcyBpZiB0aGUgZGl2cyBzY3JvbGwuCisKK3J0bDogUEFTUworYnQ6IFBBU1MKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVyLmh0bWwg
Yi9MYXlvdXRUZXN0cy9zY3JvbGxiYXJzL3Njcm9sbC1ydGwtb3ItYnQtbGF5ZXIuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi40ZjM0ZGU4ODdhYzIxZWI5MjgyMjEwOTRlNjg0NTEwZGRiOTZjZWQ3Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9zY3JvbGwtcnRsLW9yLWJ0LWxheWVy
Lmh0bWwKQEAgLTAsMCArMSw4MyBAQAorPGh0bWw+Cis8Ym9keT4KKworPHA+VGhpcyB0ZXN0IHJl
cXVpcmVzIER1bXBSZW5kZXJUcmVlLiAgVG8gdGVzdCBtYW51YWxseSwgdHJ5IHRvIHNjcm9sbCB0
aGUKK2JsdWUgZGl2IHRvIHRoZSBsZWZ0IGFuZCB0aGUgcmVkIGRpdiB1cCB1c2luZyB0aGUgc2Ny
b2xsYmFyIGFycm93cyBvciB0aGUKK21vdXNlIHdoZWVsLiAgVGhlIHRlc3QgcGFzc2VzIGlmIHRo
ZSBkaXZzIHNjcm9sbC48L3A+CisKKzxkaXYgaWQ9J3J0bCcgc3R5bGU9ImRpcmVjdGlvbjogcnRs
OyB3aWR0aDogMTAwcHg7IG92ZXJmbG93OiBhdXRvOyBib3JkZXI6IDFweCBzb2xpZCBibHVlOyI+
CiswMTIzNDU2Nzg5MDEyMzQ1Njc4OQorPC9kaXY+CisKKzxkaXYgaWQ9J2J0JyBzdHlsZT0iLXdl
YmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtYnQ7IGhlaWdodDogMTAwcHg7IG92ZXJmbG93
OiBhdXRvOyBib3JkZXI6IDEgcHggc29saWQgcmVkOyI+CithYWE8YnI+CitiYmI8YnI+CitjY2M8
YnI+CitkZGQ8YnI+CitlZWU8YnI+CitmZmY8YnI+CitnZ2c8YnI+CitoaGg8YnI+CitpaWk8YnI+
Citqamo8YnI+Citra2sKKzwvZGl2PgorCis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNj
cmlwdD4KK2Z1bmN0aW9uIGxvZyhtZXNzYWdlKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJjb25zb2xlIikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiPGJyPiI7Cit9CisKK2Z1bmN0
aW9uIGNlbnRlck1vdXNlT24oZWxlbWVudElkKQoreworICAgIHZhciBlbGVtZW50ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoZWxlbWVudElkKTsKKyAgICBldmVudFNlbmRlci5tb3VzZU1vdmVU
byhlbGVtZW50Lm9mZnNldExlZnQgKyBlbGVtZW50Lm9mZnNldFdpZHRoIC8gMiwKKyAgICAgICAg
ZWxlbWVudC5vZmZzZXRUb3AgKyBlbGVtZW50Lm9mZnNldEhlaWdodCAvIDIpOworfQorCitmdW5j
dGlvbiB0ZXN0KCkKK3sKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAg
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICBpZiAoIXdpbmRv
dy5ldmVudFNlbmRlciB8fCAhd2luZG93LmV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnkpIHsKKyAg
ICAgICAgbG9nKCJUaGlzIHRlc3QgcmVxdWlyZXMgRHVtcFJlbmRlclRyZWUgd2l0aCBldmVudFNl
bmRlci5tb3VzZVNjcm9sbEJ5LiIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgY2Vu
dGVyTW91c2VPbigicnRsIik7CisgICAgdmFyIG9mZnNldEJlZm9yZSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJydGwiKS5zY3JvbGxMZWZ0OworICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xs
QnkoMSwgMCk7CisgICAgdmFyIG9mZnNldEFmdGVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJ0bCIpLnNjcm9sbExlZnQ7CisgICAgaWYgKG9mZnNldEJlZm9yZSA+IG9mZnNldEFmdGVyKQor
ICAgICAgICBsb2coInJ0bDogUEFTUyIpOworICAgIGVsc2UgeworICAgICAgICBsb2coInJ0bDog
RkFJTCIpOworICAgICAgICBsb2coInNjcm9sbExlZnQgYmVmb3JlOiAiICsgb2Zmc2V0QmVmb3Jl
KTsKKyAgICAgICAgbG9nKCJzY3JvbGxMZWZ0IGFmdGVyOiAiICsgb2Zmc2V0QWZ0ZXIpOworICAg
IH0KKworICAgIGNlbnRlck1vdXNlT24oImJ0Iik7CisgICAgb2Zmc2V0QmVmb3JlID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImJ0Iikuc2Nyb2xsVG9wOworICAgIGV2ZW50U2VuZGVyLm1vdXNl
U2Nyb2xsQnkoMCwgMSk7CisgICAgb2Zmc2V0QWZ0ZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiYnQiKS5zY3JvbGxUb3A7CisgICAgaWYgKG9mZnNldEJlZm9yZSA+IG9mZnNldEFmdGVyKQor
ICAgICAgICBsb2coImJ0OiBQQVNTIik7CisgICAgZWxzZSB7CisgICAgICAgIGxvZygiYnQ6IEZB
SUwiKTsKKyAgICAgICAgbG9nKCJzY3JvbGxUb3AgYmVmb3JlOiAiICsgb2Zmc2V0QmVmb3JlKTsK
KyAgICAgICAgbG9nKCJzY3JvbGxUb3AgYWZ0ZXI6ICIgKyBvZmZzZXRBZnRlcik7CisgICAgfQor
CisgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cnRsIikpOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImJ0IikpOworfQorCit0ZXN0KCk7Cis8L3NjcmlwdD4KKworPC9ib2R5PgorPC9odG1s
Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>