<?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>78539</bug_id>
          
          <creation_ts>2012-02-13 14:36:56 -0800</creation_ts>
          <short_desc>[chromium] Refactor CCLayerTreeHostCommon: create helper function for complex boolean condition</short_desc>
          <delta_ts>2012-02-16 04:16:16 -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>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="Shawn Singh">shawnsingh</reporter>
          <assigned_to name="Shawn Singh">shawnsingh</assigned_to>
          <cc>cc-bugs</cc>
    
    <cc>dglazkov</cc>
    
    <cc>enne</cc>
    
    <cc>jamesr</cc>
    
    <cc>senorblanco</cc>
    
    <cc>vangelis</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>555613</commentid>
    <comment_count>0</comment_count>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-02-13 14:36:56 -0800</bug_when>
    <thetext>Hopefully this is the first of many small micro changes to CCLayerTreeHostCommon::calculateDrawTransformsAndVisibility.  My preference is to be very strict about the extent of these changes, so that we can easily prove by inspection that behavior remains unchanged, in addition to testing.  This particular change is also covered by essentially all existing tests that use accelerated compositing, so there are no new tests.

Patch coming in a moment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>555620</commentid>
    <comment_count>1</comment_count>
      <attachid>126840</attachid>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-02-13 14:43:39 -0800</bug_when>
    <thetext>Created attachment 126840
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>555724</commentid>
    <comment_count>2</comment_count>
      <attachid>126840</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-02-13 16:14:40 -0800</bug_when>
    <thetext>Comment on attachment 126840
Patch

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

&gt; Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:130
&gt; +    bool shouldCreateSurface = (useSurfaceForMasking || useSurfaceForReflection || useSurfaceForFlatDescendants || useSurfaceForFilters
&gt; +                                || ((useSurfaceForClipping || useSurfaceForOpacity) &amp;&amp; layer-&gt;descendantDrawsContent()));

I think this would be clearer as a series of &quot;if (X) return Y;&quot; conditionals rather than one giant boolean expression.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>555824</commentid>
    <comment_count>3</comment_count>
      <attachid>126879</attachid>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-02-13 18:03:13 -0800</bug_when>
    <thetext>Created attachment 126879
rewrote as per reviewers comment

Thanks for the suggestion. It is definitely much more readable now.  Also added a FIXME based on discussion with Vangelis, which revealed a bug that should be addressed separately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>555879</commentid>
    <comment_count>4</comment_count>
      <attachid>126879</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-13 19:22:08 -0800</bug_when>
    <thetext>Comment on attachment 126879
rewrote as per reviewers comment

Attachment 126879 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/11511717

New failing tests:
css3/filters/effect-grayscale-hw.html
css3/filters/effect-brightness-hw.html
css3/filters/effect-sepia-hw.html
css3/filters/effect-opacity-hw.html
css3/filters/effect-blur-hw.html
css3/filters/effect-combined-hw.html
css3/filters/effect-hue-rotate-hw.html
css3/filters/effect-invert-hw.html
css3/filters/effect-contrast-hw.html
css3/filters/effect-saturate-hw.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>555918</commentid>
    <comment_count>5</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-02-13 20:43:22 -0800</bug_when>
    <thetext>Is the EWS output plausible?  I didn&apos;t think that these tests could run through the composited path</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>555987</commentid>
    <comment_count>6</comment_count>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-02-13 23:17:23 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; Is the EWS output plausible?  I didn&apos;t think that these tests could run through the composited path

I think so... there are a few lines of logic that deal with css filters in the code I modified.  I&apos;ll look into it, probably just a small mistake on my part.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>556000</commentid>
    <comment_count>7</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-02-13 23:35:53 -0800</bug_when>
    <thetext>I didn&apos;t think we were using any of this stuff for the software filters path, and I didn&apos;t think we ran layout tests for css3 filters through the composited path.  Any ideas, Stephen?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>556009</commentid>
    <comment_count>8</comment_count>
      <attachid>126879</attachid>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-02-13 23:45:14 -0800</bug_when>
    <thetext>Comment on attachment 126879
rewrote as per reviewers comment

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

&gt; Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:131
&gt; +    if (layer-&gt;filters().size() &gt; 0 &amp;&amp; descendantDrawsContent)

For equivalence to the previous code, this should not have descendantDrawsContent on it.  I thought I removed it, but probably forgot to commit locally before uploading this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>556393</commentid>
    <comment_count>9</comment_count>
    <who name="Stephen White">senorblanco</who>
    <bug_when>2012-02-14 10:33:59 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; I didn&apos;t think we were using any of this stuff for the software filters path, and I didn&apos;t think we ran layout tests for css3 filters through the composited path.  Any ideas, Stephen?

The -hw.html flavour of those tests use a translateZ(0) to force the composited path.  So yes, it is exercising the compositor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>556441</commentid>
    <comment_count>10</comment_count>
      <attachid>127005</attachid>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-02-14 11:28:29 -0800</bug_when>
    <thetext>Created attachment 127005
Same patch, with minor fix

Was able to test locally on css3/filters.  removing the descendantDrawsContent mistake did fix the problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>557040</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-15 01:31:34 -0800</bug_when>
    <thetext>Attachment 127005 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/update-webkit&apos;]&quot; exit_code: 9

Updating OpenSource
Index mismatch: 5815fcf469e98a33fa62d63a6d97a2a16a04fde6 != 77131e3c5b7dde3035199f6c531a4837160a56cb
rereading 2ce77d76874b9ee77991fecb540696485733202a
	M	Source/WebCore/ChangeLog
	M	Source/WebCore/platform/graphics/FontCache.cpp
107794 = c59b9dab74417b86c7b5b60a4408ab3e5d1659a8 already exists! Why are we refetching it?
 at /usr/lib/git-core/git-svn line 5210

Died at Tools/Scripts/update-webkit line 164.


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>557565</commentid>
    <comment_count>12</comment_count>
      <attachid>127005</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-02-15 14:40:42 -0800</bug_when>
    <thetext>Comment on attachment 127005
Same patch, with minor fix

R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>557728</commentid>
    <comment_count>13</comment_count>
      <attachid>127273</attachid>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-02-15 16:39:59 -0800</bug_when>
    <thetext>Created attachment 127273
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>557885</commentid>
    <comment_count>14</comment_count>
      <attachid>127273</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-15 21:11:28 -0800</bug_when>
    <thetext>Comment on attachment 127273
Patch for landing

Rejecting attachment 127273 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 1

ERROR: /mnt/git/webkit-commit-queue/Source/WebCore/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://queues.webkit.org/results/11534635</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>557954</commentid>
    <comment_count>15</comment_count>
      <attachid>127321</attachid>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-02-15 23:44:27 -0800</bug_when>
    <thetext>Created attachment 127321
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>558071</commentid>
    <comment_count>16</comment_count>
      <attachid>127321</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-16 04:16:07 -0800</bug_when>
    <thetext>Comment on attachment 127321
Patch for landing

Clearing flags on attachment: 127321

Committed r107921: &lt;http://trac.webkit.org/changeset/107921&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>558072</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-16 04:16:16 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126840</attachid>
            <date>2012-02-13 14:43:39 -0800</date>
            <delta_ts>2012-02-13 18:03:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-78539-20120213144338.patch</filename>
            <type>text/plain</type>
            <size>6539</size>
            <attacher name="Shawn Singh">shawnsingh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3NTk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTljZWUzNGI3Y2Q1MTZk
MzhkNzBhOTY1MjgxNDRhZjcwNTQ0MWExNC4uZDFjNTMxZTdlNzI4YWI2MGZlYjRiNWQyNmU1Mzcy
ZmIwZjUzZTI3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTAyLTEzICBTaGF3
biBTaW5naCAgPHNoYXduc2luZ2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0g
UmVmYWN0b3IgQ0NMYXllclRyZWVIb3N0Q29tbW9uOiBjcmVhdGUgaGVscGVyIGZ1bmN0aW9uIGZv
ciBjb21wbGV4IGJvb2xlYW4gY29uZGl0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD03ODUzOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRoaXMgY2hhbmdlIHNob3VsZCBpbnRyb2R1Y2Ugbm8gY2hhbmdl
IGluIGJlaGF2aW9yLCBhbmQgaXRzCisgICAgICAgIGV4cGVjdGVkIGJlaGF2aW9yIGlzIGFscmVh
ZHkgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICBJbiBjYWxjdWxhdGVEcmF3
VHJhbnNmb3Jtc0FuZFZpc2liaWxpdHksIHRoZXJlIGlzIGEgY29tcGxleAorICAgICAgICBib29s
ZWFuIGNvbmRpdGlvbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHdlIHNob3VsZCBjcmVhdGUgYQor
ICAgICAgICBSZW5kZXJTdXJmYWNlIG9yIG5vdC4gVGhpcyBwYXRjaCBwdWxscyBvdXQgdGhhdCBi
b29sZWFuIGxvZ2ljLAorICAgICAgICBhbmQgd3JhcHMgaXQgaW4gYSBoZWxwZXIgZnVuY3Rpb24g
Zm9yIG11Y2ggYmV0dGVyIHJlYWRhYmlsaXR5LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OmxheWVyU2hvdWxkQmVTa2lwcGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAo
V2ViQ29yZTo6c3VidHJlZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKToKKyAgICAgICAg
KFdlYkNvcmU6OmNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zQW5kVmlzaWJpbGl0eUludGVybmFsKToK
KwogMjAxMi0wMi0xMyAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc4NTIwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVy
VHJlZUhvc3RDb21tb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcAppbmRleCA4N2YzYjUxZjM1Y2I1YzNj
OTRmMzA3Zjc2OTNhYmI2OGZjODA3YjVmLi5kZmVjODhhNDhmOGQ4MzczNzNlNDE0N2E2ZDE5MDA5
OTU0NjM5YTk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5jcHAK
QEAgLTcyLDcgKzcyLDcgQEAgc3RhdGljIGJvb2wgaXNTY2FsZU9yVHJhbnNsYXRpb24oY29uc3Qg
VHJhbnNmb3JtYXRpb25NYXRyaXgmIG0pCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIExheWVyVHlw
ZT4KLWJvb2wgbGF5ZXJTaG91bGRCZVNraXBwZWQoTGF5ZXJUeXBlKiBsYXllcikKK3N0YXRpYyBi
b29sIGxheWVyU2hvdWxkQmVTa2lwcGVkKExheWVyVHlwZSogbGF5ZXIpCiB7CiAgICAgLy8gTGF5
ZXJzIGNhbiBiZSBza2lwcGVkIGlmIGFueSBvZiB0aGVzZSBjb25kaXRpb25zIGFyZSBtZXQuCiAg
ICAgLy8gICAtIGRvZXMgbm90IGRyYXcgY29udGVudC4KQEAgLTEwNCw2ICsxMDQsMzQgQEAgYm9v
bCBsYXllclNob3VsZEJlU2tpcHBlZChMYXllclR5cGUqIGxheWVyKQogICAgIHJldHVybiBmYWxz
ZTsKIH0KIAordGVtcGxhdGU8dHlwZW5hbWUgTGF5ZXJUeXBlPgorc3RhdGljIGJvb2wgc3VidHJl
ZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKExheWVyVHlwZSogbGF5ZXIsIGJvb2wgYXhp
c0FsaWduZWRXaXRoUmVzcGVjdFRvUGFyZW50KQoreworICAgIC8vIEEgbGF5ZXIgYW5kIGl0cyBk
ZXNjZW5kYW50cyBzaG91bGQgcmVuZGVyIG9udG8gYSBuZXcgUmVuZGVyU3VyZmFjZSBpZiBhbnkg
b2YKKyAgICAvLyB0aGVzZSBjb25kaXRpb25zIGhvbGQ6CisgICAgLy8gMS4gVGhlIGxheWVyIGNs
aXBzIGl0cyBkZXNjZW5kYW50cyBhbmQgaXRzIHRyYW5zZm9ybSBpcyBub3QgYSBzaW1wbGUgdHJh
bnNsYXRpb24uCisgICAgLy8gMi4gSWYgdGhlIGxheWVyIGhhcyBvcGFjaXR5ICE9IDEgYW5kIGRv
ZXMgbm90IGhhdmUgYSBwcmVzZXJ2ZXMtM2QgdHJhbnNmb3JtIHN0eWxlLgorICAgIC8vIDMuIFRo
ZSBsYXllciB1c2VzIGEgbWFzaworICAgIC8vIDQuIFRoZSBsYXllciBoYXMgYSByZXBsaWNhICh1
c2VkIGZvciByZWZsZWN0aW9ucykKKyAgICAvLyA1LiBUaGUgbGF5ZXIgZG9lc24ndCBwcmVzZXJ2
ZS0zZCBidXQgaXMgdGhlIGNoaWxkIG9mIGEgbGF5ZXIgd2hpY2ggZG9lcy4KKyAgICAvLyA2LiBU
aGUgbGF5ZXIncyBmaWx0ZXIgc2l6ZSBpcyBub24temVyby4KKyAgICAvLworICAgIC8vIElmIGEg
bGF5ZXIgcHJlc2VydmVzLTNkIHRoZW4gd2UgZG9uJ3QgY3JlYXRlIGEgUmVuZGVyU3VyZmFjZSBm
b3IgaXQgdG8gYXZvaWQgZmxhdHRlbmluZworICAgIC8vIG91dCBpdHMgY2hpbGRyZW4uCisKKyAg
ICBib29sIHVzZVN1cmZhY2VGb3JDbGlwcGluZyA9IGxheWVyLT5tYXNrc1RvQm91bmRzKCkgJiYg
IWF4aXNBbGlnbmVkV2l0aFJlc3BlY3RUb1BhcmVudDsKKyAgICBib29sIHVzZVN1cmZhY2VGb3JP
cGFjaXR5ID0gbGF5ZXItPm9wYWNpdHkoKSAhPSAxICYmICFsYXllci0+cHJlc2VydmVzM0QoKTsK
KyAgICBib29sIHVzZVN1cmZhY2VGb3JNYXNraW5nID0gbGF5ZXItPm1hc2tMYXllcigpOworICAg
IGJvb2wgdXNlU3VyZmFjZUZvclJlZmxlY3Rpb24gPSBsYXllci0+cmVwbGljYUxheWVyKCk7Cisg
ICAgYm9vbCB1c2VTdXJmYWNlRm9yRmxhdERlc2NlbmRhbnRzID0gbGF5ZXItPnBhcmVudCgpICYm
IGxheWVyLT5wYXJlbnQoKS0+cHJlc2VydmVzM0QoKSAmJiAhbGF5ZXItPnByZXNlcnZlczNEKCkg
JiYgbGF5ZXItPmRlc2NlbmRhbnREcmF3c0NvbnRlbnQoKTsKKyAgICBib29sIHVzZVN1cmZhY2VG
b3JGaWx0ZXJzID0gbGF5ZXItPmZpbHRlcnMoKS5zaXplKCkgPiAwOworCisgICAgYm9vbCBzaG91
bGRDcmVhdGVTdXJmYWNlID0gKHVzZVN1cmZhY2VGb3JNYXNraW5nIHx8IHVzZVN1cmZhY2VGb3JS
ZWZsZWN0aW9uIHx8IHVzZVN1cmZhY2VGb3JGbGF0RGVzY2VuZGFudHMgfHwgdXNlU3VyZmFjZUZv
ckZpbHRlcnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgKCh1c2VTdXJmYWNl
Rm9yQ2xpcHBpbmcgfHwgdXNlU3VyZmFjZUZvck9wYWNpdHkpICYmIGxheWVyLT5kZXNjZW5kYW50
RHJhd3NDb250ZW50KCkpKTsKKworICAgIHJldHVybiBzaG91bGRDcmVhdGVTdXJmYWNlOworfQor
CiAvLyBSZWN1cnNpdmVseSB3YWxrcyB0aGUgbGF5ZXIgdHJlZSBzdGFydGluZyBhdCB0aGUgZ2l2
ZW4gbm9kZSBhbmQgY29tcHV0ZXMgYWxsIHRoZQogLy8gbmVjZXNzYXJ5IHRyYW5zZm9ybWF0aW9u
cywgY2xpcFJlY3RzLCByZW5kZXIgc3VyZmFjZXMsIGV0Yy4KIHRlbXBsYXRlPHR5cGVuYW1lIExh
eWVyVHlwZSwgdHlwZW5hbWUgUmVuZGVyU3VyZmFjZVR5cGUsIHR5cGVuYW1lIExheWVyU29ydGVy
PgpAQCAtMjI5LDIzICsyNTcsNyBAQCBzdGF0aWMgYm9vbCBjYWxjdWxhdGVEcmF3VHJhbnNmb3Jt
c0FuZFZpc2liaWxpdHlJbnRlcm5hbChMYXllclR5cGUqIGxheWVyLCBMYXllcgogICAgIC8vIEZJ
WE1FOiBUaGlzIHNlZW1zIGxpa2UgdGhlIHdyb25nIHBsYWNlIHRvIHNldCB0aGlzCiAgICAgbGF5
ZXItPnNldFVzZXNMYXllckNsaXBwaW5nKGZhbHNlKTsKIAotICAgIC8vIFRoZSBsYXllciBhbmQg
aXRzIGRlc2NlbmRhbnRzIHJlbmRlciBvbiBhIG5ldyBSZW5kZXJTdXJmYWNlIGlmIGFueSBvZgot
ICAgIC8vIHRoZXNlIGNvbmRpdGlvbnMgaG9sZDoKLSAgICAvLyAxLiBUaGUgbGF5ZXIgY2xpcHMg
aXRzIGRlc2NlbmRhbnRzIGFuZCBpdHMgdHJhbnNmb3JtIGlzIG5vdCBhIHNpbXBsZSB0cmFuc2xh
dGlvbi4KLSAgICAvLyAyLiBJZiB0aGUgbGF5ZXIgaGFzIG9wYWNpdHkgIT0gMSBhbmQgZG9lcyBu
b3QgaGF2ZSBhIHByZXNlcnZlcy0zZCB0cmFuc2Zvcm0gc3R5bGUuCi0gICAgLy8gMy4gVGhlIGxh
eWVyIHVzZXMgYSBtYXNrCi0gICAgLy8gNC4gVGhlIGxheWVyIGhhcyBhIHJlcGxpY2EgKHVzZWQg
Zm9yIHJlZmxlY3Rpb25zKQotICAgIC8vIDUuIFRoZSBsYXllciBkb2Vzbid0IHByZXNlcnZlLTNk
IGJ1dCBpcyB0aGUgY2hpbGQgb2YgYSBsYXllciB3aGljaCBkb2VzLgotICAgIC8vIElmIGEgbGF5
ZXIgcHJlc2VydmVzLTNkIHRoZW4gd2UgZG9uJ3QgY3JlYXRlIGEgUmVuZGVyU3VyZmFjZSBmb3Ig
aXQgdG8gYXZvaWQgZmxhdHRlbmluZwotICAgIC8vIG91dCBpdHMgY2hpbGRyZW4uIFRoZSBvcGFj
aXR5IHZhbHVlIG9mIHRoZSBjaGlsZHJlbiBsYXllcnMgaXMgbXVsdGlwbGllZCBieSB0aGUgb3Bh
Y2l0eQotICAgIC8vIG9mIHRoZWlyIHBhcmVudC4KLSAgICBib29sIHVzZVN1cmZhY2VGb3JDbGlw
cGluZyA9IGxheWVyLT5tYXNrc1RvQm91bmRzKCkgJiYgIWlzU2NhbGVPclRyYW5zbGF0aW9uKGNv
bWJpbmVkVHJhbnNmb3JtKTsKLSAgICBib29sIHVzZVN1cmZhY2VGb3JPcGFjaXR5ID0gbGF5ZXIt
Pm9wYWNpdHkoKSAhPSAxICYmICFsYXllci0+cHJlc2VydmVzM0QoKTsKLSAgICBib29sIHVzZVN1
cmZhY2VGb3JNYXNraW5nID0gbGF5ZXItPm1hc2tMYXllcigpOwotICAgIGJvb2wgdXNlU3VyZmFj
ZUZvclJlZmxlY3Rpb24gPSBsYXllci0+cmVwbGljYUxheWVyKCk7Ci0gICAgYm9vbCB1c2VTdXJm
YWNlRm9yRmxhdERlc2NlbmRhbnRzID0gbGF5ZXItPnBhcmVudCgpICYmIGxheWVyLT5wYXJlbnQo
KS0+cHJlc2VydmVzM0QoKSAmJiAhbGF5ZXItPnByZXNlcnZlczNEKCkgJiYgbGF5ZXItPmRlc2Nl
bmRhbnREcmF3c0NvbnRlbnQoKTsKLSAgICBib29sIHVzZVN1cmZhY2VGb3JGaWx0ZXJzID0gbGF5
ZXItPmZpbHRlcnMoKS5zaXplKCkgPiAwOwotICAgIGlmICh1c2VTdXJmYWNlRm9yTWFza2luZyB8
fCB1c2VTdXJmYWNlRm9yUmVmbGVjdGlvbiB8fCB1c2VTdXJmYWNlRm9yRmxhdERlc2NlbmRhbnRz
IHx8IHVzZVN1cmZhY2VGb3JGaWx0ZXJzIHx8ICgodXNlU3VyZmFjZUZvckNsaXBwaW5nIHx8IHVz
ZVN1cmZhY2VGb3JPcGFjaXR5KSAmJiBsYXllci0+ZGVzY2VuZGFudERyYXdzQ29udGVudCgpKSkg
eworICAgIGlmIChzdWJ0cmVlU2hvdWxkUmVuZGVyVG9TZXBhcmF0ZVN1cmZhY2UobGF5ZXIsIGlz
U2NhbGVPclRyYW5zbGF0aW9uKGNvbWJpbmVkVHJhbnNmb3JtKSkpIHsKICAgICAgICAgaWYgKCFs
YXllci0+cmVuZGVyU3VyZmFjZSgpKQogICAgICAgICAgICAgbGF5ZXItPmNyZWF0ZVJlbmRlclN1
cmZhY2UoKTsKIApAQCAtMjU5LDYgKzI3MSw3IEBAIHN0YXRpYyBib29sIGNhbGN1bGF0ZURyYXdU
cmFuc2Zvcm1zQW5kVmlzaWJpbGl0eUludGVybmFsKExheWVyVHlwZSogbGF5ZXIsIExheWVyCiAK
ICAgICAgICAgdHJhbnNmb3JtZWRMYXllclJlY3QgPSBJbnRSZWN0KDAsIDAsIGJvdW5kcy53aWR0
aCgpLCBib3VuZHMuaGVpZ2h0KCkpOwogCisgICAgICAgIC8vIFRoZSBvcGFjaXR5IHZhbHVlIGlz
IG1vdmVkIGZyb20gdGhlIGxheWVyIHRvIGl0cyBzdXJmYWNlLCBzbyB0aGF0IHRoZSBlbnRpcmUg
c3VidHJlZSBwcm9wZXJseSBpbmhlcml0cyBvcGFjaXR5LgogICAgICAgICByZW5kZXJTdXJmYWNl
LT5zZXREcmF3T3BhY2l0eShkcmF3T3BhY2l0eSk7CiAgICAgICAgIGxheWVyLT5zZXREcmF3T3Bh
Y2l0eSgxKTsKIApAQCAtMzgyLDcgKzM5NSw3IEBAIHN0YXRpYyBib29sIGNhbGN1bGF0ZURyYXdU
cmFuc2Zvcm1zQW5kVmlzaWJpbGl0eUludGVybmFsKExheWVyVHlwZSogbGF5ZXIsIExheWVyCiAg
ICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAobGF5ZXItPm1hc2tzVG9Cb3VuZHMoKSB8fCB1c2VT
dXJmYWNlRm9yTWFza2luZykgeworICAgIGlmIChsYXllci0+bWFza3NUb0JvdW5kcygpIHx8IGxh
eWVyLT5tYXNrTGF5ZXIoKSkgewogICAgICAgICBJbnRSZWN0IGRyYXdhYmxlQ29udGVudFJlY3Qg
PSBsYXllci0+ZHJhd2FibGVDb250ZW50UmVjdCgpOwogICAgICAgICBkcmF3YWJsZUNvbnRlbnRS
ZWN0LmludGVyc2VjdCh0cmFuc2Zvcm1lZExheWVyUmVjdCk7CiAgICAgICAgIGxheWVyLT5zZXRE
cmF3YWJsZUNvbnRlbnRSZWN0KGRyYXdhYmxlQ29udGVudFJlY3QpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126879</attachid>
            <date>2012-02-13 18:03:13 -0800</date>
            <delta_ts>2012-02-14 11:28:25 -0800</delta_ts>
            <desc>rewrote as per reviewers comment</desc>
            <filename>bug-78539-20120213180312.patch</filename>
            <type>text/plain</type>
            <size>6702</size>
            <attacher name="Shawn Singh">shawnsingh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3NTk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTljZWUzNGI3Y2Q1MTZk
MzhkNzBhOTY1MjgxNDRhZjcwNTQ0MWExNC4uZDFjNTMxZTdlNzI4YWI2MGZlYjRiNWQyNmU1Mzcy
ZmIwZjUzZTI3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTAyLTEzICBTaGF3
biBTaW5naCAgPHNoYXduc2luZ2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0g
UmVmYWN0b3IgQ0NMYXllclRyZWVIb3N0Q29tbW9uOiBjcmVhdGUgaGVscGVyIGZ1bmN0aW9uIGZv
ciBjb21wbGV4IGJvb2xlYW4gY29uZGl0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD03ODUzOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRoaXMgY2hhbmdlIHNob3VsZCBpbnRyb2R1Y2Ugbm8gY2hhbmdl
IGluIGJlaGF2aW9yLCBhbmQgaXRzCisgICAgICAgIGV4cGVjdGVkIGJlaGF2aW9yIGlzIGFscmVh
ZHkgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICBJbiBjYWxjdWxhdGVEcmF3
VHJhbnNmb3Jtc0FuZFZpc2liaWxpdHksIHRoZXJlIGlzIGEgY29tcGxleAorICAgICAgICBib29s
ZWFuIGNvbmRpdGlvbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHdlIHNob3VsZCBjcmVhdGUgYQor
ICAgICAgICBSZW5kZXJTdXJmYWNlIG9yIG5vdC4gVGhpcyBwYXRjaCBwdWxscyBvdXQgdGhhdCBi
b29sZWFuIGxvZ2ljLAorICAgICAgICBhbmQgd3JhcHMgaXQgaW4gYSBoZWxwZXIgZnVuY3Rpb24g
Zm9yIG11Y2ggYmV0dGVyIHJlYWRhYmlsaXR5LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OmxheWVyU2hvdWxkQmVTa2lwcGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAo
V2ViQ29yZTo6c3VidHJlZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKToKKyAgICAgICAg
KFdlYkNvcmU6OmNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zQW5kVmlzaWJpbGl0eUludGVybmFsKToK
KwogMjAxMi0wMi0xMyAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc4NTIwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVy
VHJlZUhvc3RDb21tb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcAppbmRleCA4N2YzYjUxZjM1Y2I1YzNj
OTRmMzA3Zjc2OTNhYmI2OGZjODA3YjVmLi43OGMwMTViYTk4NmU2YTM4MmZmNTJjYTQ0Nzc4NmVh
OGY3NzRlOTFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5jcHAK
QEAgLTcyLDcgKzcyLDcgQEAgc3RhdGljIGJvb2wgaXNTY2FsZU9yVHJhbnNsYXRpb24oY29uc3Qg
VHJhbnNmb3JtYXRpb25NYXRyaXgmIG0pCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIExheWVyVHlw
ZT4KLWJvb2wgbGF5ZXJTaG91bGRCZVNraXBwZWQoTGF5ZXJUeXBlKiBsYXllcikKK3N0YXRpYyBi
b29sIGxheWVyU2hvdWxkQmVTa2lwcGVkKExheWVyVHlwZSogbGF5ZXIpCiB7CiAgICAgLy8gTGF5
ZXJzIGNhbiBiZSBza2lwcGVkIGlmIGFueSBvZiB0aGVzZSBjb25kaXRpb25zIGFyZSBtZXQuCiAg
ICAgLy8gICAtIGRvZXMgbm90IGRyYXcgY29udGVudC4KQEAgLTEwNCw2ICsxMDQsNDkgQEAgYm9v
bCBsYXllclNob3VsZEJlU2tpcHBlZChMYXllclR5cGUqIGxheWVyKQogICAgIHJldHVybiBmYWxz
ZTsKIH0KIAordGVtcGxhdGU8dHlwZW5hbWUgTGF5ZXJUeXBlPgorc3RhdGljIGJvb2wgc3VidHJl
ZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKExheWVyVHlwZSogbGF5ZXIsIGJvb2wgYXhp
c0FsaWduZWRXaXRoUmVzcGVjdFRvUGFyZW50KQoreworICAgIC8vIEZJWE1FOiBJZiB3ZSBkZWNp
ZGUgdG8gY3JlYXRlIGEgcmVuZGVyIHN1cmZhY2UgaGVyZSB3aGlsZSB0aGlzIGxheWVyIGRvZXMK
KyAgICAvLyAgICAgICAgcHJlc2VydmUtM2QsIHRoZW4gd2UgbWF5IGJlIHNvcnRpbmcgaW5jb3Jy
ZWN0bHkgYmVjYXVzZSB3ZSB3aWxsIG5vdCBiZQorICAgIC8vICAgICAgICBzb3J0aW5nIHRoZSBp
bmRpdmlkdWFsIGxheWVycyBvZiB0aGlzIHN1YnRyZWUgd2l0aCBvdGhlciBsYXllcnMgb3V0c2lk
ZSBvZgorICAgIC8vICAgICAgICB0aGlzIHN1YnRyZWUuCisKKyAgICAvLyBDYWNoZSB0aGlzIHZh
bHVlLCBiZWNhdXNlIG90aGVyd2lzZSBpdCB3YWxrcyB0aGUgZW50aXJlIHN1YnRyZWUgc2V2ZXJh
bCB0aW1lcy4KKyAgICBib29sIGRlc2NlbmRhbnREcmF3c0NvbnRlbnQgPSBsYXllci0+ZGVzY2Vu
ZGFudERyYXdzQ29udGVudCgpOworCisgICAgLy8KKyAgICAvLyBBIGxheWVyIGFuZCBpdHMgZGVz
Y2VuZGFudHMgc2hvdWxkIHJlbmRlciBvbnRvIGEgbmV3IFJlbmRlclN1cmZhY2UgaWYgYW55IG9m
IHRoZXNlIHJ1bGVzIGhvbGQ6CisgICAgLy8KKworICAgIC8vIElmIHRoZSBsYXllciB1c2VzIGEg
bWFzay4KKyAgICBpZiAobGF5ZXItPm1hc2tMYXllcigpKQorICAgICAgICByZXR1cm4gdHJ1ZTsK
KworICAgIC8vIElmIHRoZSBsYXllciBoYXMgYSByZWZsZWN0aW9uLgorICAgIGlmIChsYXllci0+
cmVwbGljYUxheWVyKCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgLy8gSWYgdGhlIGxh
eWVyIHVzZXMgYSBDU1MgZmlsdGVyLgorICAgIGlmIChsYXllci0+ZmlsdGVycygpLnNpemUoKSA+
IDAgJiYgZGVzY2VuZGFudERyYXdzQ29udGVudCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAg
ICAvLyBJZiB0aGUgbGF5ZXIgZmxhdHRlbnMgaXRzIHN1YnRyZWUgKGkuZS4gdGhlIGxheWVyIGRv
ZXNuJ3QgcHJlc2VydmUtM2QpLCBidXQgaXQgaXMKKyAgICAvLyB0cmVhdGVkIGFzIGEgM0Qgb2Jq
ZWN0IGJ5IGl0cyBwYXJlbnQgKGkuZS4gcGFyZW50IGRvZXMgcHJlc2VydmUtM2QpLgorICAgIGlm
IChsYXllci0+cGFyZW50KCkgJiYgbGF5ZXItPnBhcmVudCgpLT5wcmVzZXJ2ZXMzRCgpICYmICFs
YXllci0+cHJlc2VydmVzM0QoKSAmJiBkZXNjZW5kYW50RHJhd3NDb250ZW50KQorICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKworICAgIC8vIElmIHRoZSBsYXllciBjbGlwcyBpdHMgZGVzY2VuZGFudHMg
YnV0IGl0IGlzIG5vdCBheGlzLWFsaWduZWQgd2l0aCByZXNwZWN0IHRvIGl0cyBwYXJlbnQuCisg
ICAgaWYgKGxheWVyLT5tYXNrc1RvQm91bmRzKCkgJiYgIWF4aXNBbGlnbmVkV2l0aFJlc3BlY3RU
b1BhcmVudCAmJiBkZXNjZW5kYW50RHJhd3NDb250ZW50KQorICAgICAgICByZXR1cm4gdHJ1ZTsK
KworICAgIC8vIElmIHRoZSBsYXllciBoYXMgb3BhY2l0eSAhPSAxIGFuZCBkb2VzIG5vdCBoYXZl
IGEgcHJlc2VydmVzLTNkIHRyYW5zZm9ybSBzdHlsZS4KKyAgICBpZiAobGF5ZXItPm9wYWNpdHko
KSAhPSAxICYmICFsYXllci0+cHJlc2VydmVzM0QoKSAmJiBkZXNjZW5kYW50RHJhd3NDb250ZW50
KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIHJldHVybiBmYWxzZTsKK30KKwogLy8gUmVj
dXJzaXZlbHkgd2Fsa3MgdGhlIGxheWVyIHRyZWUgc3RhcnRpbmcgYXQgdGhlIGdpdmVuIG5vZGUg
YW5kIGNvbXB1dGVzIGFsbCB0aGUKIC8vIG5lY2Vzc2FyeSB0cmFuc2Zvcm1hdGlvbnMsIGNsaXBS
ZWN0cywgcmVuZGVyIHN1cmZhY2VzLCBldGMuCiB0ZW1wbGF0ZTx0eXBlbmFtZSBMYXllclR5cGUs
IHR5cGVuYW1lIFJlbmRlclN1cmZhY2VUeXBlLCB0eXBlbmFtZSBMYXllclNvcnRlcj4KQEAgLTIy
OSwyMyArMjcyLDcgQEAgc3RhdGljIGJvb2wgY2FsY3VsYXRlRHJhd1RyYW5zZm9ybXNBbmRWaXNp
YmlsaXR5SW50ZXJuYWwoTGF5ZXJUeXBlKiBsYXllciwgTGF5ZXIKICAgICAvLyBGSVhNRTogVGhp
cyBzZWVtcyBsaWtlIHRoZSB3cm9uZyBwbGFjZSB0byBzZXQgdGhpcwogICAgIGxheWVyLT5zZXRV
c2VzTGF5ZXJDbGlwcGluZyhmYWxzZSk7CiAKLSAgICAvLyBUaGUgbGF5ZXIgYW5kIGl0cyBkZXNj
ZW5kYW50cyByZW5kZXIgb24gYSBuZXcgUmVuZGVyU3VyZmFjZSBpZiBhbnkgb2YKLSAgICAvLyB0
aGVzZSBjb25kaXRpb25zIGhvbGQ6Ci0gICAgLy8gMS4gVGhlIGxheWVyIGNsaXBzIGl0cyBkZXNj
ZW5kYW50cyBhbmQgaXRzIHRyYW5zZm9ybSBpcyBub3QgYSBzaW1wbGUgdHJhbnNsYXRpb24uCi0g
ICAgLy8gMi4gSWYgdGhlIGxheWVyIGhhcyBvcGFjaXR5ICE9IDEgYW5kIGRvZXMgbm90IGhhdmUg
YSBwcmVzZXJ2ZXMtM2QgdHJhbnNmb3JtIHN0eWxlLgotICAgIC8vIDMuIFRoZSBsYXllciB1c2Vz
IGEgbWFzawotICAgIC8vIDQuIFRoZSBsYXllciBoYXMgYSByZXBsaWNhICh1c2VkIGZvciByZWZs
ZWN0aW9ucykKLSAgICAvLyA1LiBUaGUgbGF5ZXIgZG9lc24ndCBwcmVzZXJ2ZS0zZCBidXQgaXMg
dGhlIGNoaWxkIG9mIGEgbGF5ZXIgd2hpY2ggZG9lcy4KLSAgICAvLyBJZiBhIGxheWVyIHByZXNl
cnZlcy0zZCB0aGVuIHdlIGRvbid0IGNyZWF0ZSBhIFJlbmRlclN1cmZhY2UgZm9yIGl0IHRvIGF2
b2lkIGZsYXR0ZW5pbmcKLSAgICAvLyBvdXQgaXRzIGNoaWxkcmVuLiBUaGUgb3BhY2l0eSB2YWx1
ZSBvZiB0aGUgY2hpbGRyZW4gbGF5ZXJzIGlzIG11bHRpcGxpZWQgYnkgdGhlIG9wYWNpdHkKLSAg
ICAvLyBvZiB0aGVpciBwYXJlbnQuCi0gICAgYm9vbCB1c2VTdXJmYWNlRm9yQ2xpcHBpbmcgPSBs
YXllci0+bWFza3NUb0JvdW5kcygpICYmICFpc1NjYWxlT3JUcmFuc2xhdGlvbihjb21iaW5lZFRy
YW5zZm9ybSk7Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9yT3BhY2l0eSA9IGxheWVyLT5vcGFjaXR5
KCkgIT0gMSAmJiAhbGF5ZXItPnByZXNlcnZlczNEKCk7Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9y
TWFza2luZyA9IGxheWVyLT5tYXNrTGF5ZXIoKTsKLSAgICBib29sIHVzZVN1cmZhY2VGb3JSZWZs
ZWN0aW9uID0gbGF5ZXItPnJlcGxpY2FMYXllcigpOwotICAgIGJvb2wgdXNlU3VyZmFjZUZvckZs
YXREZXNjZW5kYW50cyA9IGxheWVyLT5wYXJlbnQoKSAmJiBsYXllci0+cGFyZW50KCktPnByZXNl
cnZlczNEKCkgJiYgIWxheWVyLT5wcmVzZXJ2ZXMzRCgpICYmIGxheWVyLT5kZXNjZW5kYW50RHJh
d3NDb250ZW50KCk7Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9yRmlsdGVycyA9IGxheWVyLT5maWx0
ZXJzKCkuc2l6ZSgpID4gMDsKLSAgICBpZiAodXNlU3VyZmFjZUZvck1hc2tpbmcgfHwgdXNlU3Vy
ZmFjZUZvclJlZmxlY3Rpb24gfHwgdXNlU3VyZmFjZUZvckZsYXREZXNjZW5kYW50cyB8fCB1c2VT
dXJmYWNlRm9yRmlsdGVycyB8fCAoKHVzZVN1cmZhY2VGb3JDbGlwcGluZyB8fCB1c2VTdXJmYWNl
Rm9yT3BhY2l0eSkgJiYgbGF5ZXItPmRlc2NlbmRhbnREcmF3c0NvbnRlbnQoKSkpIHsKKyAgICBp
ZiAoc3VidHJlZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKGxheWVyLCBpc1NjYWxlT3JU
cmFuc2xhdGlvbihjb21iaW5lZFRyYW5zZm9ybSkpKSB7CiAgICAgICAgIGlmICghbGF5ZXItPnJl
bmRlclN1cmZhY2UoKSkKICAgICAgICAgICAgIGxheWVyLT5jcmVhdGVSZW5kZXJTdXJmYWNlKCk7
CiAKQEAgLTI1OSw2ICsyODYsNyBAQCBzdGF0aWMgYm9vbCBjYWxjdWxhdGVEcmF3VHJhbnNmb3Jt
c0FuZFZpc2liaWxpdHlJbnRlcm5hbChMYXllclR5cGUqIGxheWVyLCBMYXllcgogCiAgICAgICAg
IHRyYW5zZm9ybWVkTGF5ZXJSZWN0ID0gSW50UmVjdCgwLCAwLCBib3VuZHMud2lkdGgoKSwgYm91
bmRzLmhlaWdodCgpKTsKIAorICAgICAgICAvLyBUaGUgb3BhY2l0eSB2YWx1ZSBpcyBtb3ZlZCBm
cm9tIHRoZSBsYXllciB0byBpdHMgc3VyZmFjZSwgc28gdGhhdCB0aGUgZW50aXJlIHN1YnRyZWUg
cHJvcGVybHkgaW5oZXJpdHMgb3BhY2l0eS4KICAgICAgICAgcmVuZGVyU3VyZmFjZS0+c2V0RHJh
d09wYWNpdHkoZHJhd09wYWNpdHkpOwogICAgICAgICBsYXllci0+c2V0RHJhd09wYWNpdHkoMSk7
CiAKQEAgLTM4Miw3ICs0MTAsNyBAQCBzdGF0aWMgYm9vbCBjYWxjdWxhdGVEcmF3VHJhbnNmb3Jt
c0FuZFZpc2liaWxpdHlJbnRlcm5hbChMYXllclR5cGUqIGxheWVyLCBMYXllcgogICAgICAgICB9
CiAgICAgfQogCi0gICAgaWYgKGxheWVyLT5tYXNrc1RvQm91bmRzKCkgfHwgdXNlU3VyZmFjZUZv
ck1hc2tpbmcpIHsKKyAgICBpZiAobGF5ZXItPm1hc2tzVG9Cb3VuZHMoKSB8fCBsYXllci0+bWFz
a0xheWVyKCkpIHsKICAgICAgICAgSW50UmVjdCBkcmF3YWJsZUNvbnRlbnRSZWN0ID0gbGF5ZXIt
PmRyYXdhYmxlQ29udGVudFJlY3QoKTsKICAgICAgICAgZHJhd2FibGVDb250ZW50UmVjdC5pbnRl
cnNlY3QodHJhbnNmb3JtZWRMYXllclJlY3QpOwogICAgICAgICBsYXllci0+c2V0RHJhd2FibGVD
b250ZW50UmVjdChkcmF3YWJsZUNvbnRlbnRSZWN0KTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>127005</attachid>
            <date>2012-02-14 11:28:29 -0800</date>
            <delta_ts>2012-02-15 16:39:55 -0800</delta_ts>
            <desc>Same patch, with minor fix</desc>
            <filename>bug-78539-20120214112828.patch</filename>
            <type>text/plain</type>
            <size>6730</size>
            <attacher name="Shawn Singh">shawnsingh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3NzE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGZiYTE4MmY2YjE4MDg4
NGZlYjAyY2VkM2FmYmUxYjQ1NGQ0ZWE4Ni4uMGI4ZmYzMGIyYzA4ZWMwYzBlZTlkYzgwYTcwNjY1
ZjczYjRiZGI4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTAyLTEzICBTaGF3
biBTaW5naCAgPHNoYXduc2luZ2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0g
UmVmYWN0b3IgQ0NMYXllclRyZWVIb3N0Q29tbW9uOiBjcmVhdGUgaGVscGVyIGZ1bmN0aW9uIGZv
ciBjb21wbGV4IGJvb2xlYW4gY29uZGl0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD03ODUzOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRoaXMgY2hhbmdlIHNob3VsZCBpbnRyb2R1Y2Ugbm8gY2hhbmdl
IGluIGJlaGF2aW9yLCBhbmQgaXRzCisgICAgICAgIGV4cGVjdGVkIGJlaGF2aW9yIGlzIGFscmVh
ZHkgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICBJbiBjYWxjdWxhdGVEcmF3
VHJhbnNmb3Jtc0FuZFZpc2liaWxpdHksIHRoZXJlIGlzIGEgY29tcGxleAorICAgICAgICBib29s
ZWFuIGNvbmRpdGlvbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHdlIHNob3VsZCBjcmVhdGUgYQor
ICAgICAgICBSZW5kZXJTdXJmYWNlIG9yIG5vdC4gVGhpcyBwYXRjaCBwdWxscyBvdXQgdGhhdCBi
b29sZWFuIGxvZ2ljLAorICAgICAgICBhbmQgd3JhcHMgaXQgaW4gYSBoZWxwZXIgZnVuY3Rpb24g
Zm9yIG11Y2ggYmV0dGVyIHJlYWRhYmlsaXR5LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OmxheWVyU2hvdWxkQmVTa2lwcGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAo
V2ViQ29yZTo6c3VidHJlZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKToKKyAgICAgICAg
KFdlYkNvcmU6OmNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zQW5kVmlzaWJpbGl0eUludGVybmFsKToK
KwogMjAxMi0wMi0xMiAgVGltb3RoeSBIYXRjaGVyICA8dGltb3RoeUBhcHBsZS5jb20+CiAKICAg
ICAgICAgRG9uJ3QgaW5jbHVkZSBDYWNoZWRSZXNvdXJjZXMgdGhhdCBoYXZlbid0IGRvd25sb2Fk
ZWQgd2hlbiBwb3B1bGF0aW5nIHRoZSBXZWIgSW5zcGVjdG9yIG9uIGxvYWQuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJl
ZUhvc3RDb21tb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcAppbmRleCA4N2YzYjUxZjM1Y2I1YzNjOTRm
MzA3Zjc2OTNhYmI2OGZjODA3YjVmLi40ZGJjYTkyYzI1NTZkMjY5Y2Q5ZjAzMWU2ZTYxNWEzZGNm
MzAyNTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5jcHAKQEAg
LTcyLDcgKzcyLDcgQEAgc3RhdGljIGJvb2wgaXNTY2FsZU9yVHJhbnNsYXRpb24oY29uc3QgVHJh
bnNmb3JtYXRpb25NYXRyaXgmIG0pCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIExheWVyVHlwZT4K
LWJvb2wgbGF5ZXJTaG91bGRCZVNraXBwZWQoTGF5ZXJUeXBlKiBsYXllcikKK3N0YXRpYyBib29s
IGxheWVyU2hvdWxkQmVTa2lwcGVkKExheWVyVHlwZSogbGF5ZXIpCiB7CiAgICAgLy8gTGF5ZXJz
IGNhbiBiZSBza2lwcGVkIGlmIGFueSBvZiB0aGVzZSBjb25kaXRpb25zIGFyZSBtZXQuCiAgICAg
Ly8gICAtIGRvZXMgbm90IGRyYXcgY29udGVudC4KQEAgLTEwNCw2ICsxMDQsNDkgQEAgYm9vbCBs
YXllclNob3VsZEJlU2tpcHBlZChMYXllclR5cGUqIGxheWVyKQogICAgIHJldHVybiBmYWxzZTsK
IH0KIAordGVtcGxhdGU8dHlwZW5hbWUgTGF5ZXJUeXBlPgorc3RhdGljIGJvb2wgc3VidHJlZVNo
b3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKExheWVyVHlwZSogbGF5ZXIsIGJvb2wgYXhpc0Fs
aWduZWRXaXRoUmVzcGVjdFRvUGFyZW50KQoreworICAgIC8vIEZJWE1FOiBJZiB3ZSBkZWNpZGUg
dG8gY3JlYXRlIGEgcmVuZGVyIHN1cmZhY2UgaGVyZSB3aGlsZSB0aGlzIGxheWVyIGRvZXMKKyAg
ICAvLyAgICAgICAgcHJlc2VydmUtM2QsIHRoZW4gd2UgbWF5IGJlIHNvcnRpbmcgaW5jb3JyZWN0
bHkgYmVjYXVzZSB3ZSB3aWxsIG5vdCBiZQorICAgIC8vICAgICAgICBzb3J0aW5nIHRoZSBpbmRp
dmlkdWFsIGxheWVycyBvZiB0aGlzIHN1YnRyZWUgd2l0aCBvdGhlciBsYXllcnMgb3V0c2lkZSBv
ZgorICAgIC8vICAgICAgICB0aGlzIHN1YnRyZWUuCisKKyAgICAvLyBDYWNoZSB0aGlzIHZhbHVl
LCBiZWNhdXNlIG90aGVyd2lzZSBpdCB3YWxrcyB0aGUgZW50aXJlIHN1YnRyZWUgc2V2ZXJhbCB0
aW1lcy4KKyAgICBib29sIGRlc2NlbmRhbnREcmF3c0NvbnRlbnQgPSBsYXllci0+ZGVzY2VuZGFu
dERyYXdzQ29udGVudCgpOworCisgICAgLy8KKyAgICAvLyBBIGxheWVyIGFuZCBpdHMgZGVzY2Vu
ZGFudHMgc2hvdWxkIHJlbmRlciBvbnRvIGEgbmV3IFJlbmRlclN1cmZhY2UgaWYgYW55IG9mIHRo
ZXNlIHJ1bGVzIGhvbGQ6CisgICAgLy8KKworICAgIC8vIElmIHRoZSBsYXllciB1c2VzIGEgbWFz
ay4KKyAgICBpZiAobGF5ZXItPm1hc2tMYXllcigpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKwor
ICAgIC8vIElmIHRoZSBsYXllciBoYXMgYSByZWZsZWN0aW9uLgorICAgIGlmIChsYXllci0+cmVw
bGljYUxheWVyKCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgLy8gSWYgdGhlIGxheWVy
IHVzZXMgYSBDU1MgZmlsdGVyLgorICAgIGlmIChsYXllci0+ZmlsdGVycygpLnNpemUoKSA+IDAp
CisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgLy8gSWYgdGhlIGxheWVyIGZsYXR0ZW5zIGl0
cyBzdWJ0cmVlIChpLmUuIHRoZSBsYXllciBkb2Vzbid0IHByZXNlcnZlLTNkKSwgYnV0IGl0IGlz
CisgICAgLy8gdHJlYXRlZCBhcyBhIDNEIG9iamVjdCBieSBpdHMgcGFyZW50IChpLmUuIHBhcmVu
dCBkb2VzIHByZXNlcnZlLTNkKS4KKyAgICBpZiAobGF5ZXItPnBhcmVudCgpICYmIGxheWVyLT5w
YXJlbnQoKS0+cHJlc2VydmVzM0QoKSAmJiAhbGF5ZXItPnByZXNlcnZlczNEKCkgJiYgZGVzY2Vu
ZGFudERyYXdzQ29udGVudCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAvLyBJZiB0aGUg
bGF5ZXIgY2xpcHMgaXRzIGRlc2NlbmRhbnRzIGJ1dCBpdCBpcyBub3QgYXhpcy1hbGlnbmVkIHdp
dGggcmVzcGVjdCB0byBpdHMgcGFyZW50LgorICAgIGlmIChsYXllci0+bWFza3NUb0JvdW5kcygp
ICYmICFheGlzQWxpZ25lZFdpdGhSZXNwZWN0VG9QYXJlbnQgJiYgZGVzY2VuZGFudERyYXdzQ29u
dGVudCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAvLyBJZiB0aGUgbGF5ZXIgaGFzIG9w
YWNpdHkgIT0gMSBhbmQgZG9lcyBub3QgaGF2ZSBhIHByZXNlcnZlcy0zZCB0cmFuc2Zvcm0gc3R5
bGUuCisgICAgaWYgKGxheWVyLT5vcGFjaXR5KCkgIT0gMSAmJiAhbGF5ZXItPnByZXNlcnZlczNE
KCkgJiYgZGVzY2VuZGFudERyYXdzQ29udGVudCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAg
ICByZXR1cm4gZmFsc2U7Cit9CisKIC8vIFJlY3Vyc2l2ZWx5IHdhbGtzIHRoZSBsYXllciB0cmVl
IHN0YXJ0aW5nIGF0IHRoZSBnaXZlbiBub2RlIGFuZCBjb21wdXRlcyBhbGwgdGhlCiAvLyBuZWNl
c3NhcnkgdHJhbnNmb3JtYXRpb25zLCBjbGlwUmVjdHMsIHJlbmRlciBzdXJmYWNlcywgZXRjLgog
dGVtcGxhdGU8dHlwZW5hbWUgTGF5ZXJUeXBlLCB0eXBlbmFtZSBSZW5kZXJTdXJmYWNlVHlwZSwg
dHlwZW5hbWUgTGF5ZXJTb3J0ZXI+CkBAIC0yMjksMjMgKzI3Miw3IEBAIHN0YXRpYyBib29sIGNh
bGN1bGF0ZURyYXdUcmFuc2Zvcm1zQW5kVmlzaWJpbGl0eUludGVybmFsKExheWVyVHlwZSogbGF5
ZXIsIExheWVyCiAgICAgLy8gRklYTUU6IFRoaXMgc2VlbXMgbGlrZSB0aGUgd3JvbmcgcGxhY2Ug
dG8gc2V0IHRoaXMKICAgICBsYXllci0+c2V0VXNlc0xheWVyQ2xpcHBpbmcoZmFsc2UpOwogCi0g
ICAgLy8gVGhlIGxheWVyIGFuZCBpdHMgZGVzY2VuZGFudHMgcmVuZGVyIG9uIGEgbmV3IFJlbmRl
clN1cmZhY2UgaWYgYW55IG9mCi0gICAgLy8gdGhlc2UgY29uZGl0aW9ucyBob2xkOgotICAgIC8v
IDEuIFRoZSBsYXllciBjbGlwcyBpdHMgZGVzY2VuZGFudHMgYW5kIGl0cyB0cmFuc2Zvcm0gaXMg
bm90IGEgc2ltcGxlIHRyYW5zbGF0aW9uLgotICAgIC8vIDIuIElmIHRoZSBsYXllciBoYXMgb3Bh
Y2l0eSAhPSAxIGFuZCBkb2VzIG5vdCBoYXZlIGEgcHJlc2VydmVzLTNkIHRyYW5zZm9ybSBzdHls
ZS4KLSAgICAvLyAzLiBUaGUgbGF5ZXIgdXNlcyBhIG1hc2sKLSAgICAvLyA0LiBUaGUgbGF5ZXIg
aGFzIGEgcmVwbGljYSAodXNlZCBmb3IgcmVmbGVjdGlvbnMpCi0gICAgLy8gNS4gVGhlIGxheWVy
IGRvZXNuJ3QgcHJlc2VydmUtM2QgYnV0IGlzIHRoZSBjaGlsZCBvZiBhIGxheWVyIHdoaWNoIGRv
ZXMuCi0gICAgLy8gSWYgYSBsYXllciBwcmVzZXJ2ZXMtM2QgdGhlbiB3ZSBkb24ndCBjcmVhdGUg
YSBSZW5kZXJTdXJmYWNlIGZvciBpdCB0byBhdm9pZCBmbGF0dGVuaW5nCi0gICAgLy8gb3V0IGl0
cyBjaGlsZHJlbi4gVGhlIG9wYWNpdHkgdmFsdWUgb2YgdGhlIGNoaWxkcmVuIGxheWVycyBpcyBt
dWx0aXBsaWVkIGJ5IHRoZSBvcGFjaXR5Ci0gICAgLy8gb2YgdGhlaXIgcGFyZW50LgotICAgIGJv
b2wgdXNlU3VyZmFjZUZvckNsaXBwaW5nID0gbGF5ZXItPm1hc2tzVG9Cb3VuZHMoKSAmJiAhaXNT
Y2FsZU9yVHJhbnNsYXRpb24oY29tYmluZWRUcmFuc2Zvcm0pOwotICAgIGJvb2wgdXNlU3VyZmFj
ZUZvck9wYWNpdHkgPSBsYXllci0+b3BhY2l0eSgpICE9IDEgJiYgIWxheWVyLT5wcmVzZXJ2ZXMz
RCgpOwotICAgIGJvb2wgdXNlU3VyZmFjZUZvck1hc2tpbmcgPSBsYXllci0+bWFza0xheWVyKCk7
Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9yUmVmbGVjdGlvbiA9IGxheWVyLT5yZXBsaWNhTGF5ZXIo
KTsKLSAgICBib29sIHVzZVN1cmZhY2VGb3JGbGF0RGVzY2VuZGFudHMgPSBsYXllci0+cGFyZW50
KCkgJiYgbGF5ZXItPnBhcmVudCgpLT5wcmVzZXJ2ZXMzRCgpICYmICFsYXllci0+cHJlc2VydmVz
M0QoKSAmJiBsYXllci0+ZGVzY2VuZGFudERyYXdzQ29udGVudCgpOwotICAgIGJvb2wgdXNlU3Vy
ZmFjZUZvckZpbHRlcnMgPSBsYXllci0+ZmlsdGVycygpLnNpemUoKSA+IDA7Ci0gICAgaWYgKHVz
ZVN1cmZhY2VGb3JNYXNraW5nIHx8IHVzZVN1cmZhY2VGb3JSZWZsZWN0aW9uIHx8IHVzZVN1cmZh
Y2VGb3JGbGF0RGVzY2VuZGFudHMgfHwgdXNlU3VyZmFjZUZvckZpbHRlcnMgfHwgKCh1c2VTdXJm
YWNlRm9yQ2xpcHBpbmcgfHwgdXNlU3VyZmFjZUZvck9wYWNpdHkpICYmIGxheWVyLT5kZXNjZW5k
YW50RHJhd3NDb250ZW50KCkpKSB7CisgICAgaWYgKHN1YnRyZWVTaG91bGRSZW5kZXJUb1NlcGFy
YXRlU3VyZmFjZShsYXllciwgaXNTY2FsZU9yVHJhbnNsYXRpb24oY29tYmluZWRUcmFuc2Zvcm0p
KSkgewogICAgICAgICBpZiAoIWxheWVyLT5yZW5kZXJTdXJmYWNlKCkpCiAgICAgICAgICAgICBs
YXllci0+Y3JlYXRlUmVuZGVyU3VyZmFjZSgpOwogCkBAIC0yNTksNiArMjg2LDcgQEAgc3RhdGlj
IGJvb2wgY2FsY3VsYXRlRHJhd1RyYW5zZm9ybXNBbmRWaXNpYmlsaXR5SW50ZXJuYWwoTGF5ZXJU
eXBlKiBsYXllciwgTGF5ZXIKIAogICAgICAgICB0cmFuc2Zvcm1lZExheWVyUmVjdCA9IEludFJl
Y3QoMCwgMCwgYm91bmRzLndpZHRoKCksIGJvdW5kcy5oZWlnaHQoKSk7CiAKKyAgICAgICAgLy8g
VGhlIG9wYWNpdHkgdmFsdWUgaXMgbW92ZWQgZnJvbSB0aGUgbGF5ZXIgdG8gaXRzIHN1cmZhY2Us
IHNvIHRoYXQgdGhlIGVudGlyZSBzdWJ0cmVlIHByb3Blcmx5IGluaGVyaXRzIG9wYWNpdHkuCiAg
ICAgICAgIHJlbmRlclN1cmZhY2UtPnNldERyYXdPcGFjaXR5KGRyYXdPcGFjaXR5KTsKICAgICAg
ICAgbGF5ZXItPnNldERyYXdPcGFjaXR5KDEpOwogCkBAIC0zODIsNyArNDEwLDcgQEAgc3RhdGlj
IGJvb2wgY2FsY3VsYXRlRHJhd1RyYW5zZm9ybXNBbmRWaXNpYmlsaXR5SW50ZXJuYWwoTGF5ZXJU
eXBlKiBsYXllciwgTGF5ZXIKICAgICAgICAgfQogICAgIH0KIAotICAgIGlmIChsYXllci0+bWFz
a3NUb0JvdW5kcygpIHx8IHVzZVN1cmZhY2VGb3JNYXNraW5nKSB7CisgICAgaWYgKGxheWVyLT5t
YXNrc1RvQm91bmRzKCkgfHwgbGF5ZXItPm1hc2tMYXllcigpKSB7CiAgICAgICAgIEludFJlY3Qg
ZHJhd2FibGVDb250ZW50UmVjdCA9IGxheWVyLT5kcmF3YWJsZUNvbnRlbnRSZWN0KCk7CiAgICAg
ICAgIGRyYXdhYmxlQ29udGVudFJlY3QuaW50ZXJzZWN0KHRyYW5zZm9ybWVkTGF5ZXJSZWN0KTsK
ICAgICAgICAgbGF5ZXItPnNldERyYXdhYmxlQ29udGVudFJlY3QoZHJhd2FibGVDb250ZW50UmVj
dCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>127273</attachid>
            <date>2012-02-15 16:39:59 -0800</date>
            <delta_ts>2012-02-15 23:44:23 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-78539-20120215163958.patch</filename>
            <type>text/plain</type>
            <size>6696</size>
            <attacher name="Shawn Singh">shawnsingh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3ODUyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmJmMzNjMjRjMjYxYjVh
MTc2YjdmODI5NmUxZjk1ZjJmMGY3NGFkNy4uOTQ2Mjk4MDRmMjdhMjc2OWEyYWZhMTVkOTIxZWFl
ZDNmNjFmODM0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTAyLTEzICBTaGF3
biBTaW5naCAgPHNoYXduc2luZ2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0g
UmVmYWN0b3IgQ0NMYXllclRyZWVIb3N0Q29tbW9uOiBjcmVhdGUgaGVscGVyIGZ1bmN0aW9uIGZv
ciBjb21wbGV4IGJvb2xlYW4gY29uZGl0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD03ODUzOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRoaXMgY2hhbmdlIHNob3VsZCBpbnRyb2R1Y2Ugbm8gY2hhbmdl
IGluIGJlaGF2aW9yLCBhbmQgaXRzCisgICAgICAgIGV4cGVjdGVkIGJlaGF2aW9yIGlzIGFscmVh
ZHkgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICBJbiBjYWxjdWxhdGVEcmF3
VHJhbnNmb3Jtc0FuZFZpc2liaWxpdHksIHRoZXJlIGlzIGEgY29tcGxleAorICAgICAgICBib29s
ZWFuIGNvbmRpdGlvbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHdlIHNob3VsZCBjcmVhdGUgYQor
ICAgICAgICBSZW5kZXJTdXJmYWNlIG9yIG5vdC4gVGhpcyBwYXRjaCBwdWxscyBvdXQgdGhhdCBi
b29sZWFuIGxvZ2ljLAorICAgICAgICBhbmQgd3JhcHMgaXQgaW4gYSBoZWxwZXIgZnVuY3Rpb24g
Zm9yIG11Y2ggYmV0dGVyIHJlYWRhYmlsaXR5LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OmxheWVyU2hvdWxkQmVTa2lwcGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAo
V2ViQ29yZTo6c3VidHJlZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKToKKyAgICAgICAg
KFdlYkNvcmU6OmNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zQW5kVmlzaWJpbGl0eUludGVybmFsKToK
KwogMjAxMi0wMi0xNSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAg
ICAgICAgIFRoZSBUaWxlQ2FjaGUgb2JqZWN0IHNob3VsZCBiZSBkZWFsbG9jYXRlZCBvbiB0aGUg
bWFpbiB0aHJlYWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCmlu
ZGV4IDg3ZjNiNTFmMzVjYjVjM2M5NGYzMDdmNzY5M2FiYjY4ZmM4MDdiNWYuLjRkYmNhOTJjMjU1
NmQyNjljZDlmMDMxZTZlNjE1YTNkY2YzMDI1MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXll
clRyZWVIb3N0Q29tbW9uLmNwcApAQCAtNzIsNyArNzIsNyBAQCBzdGF0aWMgYm9vbCBpc1NjYWxl
T3JUcmFuc2xhdGlvbihjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgbSkKIH0KIAogdGVtcGxh
dGU8dHlwZW5hbWUgTGF5ZXJUeXBlPgotYm9vbCBsYXllclNob3VsZEJlU2tpcHBlZChMYXllclR5
cGUqIGxheWVyKQorc3RhdGljIGJvb2wgbGF5ZXJTaG91bGRCZVNraXBwZWQoTGF5ZXJUeXBlKiBs
YXllcikKIHsKICAgICAvLyBMYXllcnMgY2FuIGJlIHNraXBwZWQgaWYgYW55IG9mIHRoZXNlIGNv
bmRpdGlvbnMgYXJlIG1ldC4KICAgICAvLyAgIC0gZG9lcyBub3QgZHJhdyBjb250ZW50LgpAQCAt
MTA0LDYgKzEwNCw0OSBAQCBib29sIGxheWVyU2hvdWxkQmVTa2lwcGVkKExheWVyVHlwZSogbGF5
ZXIpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCit0ZW1wbGF0ZTx0eXBlbmFtZSBMYXllclR5cGU+
CitzdGF0aWMgYm9vbCBzdWJ0cmVlU2hvdWxkUmVuZGVyVG9TZXBhcmF0ZVN1cmZhY2UoTGF5ZXJU
eXBlKiBsYXllciwgYm9vbCBheGlzQWxpZ25lZFdpdGhSZXNwZWN0VG9QYXJlbnQpCit7CisgICAg
Ly8gRklYTUU6IElmIHdlIGRlY2lkZSB0byBjcmVhdGUgYSByZW5kZXIgc3VyZmFjZSBoZXJlIHdo
aWxlIHRoaXMgbGF5ZXIgZG9lcworICAgIC8vICAgICAgICBwcmVzZXJ2ZS0zZCwgdGhlbiB3ZSBt
YXkgYmUgc29ydGluZyBpbmNvcnJlY3RseSBiZWNhdXNlIHdlIHdpbGwgbm90IGJlCisgICAgLy8g
ICAgICAgIHNvcnRpbmcgdGhlIGluZGl2aWR1YWwgbGF5ZXJzIG9mIHRoaXMgc3VidHJlZSB3aXRo
IG90aGVyIGxheWVycyBvdXRzaWRlIG9mCisgICAgLy8gICAgICAgIHRoaXMgc3VidHJlZS4KKwor
ICAgIC8vIENhY2hlIHRoaXMgdmFsdWUsIGJlY2F1c2Ugb3RoZXJ3aXNlIGl0IHdhbGtzIHRoZSBl
bnRpcmUgc3VidHJlZSBzZXZlcmFsIHRpbWVzLgorICAgIGJvb2wgZGVzY2VuZGFudERyYXdzQ29u
dGVudCA9IGxheWVyLT5kZXNjZW5kYW50RHJhd3NDb250ZW50KCk7CisKKyAgICAvLworICAgIC8v
IEEgbGF5ZXIgYW5kIGl0cyBkZXNjZW5kYW50cyBzaG91bGQgcmVuZGVyIG9udG8gYSBuZXcgUmVu
ZGVyU3VyZmFjZSBpZiBhbnkgb2YgdGhlc2UgcnVsZXMgaG9sZDoKKyAgICAvLworCisgICAgLy8g
SWYgdGhlIGxheWVyIHVzZXMgYSBtYXNrLgorICAgIGlmIChsYXllci0+bWFza0xheWVyKCkpCisg
ICAgICAgIHJldHVybiB0cnVlOworCisgICAgLy8gSWYgdGhlIGxheWVyIGhhcyBhIHJlZmxlY3Rp
b24uCisgICAgaWYgKGxheWVyLT5yZXBsaWNhTGF5ZXIoKSkKKyAgICAgICAgcmV0dXJuIHRydWU7
CisKKyAgICAvLyBJZiB0aGUgbGF5ZXIgdXNlcyBhIENTUyBmaWx0ZXIuCisgICAgaWYgKGxheWVy
LT5maWx0ZXJzKCkuc2l6ZSgpID4gMCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAvLyBJ
ZiB0aGUgbGF5ZXIgZmxhdHRlbnMgaXRzIHN1YnRyZWUgKGkuZS4gdGhlIGxheWVyIGRvZXNuJ3Qg
cHJlc2VydmUtM2QpLCBidXQgaXQgaXMKKyAgICAvLyB0cmVhdGVkIGFzIGEgM0Qgb2JqZWN0IGJ5
IGl0cyBwYXJlbnQgKGkuZS4gcGFyZW50IGRvZXMgcHJlc2VydmUtM2QpLgorICAgIGlmIChsYXll
ci0+cGFyZW50KCkgJiYgbGF5ZXItPnBhcmVudCgpLT5wcmVzZXJ2ZXMzRCgpICYmICFsYXllci0+
cHJlc2VydmVzM0QoKSAmJiBkZXNjZW5kYW50RHJhd3NDb250ZW50KQorICAgICAgICByZXR1cm4g
dHJ1ZTsKKworICAgIC8vIElmIHRoZSBsYXllciBjbGlwcyBpdHMgZGVzY2VuZGFudHMgYnV0IGl0
IGlzIG5vdCBheGlzLWFsaWduZWQgd2l0aCByZXNwZWN0IHRvIGl0cyBwYXJlbnQuCisgICAgaWYg
KGxheWVyLT5tYXNrc1RvQm91bmRzKCkgJiYgIWF4aXNBbGlnbmVkV2l0aFJlc3BlY3RUb1BhcmVu
dCAmJiBkZXNjZW5kYW50RHJhd3NDb250ZW50KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IC8vIElmIHRoZSBsYXllciBoYXMgb3BhY2l0eSAhPSAxIGFuZCBkb2VzIG5vdCBoYXZlIGEgcHJl
c2VydmVzLTNkIHRyYW5zZm9ybSBzdHlsZS4KKyAgICBpZiAobGF5ZXItPm9wYWNpdHkoKSAhPSAx
ICYmICFsYXllci0+cHJlc2VydmVzM0QoKSAmJiBkZXNjZW5kYW50RHJhd3NDb250ZW50KQorICAg
ICAgICByZXR1cm4gdHJ1ZTsKKworICAgIHJldHVybiBmYWxzZTsKK30KKwogLy8gUmVjdXJzaXZl
bHkgd2Fsa3MgdGhlIGxheWVyIHRyZWUgc3RhcnRpbmcgYXQgdGhlIGdpdmVuIG5vZGUgYW5kIGNv
bXB1dGVzIGFsbCB0aGUKIC8vIG5lY2Vzc2FyeSB0cmFuc2Zvcm1hdGlvbnMsIGNsaXBSZWN0cywg
cmVuZGVyIHN1cmZhY2VzLCBldGMuCiB0ZW1wbGF0ZTx0eXBlbmFtZSBMYXllclR5cGUsIHR5cGVu
YW1lIFJlbmRlclN1cmZhY2VUeXBlLCB0eXBlbmFtZSBMYXllclNvcnRlcj4KQEAgLTIyOSwyMyAr
MjcyLDcgQEAgc3RhdGljIGJvb2wgY2FsY3VsYXRlRHJhd1RyYW5zZm9ybXNBbmRWaXNpYmlsaXR5
SW50ZXJuYWwoTGF5ZXJUeXBlKiBsYXllciwgTGF5ZXIKICAgICAvLyBGSVhNRTogVGhpcyBzZWVt
cyBsaWtlIHRoZSB3cm9uZyBwbGFjZSB0byBzZXQgdGhpcwogICAgIGxheWVyLT5zZXRVc2VzTGF5
ZXJDbGlwcGluZyhmYWxzZSk7CiAKLSAgICAvLyBUaGUgbGF5ZXIgYW5kIGl0cyBkZXNjZW5kYW50
cyByZW5kZXIgb24gYSBuZXcgUmVuZGVyU3VyZmFjZSBpZiBhbnkgb2YKLSAgICAvLyB0aGVzZSBj
b25kaXRpb25zIGhvbGQ6Ci0gICAgLy8gMS4gVGhlIGxheWVyIGNsaXBzIGl0cyBkZXNjZW5kYW50
cyBhbmQgaXRzIHRyYW5zZm9ybSBpcyBub3QgYSBzaW1wbGUgdHJhbnNsYXRpb24uCi0gICAgLy8g
Mi4gSWYgdGhlIGxheWVyIGhhcyBvcGFjaXR5ICE9IDEgYW5kIGRvZXMgbm90IGhhdmUgYSBwcmVz
ZXJ2ZXMtM2QgdHJhbnNmb3JtIHN0eWxlLgotICAgIC8vIDMuIFRoZSBsYXllciB1c2VzIGEgbWFz
awotICAgIC8vIDQuIFRoZSBsYXllciBoYXMgYSByZXBsaWNhICh1c2VkIGZvciByZWZsZWN0aW9u
cykKLSAgICAvLyA1LiBUaGUgbGF5ZXIgZG9lc24ndCBwcmVzZXJ2ZS0zZCBidXQgaXMgdGhlIGNo
aWxkIG9mIGEgbGF5ZXIgd2hpY2ggZG9lcy4KLSAgICAvLyBJZiBhIGxheWVyIHByZXNlcnZlcy0z
ZCB0aGVuIHdlIGRvbid0IGNyZWF0ZSBhIFJlbmRlclN1cmZhY2UgZm9yIGl0IHRvIGF2b2lkIGZs
YXR0ZW5pbmcKLSAgICAvLyBvdXQgaXRzIGNoaWxkcmVuLiBUaGUgb3BhY2l0eSB2YWx1ZSBvZiB0
aGUgY2hpbGRyZW4gbGF5ZXJzIGlzIG11bHRpcGxpZWQgYnkgdGhlIG9wYWNpdHkKLSAgICAvLyBv
ZiB0aGVpciBwYXJlbnQuCi0gICAgYm9vbCB1c2VTdXJmYWNlRm9yQ2xpcHBpbmcgPSBsYXllci0+
bWFza3NUb0JvdW5kcygpICYmICFpc1NjYWxlT3JUcmFuc2xhdGlvbihjb21iaW5lZFRyYW5zZm9y
bSk7Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9yT3BhY2l0eSA9IGxheWVyLT5vcGFjaXR5KCkgIT0g
MSAmJiAhbGF5ZXItPnByZXNlcnZlczNEKCk7Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9yTWFza2lu
ZyA9IGxheWVyLT5tYXNrTGF5ZXIoKTsKLSAgICBib29sIHVzZVN1cmZhY2VGb3JSZWZsZWN0aW9u
ID0gbGF5ZXItPnJlcGxpY2FMYXllcigpOwotICAgIGJvb2wgdXNlU3VyZmFjZUZvckZsYXREZXNj
ZW5kYW50cyA9IGxheWVyLT5wYXJlbnQoKSAmJiBsYXllci0+cGFyZW50KCktPnByZXNlcnZlczNE
KCkgJiYgIWxheWVyLT5wcmVzZXJ2ZXMzRCgpICYmIGxheWVyLT5kZXNjZW5kYW50RHJhd3NDb250
ZW50KCk7Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9yRmlsdGVycyA9IGxheWVyLT5maWx0ZXJzKCku
c2l6ZSgpID4gMDsKLSAgICBpZiAodXNlU3VyZmFjZUZvck1hc2tpbmcgfHwgdXNlU3VyZmFjZUZv
clJlZmxlY3Rpb24gfHwgdXNlU3VyZmFjZUZvckZsYXREZXNjZW5kYW50cyB8fCB1c2VTdXJmYWNl
Rm9yRmlsdGVycyB8fCAoKHVzZVN1cmZhY2VGb3JDbGlwcGluZyB8fCB1c2VTdXJmYWNlRm9yT3Bh
Y2l0eSkgJiYgbGF5ZXItPmRlc2NlbmRhbnREcmF3c0NvbnRlbnQoKSkpIHsKKyAgICBpZiAoc3Vi
dHJlZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKGxheWVyLCBpc1NjYWxlT3JUcmFuc2xh
dGlvbihjb21iaW5lZFRyYW5zZm9ybSkpKSB7CiAgICAgICAgIGlmICghbGF5ZXItPnJlbmRlclN1
cmZhY2UoKSkKICAgICAgICAgICAgIGxheWVyLT5jcmVhdGVSZW5kZXJTdXJmYWNlKCk7CiAKQEAg
LTI1OSw2ICsyODYsNyBAQCBzdGF0aWMgYm9vbCBjYWxjdWxhdGVEcmF3VHJhbnNmb3Jtc0FuZFZp
c2liaWxpdHlJbnRlcm5hbChMYXllclR5cGUqIGxheWVyLCBMYXllcgogCiAgICAgICAgIHRyYW5z
Zm9ybWVkTGF5ZXJSZWN0ID0gSW50UmVjdCgwLCAwLCBib3VuZHMud2lkdGgoKSwgYm91bmRzLmhl
aWdodCgpKTsKIAorICAgICAgICAvLyBUaGUgb3BhY2l0eSB2YWx1ZSBpcyBtb3ZlZCBmcm9tIHRo
ZSBsYXllciB0byBpdHMgc3VyZmFjZSwgc28gdGhhdCB0aGUgZW50aXJlIHN1YnRyZWUgcHJvcGVy
bHkgaW5oZXJpdHMgb3BhY2l0eS4KICAgICAgICAgcmVuZGVyU3VyZmFjZS0+c2V0RHJhd09wYWNp
dHkoZHJhd09wYWNpdHkpOwogICAgICAgICBsYXllci0+c2V0RHJhd09wYWNpdHkoMSk7CiAKQEAg
LTM4Miw3ICs0MTAsNyBAQCBzdGF0aWMgYm9vbCBjYWxjdWxhdGVEcmF3VHJhbnNmb3Jtc0FuZFZp
c2liaWxpdHlJbnRlcm5hbChMYXllclR5cGUqIGxheWVyLCBMYXllcgogICAgICAgICB9CiAgICAg
fQogCi0gICAgaWYgKGxheWVyLT5tYXNrc1RvQm91bmRzKCkgfHwgdXNlU3VyZmFjZUZvck1hc2tp
bmcpIHsKKyAgICBpZiAobGF5ZXItPm1hc2tzVG9Cb3VuZHMoKSB8fCBsYXllci0+bWFza0xheWVy
KCkpIHsKICAgICAgICAgSW50UmVjdCBkcmF3YWJsZUNvbnRlbnRSZWN0ID0gbGF5ZXItPmRyYXdh
YmxlQ29udGVudFJlY3QoKTsKICAgICAgICAgZHJhd2FibGVDb250ZW50UmVjdC5pbnRlcnNlY3Qo
dHJhbnNmb3JtZWRMYXllclJlY3QpOwogICAgICAgICBsYXllci0+c2V0RHJhd2FibGVDb250ZW50
UmVjdChkcmF3YWJsZUNvbnRlbnRSZWN0KTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>127321</attachid>
            <date>2012-02-15 23:44:27 -0800</date>
            <delta_ts>2012-02-16 04:16:07 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-78539-20120215234426.patch</filename>
            <type>text/plain</type>
            <size>6691</size>
            <attacher name="Shawn Singh">shawnsingh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3ODk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNThkMTU3ZGE0MWQ4OTEw
ODU0MDBjNDRlZGUyZmU2YjZiNmU2YjViNi4uZTA2ZWIyZDcyMDZlMmZmZWZiYzYzM2U0NjMwMTJl
OWI2MWE1MGQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTAyLTE1ICBTaGF3
biBTaW5naCAgPHNoYXduc2luZ2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0g
UmVmYWN0b3IgQ0NMYXllclRyZWVIb3N0Q29tbW9uOiBjcmVhdGUgaGVscGVyIGZ1bmN0aW9uIGZv
ciBjb21wbGV4IGJvb2xlYW4gY29uZGl0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD03ODUzOQorCisgICAgICAgIFJldmlld2VkIGJ5IEphbWVzIFJv
Ymluc29uLgorCisgICAgICAgIFRoaXMgY2hhbmdlIHNob3VsZCBpbnRyb2R1Y2Ugbm8gY2hhbmdl
IGluIGJlaGF2aW9yLCBhbmQgaXRzCisgICAgICAgIGV4cGVjdGVkIGJlaGF2aW9yIGlzIGFscmVh
ZHkgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICBJbiBjYWxjdWxhdGVEcmF3
VHJhbnNmb3Jtc0FuZFZpc2liaWxpdHksIHRoZXJlIGlzIGEgY29tcGxleAorICAgICAgICBib29s
ZWFuIGNvbmRpdGlvbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHdlIHNob3VsZCBjcmVhdGUgYQor
ICAgICAgICBSZW5kZXJTdXJmYWNlIG9yIG5vdC4gVGhpcyBwYXRjaCBwdWxscyBvdXQgdGhhdCBi
b29sZWFuIGxvZ2ljLAorICAgICAgICBhbmQgd3JhcHMgaXQgaW4gYSBoZWxwZXIgZnVuY3Rpb24g
Zm9yIG11Y2ggYmV0dGVyIHJlYWRhYmlsaXR5LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OmxheWVyU2hvdWxkQmVTa2lwcGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAo
V2ViQ29yZTo6c3VidHJlZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKToKKyAgICAgICAg
KFdlYkNvcmU6OmNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zQW5kVmlzaWJpbGl0eUludGVybmFsKToK
KwogMjAxMi0wMi0xNSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAg
ICAgTW92ZSB0aGUgY29udGV4dCBpbnZhbGlkYXRpb24gY29kZSBvdXQgZnJvbSBTdHlsZVByb3Bl
cnR5U2V0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcAppbmRleCA4
N2YzYjUxZjM1Y2I1YzNjOTRmMzA3Zjc2OTNhYmI2OGZjODA3YjVmLi40ZGJjYTkyYzI1NTZkMjY5
Y2Q5ZjAzMWU2ZTYxNWEzZGNmMzAyNTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVl
SG9zdENvbW1vbi5jcHAKQEAgLTcyLDcgKzcyLDcgQEAgc3RhdGljIGJvb2wgaXNTY2FsZU9yVHJh
bnNsYXRpb24oY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIG0pCiB9CiAKIHRlbXBsYXRlPHR5
cGVuYW1lIExheWVyVHlwZT4KLWJvb2wgbGF5ZXJTaG91bGRCZVNraXBwZWQoTGF5ZXJUeXBlKiBs
YXllcikKK3N0YXRpYyBib29sIGxheWVyU2hvdWxkQmVTa2lwcGVkKExheWVyVHlwZSogbGF5ZXIp
CiB7CiAgICAgLy8gTGF5ZXJzIGNhbiBiZSBza2lwcGVkIGlmIGFueSBvZiB0aGVzZSBjb25kaXRp
b25zIGFyZSBtZXQuCiAgICAgLy8gICAtIGRvZXMgbm90IGRyYXcgY29udGVudC4KQEAgLTEwNCw2
ICsxMDQsNDkgQEAgYm9vbCBsYXllclNob3VsZEJlU2tpcHBlZChMYXllclR5cGUqIGxheWVyKQog
ICAgIHJldHVybiBmYWxzZTsKIH0KIAordGVtcGxhdGU8dHlwZW5hbWUgTGF5ZXJUeXBlPgorc3Rh
dGljIGJvb2wgc3VidHJlZVNob3VsZFJlbmRlclRvU2VwYXJhdGVTdXJmYWNlKExheWVyVHlwZSog
bGF5ZXIsIGJvb2wgYXhpc0FsaWduZWRXaXRoUmVzcGVjdFRvUGFyZW50KQoreworICAgIC8vIEZJ
WE1FOiBJZiB3ZSBkZWNpZGUgdG8gY3JlYXRlIGEgcmVuZGVyIHN1cmZhY2UgaGVyZSB3aGlsZSB0
aGlzIGxheWVyIGRvZXMKKyAgICAvLyAgICAgICAgcHJlc2VydmUtM2QsIHRoZW4gd2UgbWF5IGJl
IHNvcnRpbmcgaW5jb3JyZWN0bHkgYmVjYXVzZSB3ZSB3aWxsIG5vdCBiZQorICAgIC8vICAgICAg
ICBzb3J0aW5nIHRoZSBpbmRpdmlkdWFsIGxheWVycyBvZiB0aGlzIHN1YnRyZWUgd2l0aCBvdGhl
ciBsYXllcnMgb3V0c2lkZSBvZgorICAgIC8vICAgICAgICB0aGlzIHN1YnRyZWUuCisKKyAgICAv
LyBDYWNoZSB0aGlzIHZhbHVlLCBiZWNhdXNlIG90aGVyd2lzZSBpdCB3YWxrcyB0aGUgZW50aXJl
IHN1YnRyZWUgc2V2ZXJhbCB0aW1lcy4KKyAgICBib29sIGRlc2NlbmRhbnREcmF3c0NvbnRlbnQg
PSBsYXllci0+ZGVzY2VuZGFudERyYXdzQ29udGVudCgpOworCisgICAgLy8KKyAgICAvLyBBIGxh
eWVyIGFuZCBpdHMgZGVzY2VuZGFudHMgc2hvdWxkIHJlbmRlciBvbnRvIGEgbmV3IFJlbmRlclN1
cmZhY2UgaWYgYW55IG9mIHRoZXNlIHJ1bGVzIGhvbGQ6CisgICAgLy8KKworICAgIC8vIElmIHRo
ZSBsYXllciB1c2VzIGEgbWFzay4KKyAgICBpZiAobGF5ZXItPm1hc2tMYXllcigpKQorICAgICAg
ICByZXR1cm4gdHJ1ZTsKKworICAgIC8vIElmIHRoZSBsYXllciBoYXMgYSByZWZsZWN0aW9uLgor
ICAgIGlmIChsYXllci0+cmVwbGljYUxheWVyKCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisg
ICAgLy8gSWYgdGhlIGxheWVyIHVzZXMgYSBDU1MgZmlsdGVyLgorICAgIGlmIChsYXllci0+Zmls
dGVycygpLnNpemUoKSA+IDApCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgLy8gSWYgdGhl
IGxheWVyIGZsYXR0ZW5zIGl0cyBzdWJ0cmVlIChpLmUuIHRoZSBsYXllciBkb2Vzbid0IHByZXNl
cnZlLTNkKSwgYnV0IGl0IGlzCisgICAgLy8gdHJlYXRlZCBhcyBhIDNEIG9iamVjdCBieSBpdHMg
cGFyZW50IChpLmUuIHBhcmVudCBkb2VzIHByZXNlcnZlLTNkKS4KKyAgICBpZiAobGF5ZXItPnBh
cmVudCgpICYmIGxheWVyLT5wYXJlbnQoKS0+cHJlc2VydmVzM0QoKSAmJiAhbGF5ZXItPnByZXNl
cnZlczNEKCkgJiYgZGVzY2VuZGFudERyYXdzQ29udGVudCkKKyAgICAgICAgcmV0dXJuIHRydWU7
CisKKyAgICAvLyBJZiB0aGUgbGF5ZXIgY2xpcHMgaXRzIGRlc2NlbmRhbnRzIGJ1dCBpdCBpcyBu
b3QgYXhpcy1hbGlnbmVkIHdpdGggcmVzcGVjdCB0byBpdHMgcGFyZW50LgorICAgIGlmIChsYXll
ci0+bWFza3NUb0JvdW5kcygpICYmICFheGlzQWxpZ25lZFdpdGhSZXNwZWN0VG9QYXJlbnQgJiYg
ZGVzY2VuZGFudERyYXdzQ29udGVudCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAvLyBJ
ZiB0aGUgbGF5ZXIgaGFzIG9wYWNpdHkgIT0gMSBhbmQgZG9lcyBub3QgaGF2ZSBhIHByZXNlcnZl
cy0zZCB0cmFuc2Zvcm0gc3R5bGUuCisgICAgaWYgKGxheWVyLT5vcGFjaXR5KCkgIT0gMSAmJiAh
bGF5ZXItPnByZXNlcnZlczNEKCkgJiYgZGVzY2VuZGFudERyYXdzQ29udGVudCkKKyAgICAgICAg
cmV0dXJuIHRydWU7CisKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIC8vIFJlY3Vyc2l2ZWx5IHdh
bGtzIHRoZSBsYXllciB0cmVlIHN0YXJ0aW5nIGF0IHRoZSBnaXZlbiBub2RlIGFuZCBjb21wdXRl
cyBhbGwgdGhlCiAvLyBuZWNlc3NhcnkgdHJhbnNmb3JtYXRpb25zLCBjbGlwUmVjdHMsIHJlbmRl
ciBzdXJmYWNlcywgZXRjLgogdGVtcGxhdGU8dHlwZW5hbWUgTGF5ZXJUeXBlLCB0eXBlbmFtZSBS
ZW5kZXJTdXJmYWNlVHlwZSwgdHlwZW5hbWUgTGF5ZXJTb3J0ZXI+CkBAIC0yMjksMjMgKzI3Miw3
IEBAIHN0YXRpYyBib29sIGNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zQW5kVmlzaWJpbGl0eUludGVy
bmFsKExheWVyVHlwZSogbGF5ZXIsIExheWVyCiAgICAgLy8gRklYTUU6IFRoaXMgc2VlbXMgbGlr
ZSB0aGUgd3JvbmcgcGxhY2UgdG8gc2V0IHRoaXMKICAgICBsYXllci0+c2V0VXNlc0xheWVyQ2xp
cHBpbmcoZmFsc2UpOwogCi0gICAgLy8gVGhlIGxheWVyIGFuZCBpdHMgZGVzY2VuZGFudHMgcmVu
ZGVyIG9uIGEgbmV3IFJlbmRlclN1cmZhY2UgaWYgYW55IG9mCi0gICAgLy8gdGhlc2UgY29uZGl0
aW9ucyBob2xkOgotICAgIC8vIDEuIFRoZSBsYXllciBjbGlwcyBpdHMgZGVzY2VuZGFudHMgYW5k
IGl0cyB0cmFuc2Zvcm0gaXMgbm90IGEgc2ltcGxlIHRyYW5zbGF0aW9uLgotICAgIC8vIDIuIElm
IHRoZSBsYXllciBoYXMgb3BhY2l0eSAhPSAxIGFuZCBkb2VzIG5vdCBoYXZlIGEgcHJlc2VydmVz
LTNkIHRyYW5zZm9ybSBzdHlsZS4KLSAgICAvLyAzLiBUaGUgbGF5ZXIgdXNlcyBhIG1hc2sKLSAg
ICAvLyA0LiBUaGUgbGF5ZXIgaGFzIGEgcmVwbGljYSAodXNlZCBmb3IgcmVmbGVjdGlvbnMpCi0g
ICAgLy8gNS4gVGhlIGxheWVyIGRvZXNuJ3QgcHJlc2VydmUtM2QgYnV0IGlzIHRoZSBjaGlsZCBv
ZiBhIGxheWVyIHdoaWNoIGRvZXMuCi0gICAgLy8gSWYgYSBsYXllciBwcmVzZXJ2ZXMtM2QgdGhl
biB3ZSBkb24ndCBjcmVhdGUgYSBSZW5kZXJTdXJmYWNlIGZvciBpdCB0byBhdm9pZCBmbGF0dGVu
aW5nCi0gICAgLy8gb3V0IGl0cyBjaGlsZHJlbi4gVGhlIG9wYWNpdHkgdmFsdWUgb2YgdGhlIGNo
aWxkcmVuIGxheWVycyBpcyBtdWx0aXBsaWVkIGJ5IHRoZSBvcGFjaXR5Ci0gICAgLy8gb2YgdGhl
aXIgcGFyZW50LgotICAgIGJvb2wgdXNlU3VyZmFjZUZvckNsaXBwaW5nID0gbGF5ZXItPm1hc2tz
VG9Cb3VuZHMoKSAmJiAhaXNTY2FsZU9yVHJhbnNsYXRpb24oY29tYmluZWRUcmFuc2Zvcm0pOwot
ICAgIGJvb2wgdXNlU3VyZmFjZUZvck9wYWNpdHkgPSBsYXllci0+b3BhY2l0eSgpICE9IDEgJiYg
IWxheWVyLT5wcmVzZXJ2ZXMzRCgpOwotICAgIGJvb2wgdXNlU3VyZmFjZUZvck1hc2tpbmcgPSBs
YXllci0+bWFza0xheWVyKCk7Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9yUmVmbGVjdGlvbiA9IGxh
eWVyLT5yZXBsaWNhTGF5ZXIoKTsKLSAgICBib29sIHVzZVN1cmZhY2VGb3JGbGF0RGVzY2VuZGFu
dHMgPSBsYXllci0+cGFyZW50KCkgJiYgbGF5ZXItPnBhcmVudCgpLT5wcmVzZXJ2ZXMzRCgpICYm
ICFsYXllci0+cHJlc2VydmVzM0QoKSAmJiBsYXllci0+ZGVzY2VuZGFudERyYXdzQ29udGVudCgp
OwotICAgIGJvb2wgdXNlU3VyZmFjZUZvckZpbHRlcnMgPSBsYXllci0+ZmlsdGVycygpLnNpemUo
KSA+IDA7Ci0gICAgaWYgKHVzZVN1cmZhY2VGb3JNYXNraW5nIHx8IHVzZVN1cmZhY2VGb3JSZWZs
ZWN0aW9uIHx8IHVzZVN1cmZhY2VGb3JGbGF0RGVzY2VuZGFudHMgfHwgdXNlU3VyZmFjZUZvckZp
bHRlcnMgfHwgKCh1c2VTdXJmYWNlRm9yQ2xpcHBpbmcgfHwgdXNlU3VyZmFjZUZvck9wYWNpdHkp
ICYmIGxheWVyLT5kZXNjZW5kYW50RHJhd3NDb250ZW50KCkpKSB7CisgICAgaWYgKHN1YnRyZWVT
aG91bGRSZW5kZXJUb1NlcGFyYXRlU3VyZmFjZShsYXllciwgaXNTY2FsZU9yVHJhbnNsYXRpb24o
Y29tYmluZWRUcmFuc2Zvcm0pKSkgewogICAgICAgICBpZiAoIWxheWVyLT5yZW5kZXJTdXJmYWNl
KCkpCiAgICAgICAgICAgICBsYXllci0+Y3JlYXRlUmVuZGVyU3VyZmFjZSgpOwogCkBAIC0yNTks
NiArMjg2LDcgQEAgc3RhdGljIGJvb2wgY2FsY3VsYXRlRHJhd1RyYW5zZm9ybXNBbmRWaXNpYmls
aXR5SW50ZXJuYWwoTGF5ZXJUeXBlKiBsYXllciwgTGF5ZXIKIAogICAgICAgICB0cmFuc2Zvcm1l
ZExheWVyUmVjdCA9IEludFJlY3QoMCwgMCwgYm91bmRzLndpZHRoKCksIGJvdW5kcy5oZWlnaHQo
KSk7CiAKKyAgICAgICAgLy8gVGhlIG9wYWNpdHkgdmFsdWUgaXMgbW92ZWQgZnJvbSB0aGUgbGF5
ZXIgdG8gaXRzIHN1cmZhY2UsIHNvIHRoYXQgdGhlIGVudGlyZSBzdWJ0cmVlIHByb3Blcmx5IGlu
aGVyaXRzIG9wYWNpdHkuCiAgICAgICAgIHJlbmRlclN1cmZhY2UtPnNldERyYXdPcGFjaXR5KGRy
YXdPcGFjaXR5KTsKICAgICAgICAgbGF5ZXItPnNldERyYXdPcGFjaXR5KDEpOwogCkBAIC0zODIs
NyArNDEwLDcgQEAgc3RhdGljIGJvb2wgY2FsY3VsYXRlRHJhd1RyYW5zZm9ybXNBbmRWaXNpYmls
aXR5SW50ZXJuYWwoTGF5ZXJUeXBlKiBsYXllciwgTGF5ZXIKICAgICAgICAgfQogICAgIH0KIAot
ICAgIGlmIChsYXllci0+bWFza3NUb0JvdW5kcygpIHx8IHVzZVN1cmZhY2VGb3JNYXNraW5nKSB7
CisgICAgaWYgKGxheWVyLT5tYXNrc1RvQm91bmRzKCkgfHwgbGF5ZXItPm1hc2tMYXllcigpKSB7
CiAgICAgICAgIEludFJlY3QgZHJhd2FibGVDb250ZW50UmVjdCA9IGxheWVyLT5kcmF3YWJsZUNv
bnRlbnRSZWN0KCk7CiAgICAgICAgIGRyYXdhYmxlQ29udGVudFJlY3QuaW50ZXJzZWN0KHRyYW5z
Zm9ybWVkTGF5ZXJSZWN0KTsKICAgICAgICAgbGF5ZXItPnNldERyYXdhYmxlQ29udGVudFJlY3Qo
ZHJhd2FibGVDb250ZW50UmVjdCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>