<?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>59626</bug_id>
          
          <creation_ts>2011-04-27 12:37:50 -0700</creation_ts>
          <short_desc>[chromium] Add swapBuffersCompleteCallback to Extensions3DChromium</short_desc>
          <delta_ts>2011-04-28 22:24:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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="Nat Duca">nduca</reporter>
          <assigned_to name="Nat Duca">nduca</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>kbr</cc>
    
    <cc>levin</cc>
    
    <cc>nduca</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>393714</commentid>
    <comment_count>0</comment_count>
    <who name="Nat Duca">nduca</who>
    <bug_when>2011-04-27 12:37:50 -0700</bug_when>
    <thetext>[chromium] Add swapBuffersCompleteCallback to Extensions3DChromium</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393715</commentid>
    <comment_count>1</comment_count>
      <attachid>91325</attachid>
    <who name="Nat Duca">nduca</who>
    <bug_when>2011-04-27 12:38:34 -0700</bug_when>
    <thetext>Created attachment 91325
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394094</commentid>
    <comment_count>2</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-04-27 18:53:11 -0700</bug_when>
    <thetext>Please provide more description in the bug report about why this functionality is being added.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394108</commentid>
    <comment_count>3</comment_count>
      <attachid>91325</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-04-27 19:07:22 -0700</bug_when>
    <thetext>Comment on attachment 91325
Patch

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

A few questions. Not touching the review bit yet.

&gt; Source/WebKit/chromium/public/WebGraphicsContext3D.h:65
&gt; +#define WEBGRAPHICSCONTEXT3D_HAS_SWAPBUFFERS_COMPLETE_EXTENSION

Is this being added just so that you can land the Chromium side patch before this one? If so, please remove it -- we wait for the WebKit change to land and roll before committing the downstream code. Otherwise the code would be littered with such #ifdefs.

&gt; Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp:1213
&gt; +    m_impl-&gt;setSwapBuffersCompleteCallbackCHROMIUM(m_swapBuffersCompleteCallbackAdapter.get());

For safety during teardown, should we explicitly set m_impl&apos;s swap buffers callback to 0 in the destructor of GraphicsContext3DInternal?

&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:56
&gt; +#include &quot;Extensions3DChromium.h&quot;

Why is this needed if there are no other code changes in this file?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394196</commentid>
    <comment_count>4</comment_count>
    <who name="Nat Duca">nduca</who>
    <bug_when>2011-04-27 21:59:22 -0700</bug_when>
    <thetext>&gt; A few questions. Not touching the review bit yet.
&gt; 
&gt; &gt; Source/WebKit/chromium/public/WebGraphicsContext3D.h:65
&gt; &gt; +#define WEBGRAPHICSCONTEXT3D_HAS_SWAPBUFFERS_COMPLETE_EXTENSION
Yanked.

&gt;setSwapBuffersCompleteCallbackCHROMIUM(m_swapBuffersCompleteCallbackAdapter.get(&gt; For safety during teardown, should we explicitly set m_impl&apos;s swap buffers callback to 0 in the destructor of GraphicsContext3DInternal?

I&apos;m fine doing that, but e.g., ContextLostCallback, doesn&apos;t do that. I tend to agree with your suggestion so my upcoming patch reflects that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394200</commentid>
    <comment_count>5</comment_count>
      <attachid>91426</attachid>
    <who name="Nat Duca">nduca</who>
    <bug_when>2011-04-27 22:00:53 -0700</bug_when>
    <thetext>Created attachment 91426
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394201</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-27 22:03:38 -0700</bug_when>
    <thetext>Attachment 91426 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp:1193:  Missing space inside { }.  [whitespace/braces] [5]
Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp:1195:  Missing space inside { }.  [whitespace/braces] [5]
Source/WebCore/platform/graphics/chromium/Extensions3DChromium.h:84:  Missing space inside { }.  [whitespace/braces] [5]
Source/WebKit/chromium/public/WebGraphicsContext3D.h:108:  Missing space inside { }.  [whitespace/braces] [5]
Source/WebKit/chromium/public/WebGraphicsContext3D.h:184:  Missing space inside { }.  [whitespace/braces] [5]
Total errors found: 5 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394204</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-27 22:05:47 -0700</bug_when>
    <thetext>Attachment 91426 did not build on chromium:
Build output: http://queues.webkit.org/results/8516315</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394205</commentid>
    <comment_count>8</comment_count>
      <attachid>91427</attachid>
    <who name="Nat Duca">nduca</who>
    <bug_when>2011-04-27 22:06:00 -0700</bug_when>
    <thetext>Created attachment 91427
Ah, thats why extensions3dchromium was included.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394206</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-27 22:08:22 -0700</bug_when>
    <thetext>Attachment 91427 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp:1193:  Missing space inside { }.  [whitespace/braces] [5]
Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp:1195:  Missing space inside { }.  [whitespace/braces] [5]
Source/WebCore/platform/graphics/chromium/Extensions3DChromium.h:84:  Missing space inside { }.  [whitespace/braces] [5]
Source/WebKit/chromium/public/WebGraphicsContext3D.h:108:  Missing space inside { }.  [whitespace/braces] [5]
Source/WebKit/chromium/public/WebGraphicsContext3D.h:184:  Missing space inside { }.  [whitespace/braces] [5]
Total errors found: 5 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394812</commentid>
    <comment_count>10</comment_count>
      <attachid>91427</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-04-28 15:24:34 -0700</bug_when>
    <thetext>Comment on attachment 91427
Ah, thats why extensions3dchromium was included.

Looks good but could you please clean up the style issues? Note that &quot;webkit-patch upload&quot; will run the style checker before upload and catch these issues before the bots do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394847</commentid>
    <comment_count>11</comment_count>
      <attachid>91573</attachid>
    <who name="Nat Duca">nduca</who>
    <bug_when>2011-04-28 15:54:51 -0700</bug_when>
    <thetext>Created attachment 91573
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394848</commentid>
    <comment_count>12</comment_count>
    <who name="Nat Duca">nduca</who>
    <bug_when>2011-04-28 15:55:11 -0700</bug_when>
    <thetext>Le sigh...
nduca:~/Local/chrome/src/third_party/WebKit $ check-webkit-style 
Total errors found: 0 in 7 files

Git issue? Ugh.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394853</commentid>
    <comment_count>13</comment_count>
      <attachid>91573</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-04-28 15:57:27 -0700</bug_when>
    <thetext>Comment on attachment 91573
Patch

Fantastic. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>395055</commentid>
    <comment_count>14</comment_count>
      <attachid>91573</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-28 20:19:43 -0700</bug_when>
    <thetext>Comment on attachment 91573
Patch

Clearing flags on attachment: 91573

Committed r85292: &lt;http://trac.webkit.org/changeset/85292&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>395056</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-28 20:19:48 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>395077</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-28 20:52:51 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/85292 might have broken Windows 7 Release (Tests)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>395113</commentid>
    <comment_count>17</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2011-04-28 22:24:20 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; Le sigh...
&gt; nduca:~/Local/chrome/src/third_party/WebKit $ check-webkit-style 
&gt; Total errors found: 0 in 7 files
&gt; 
&gt; Git issue? Ugh.

(Very) recently added check. (You may not have had it.)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>91325</attachid>
            <date>2011-04-27 12:38:34 -0700</date>
            <delta_ts>2011-04-27 22:00:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-59626-20110427123833.patch</filename>
            <type>text/plain</type>
            <size>10071</size>
            <attacher name="Nat Duca">nduca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQ1ODIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlYjI0NTFiN2I1YjU3YjJl
NDQ5MmExN2I3N2I0M2MwNGVhYzFkYTY2Li40MDQ0MDBlZjFlMWY2MTNiNWMwOTMwMzdlYTAzNjkx
M2IwMjIwZjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMjcgIE5hdCBE
dWNhICA8bmR1Y2FAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFtjaHJvbWl1bV0gQWRkIHN3YXBCdWZmZXJzQ29tcGxldGVDYWxs
YmFjayB0byBFeHRlbnNpb25zM0RDaHJvbWl1bQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk2MjYKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9taXVtLmg6CisgICAgICAgIChXZWJDb3JlOjpFeHRl
bnNpb25zM0RDaHJvbWl1bTo6U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU06On5T
d2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSk6CisKIDIwMTEtMDQtMjEgIFZhbmdl
bGlzIEtva2tldmlzICA8dmFuZ2VsaXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IEphbWVzIFJvYmluc29uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0uaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9taXVtLmgKaW5kZXgg
YzU0MjM1MWIzMzMyOGVkMzBmZjg1NTg5ODgwZGQ2NjIzNWE1NzIwYi4uYTc4YmJkMzg0MTcwMDRi
NDY4NjM1NDFhY2UyMzEwNzdmNjdhYTg3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0uaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9FeHRlbnNpb25zM0RDaHJvbWl1
bS5oCkBAIC0zOSw2ICszOSwxMCBAQCBwdWJsaWM6CiAgICAgLy8gU3VwcG9ydGVkIGV4dGVuc2lv
bnM6CiAgICAgLy8gICBHTF9DSFJPTUlVTV9yZXNvdXJjZV9zYWZlICA6IGluZGljYXRpbmcgdGhh
dCB0ZXh0dXJlcy9yZW5kZXJidWZmZXJzIGFyZSBhbHdheXMgaW5pdGlhbGl6ZWQgYmVmb3JlIHJl
YWQvd3JpdGUuCiAgICAgLy8gICBHTF9DSFJPTUlVTV9zdHJpY3RfYXR0cmlicyA6IGluZGljYXRp
bmcgYSBHTCBlcnJvciBpcyBnZW5lcmF0ZWQgZm9yIG91dC1vZi1ib3VuZHMgYnVmZmVyIGFjY2Vz
c2VzLgorICAgIC8vICAgR0xfQ0hST01JVU1fbWFwX3N1YgorICAgIC8vICAgR0xfQ0hST01JVU1f
Y29weV90ZXh0dXJlX3RvX3BhcmVudF90ZXh0dXJlCisgICAgLy8gICBHTF9DSFJPTUlVTV9sYXRj
aAorICAgIC8vICAgR0xfQ0hST01JVU1fc3dhcGJ1ZmZlcnNfY29tcGxldGVfY2FsbGJhY2sKIAog
ICAgIC8vIEV4dGVuc2lvbnMzRCBtZXRob2RzLgogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0cyhj
b25zdCBTdHJpbmcmKTsKQEAgLTY3LDEyICs3MSwyMCBAQCBwdWJsaWM6CiAgICAgLy8gR0xfQ0hS
T01JVU1fY29weV90ZXh0dXJlX3RvX3BhcmVudF90ZXh0dXJlCiAgICAgdm9pZCBjb3B5VGV4dHVy
ZVRvUGFyZW50VGV4dHVyZUNIUk9NSVVNKHVuc2lnbmVkIHRleHR1cmUsIHVuc2lnbmVkIHBhcmVu
dFRleHR1cmUpOwogCi0gICAgLy8gTGF0Y2ggc3VwcG9ydAorICAgIC8vIEdMX0NIUk9NSVVNX2xh
dGNoCiAgICAgdm9pZCBnZXRQYXJlbnRUb0NoaWxkTGF0Y2hDSFJPTUlVTShHQzNEdWludCogbGF0
Y2hJZCk7CiAgICAgdm9pZCBnZXRDaGlsZFRvUGFyZW50TGF0Y2hDSFJPTUlVTShHQzNEdWludCog
bGF0Y2hJZCk7CiAgICAgdm9pZCB3YWl0TGF0Y2hDSFJPTUlVTShHQzNEdWludCBsYXRjaElkKTsK
ICAgICB2b2lkIHNldExhdGNoQ0hST01JVU0oR0MzRHVpbnQgbGF0Y2hJZCk7CiAKKyAgICAvLyBH
TF9DSFJPTUlVTV9zd2FwYnVmZmVyc19jb21wbGV0ZV9jYWxsYmFjaworICAgIGNsYXNzIFN3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNIHsKKyAgICBwdWJsaWM6CisgICAgICAgIHZp
cnR1YWwgdm9pZCBvblN3YXBCdWZmZXJzQ29tcGxldGUoKSA9IDA7CisgICAgICAgIHZpcnR1YWwg
flN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKCkge30KKyAgICB9OworICAgIHZv
aWQgc2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0oUGFzc093blB0cjxTd2Fw
QnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTT4pOworCiBwcml2YXRlOgogICAgIC8vIElu
c3RhbmNlcyBvZiB0aGlzIGNsYXNzIGFyZSBzdHJpY3RseSBvd25lZCBieSB0aGUgR3JhcGhpY3ND
b250ZXh0M0QgaW1wbGVtZW50YXRpb24gYW5kIGRvIG5vdAogICAgIC8vIG5lZWQgdG8gYmUgaW5z
dGFudGlhdGVkIGJ5IGFueSBvdGhlciBjb2RlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRl
eCA0ZjFjYmVkMGJiMmM3MGI4OWM2MGZhM2I1N2ZjYzYwZDZhNmY3MzI2Li4yZTczNWM4NjYyZTUx
ZTI1NjMzYTkwMmQ1ZjU1YzhkZjI3MDE0NjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI0IEBACisyMDExLTA0LTI3ICBOYXQgRHVjYSAgPG5kdWNhQGNocm9taXVtLm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbY2hy
b21pdW1dIEFkZCBzd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2sgdG8gRXh0ZW5zaW9uczNEQ2hy
b21pdW0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU5
NjI2CisKKyAgICAgICAgKiBwdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaDoKKyAgICAgICAg
KFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q6OldlYkdyYXBoaWNzU3dhcEJ1ZmZlcnNDb21w
bGV0ZUNhbGxiYWNrQ0hST01JVU06On5XZWJHcmFwaGljc1N3YXBCdWZmZXJzQ29tcGxldGVDYWxs
YmFja0NIUk9NSVVNKToKKyAgICAgICAgKFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNl
dFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKToKKyAgICAgICAgKiBzcmMvRXh0
ZW5zaW9uczNEQ2hyb21pdW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXh0ZW5zaW9uczNEQ2hy
b21pdW06OnNldFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKToKKyAgICAgICAg
KiBzcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
d2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyOjp+U3dhcEJ1ZmZlcnNDb21wbGV0ZUNh
bGxiYWNrQWRhcHRlcik6CisgICAgICAgIChXZWJDb3JlOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tBZGFwdGVyOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXI6Om9uU3dhcEJ1
ZmZlcnNDb21wbGV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tBZGFwdGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0
M0RJbnRlcm5hbDo6c2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0pOgorICAg
ICAgICAqIHNyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmg6CisgICAgICAgICogc3JjL1dl
YlZpZXdJbXBsLmNwcDoKKwogMjAxMS0wNC0yMSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0
Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaCBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmgKaW5kZXggMmQ3
YjBhNTU5ZWU5YjNjYWVhYjczN2JjMGE5MjQ2ZGM3ZjRjOTZjZi4uMTA3ODUxYjgwMTc2YTNiZGMz
MjdjYjU4M2M3ZWJlNmNmYzk4MGYzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3B1YmxpYy9XZWJHcmFwaGljc0NvbnRleHQzRC5oCkBAIC02Miw2ICs2Miw4IEBAIHR5cGVk
ZWYgV0dDM0R1aW50IFdlYkdMSWQ7CiAKIGNsYXNzIFdlYlZpZXc7CiAKKyNkZWZpbmUgV0VCR1JB
UEhJQ1NDT05URVhUM0RfSEFTX1NXQVBCVUZGRVJTX0NPTVBMRVRFX0VYVEVOU0lPTgorCiAvLyBU
aGlzIGludGVyZmFjZSBhYnN0cmFjdHMgdGhlIG9wZXJhdGlvbnMgcGVyZm9ybWVkIGJ5IHRoZQog
Ly8gR3JhcGhpY3NDb250ZXh0M0QgaW4gb3JkZXIgdG8gaW1wbGVtZW50IFdlYkdMLiBOZWFybHkg
YWxsIG9mIHRoZQogLy8gbWV0aG9kcyBleHBvc2VkIG9uIHRoaXMgaW50ZXJmYWNlIG1hcCBkaXJl
Y3RseSB0byBlbnRyeSBwb2ludHMgaW4KQEAgLTEwMiw2ICsxMDQsMTIgQEAgcHVibGljOgogICAg
ICAgICB2aXJ0dWFsIH5XZWJHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2soKSB7fQogICAgIH07
CiAKKyAgICBjbGFzcyBXZWJHcmFwaGljc1N3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9N
SVVNIHsKKyAgICBwdWJsaWM6CisgICAgICAgIHZpcnR1YWwgdm9pZCBvblN3YXBCdWZmZXJzQ29t
cGxldGUoKSA9IDA7CisgICAgICAgIHZpcnR1YWwgfldlYkdyYXBoaWNzU3dhcEJ1ZmZlcnNDb21w
bGV0ZUNhbGxiYWNrQ0hST01JVU0oKSB7fQorICAgIH07CisKICAgICAvLyBUaGlzIGRlc3RydWN0
b3IgbmVlZHMgdG8gYmUgcHVibGljIHNvIHRoYXQgdXNpbmcgY2xhc3NlcyBjYW4gZGVzdHJveSBp
bnN0YW5jZXMgaWYgaW5pdGlhbGl6YXRpb24gZmFpbHMuCiAgICAgdmlydHVhbCB+V2ViR3JhcGhp
Y3NDb250ZXh0M0QoKSB7fQogCkBAIC0xNzQsNiArMTgyLDkgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgdm9pZCB3YWl0TGF0Y2hDSFJPTUlVTShXR0MzRHVpbnQgbGF0Y2hJZCkgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBzZXRMYXRjaENIUk9NSVVNKFdHQzNEdWludCBsYXRjaElkKSA9IDA7CiAKKyAg
ICAvLyBHTF9DSFJPTUlVTV9zd2FwYnVmZmVyc19jb21wbGV0ZV9jYWxsYmFjaworICAgIHZpcnR1
YWwgdm9pZCBzZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShXZWJHcmFwaGlj
c1N3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKiBjYWxsYmFjaykge30KKwogICAg
IC8vIFRoZSBlbnRyeSBwb2ludHMgYmVsb3cgbWFwIGRpcmVjdGx5IHRvIHRoZSBPcGVuR0wgRVMg
Mi4wIEFQSS4KICAgICAvLyBTZWU6IGh0dHA6Ly93d3cua2hyb25vcy5vcmcvcmVnaXN0cnkvZ2xl
cy8KICAgICAvLyBhbmQ6IGh0dHA6Ly93d3cua2hyb25vcy5vcmcvb3BlbmdsZXMvc2RrL2RvY3Mv
bWFuLwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRXh0ZW5zaW9uczNE
Q2hyb21pdW0uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRXh0ZW5zaW9uczNEQ2hy
b21pdW0uY3BwCmluZGV4IDgxZmE1MjBmNDE0NTRjZDEzNWFiMDkwZWNmNGE1YTlhZTY1YzE5Yjku
LjEzY2RlNjc5ZmQxMWE4M2QwNmRmY2E4MzRlOTk0MzA5MmQxMWM2NzIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0V4dGVuc2lvbnMzRENocm9taXVtLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9FeHRlbnNpb25zM0RDaHJvbWl1bS5jcHAKQEAgLTE0
MCw2ICsxNDAsMTEgQEAgdm9pZCBFeHRlbnNpb25zM0RDaHJvbWl1bTo6YmluZFZlcnRleEFycmF5
T0VTKFBsYXRmb3JtM0RPYmplY3QpCiB7CiB9CiAKK3ZvaWQgRXh0ZW5zaW9uczNEQ2hyb21pdW06
OnNldFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKFBhc3NPd25QdHI8U3dhcEJ1
ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0+IGNhbGxiYWNrKQoreworICAgIG1faW50ZXJu
YWwtPnNldFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKGNhbGxiYWNrKTsKK30K
KwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJv
bWl1bS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzRENo
cm9taXVtLmNwcAppbmRleCBlZjBkODRlNTI2YWYxNjQ4YjZhZmRjOWEzMTlhODdkYmE1YTgxYjdh
Li4zOTM5MWIzMTEwOThmYTE2OWY0ZDZjOTIxNzQxNjU3YjdmMDFjM2EyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzRENocm9taXVtLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzRENocm9taXVt
LmNwcApAQCAtMTE4Niw2ICsxMTg2LDMzIEBAIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmlzR0xF
UzJDb21wbGlhbnQoKSBjb25zdAogICAgIHJldHVybiBtX2ludGVybmFsLT5pc0dMRVMyQ29tcGxp
YW50KCk7CiB9CiAKK2NsYXNzIFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXIgOiBw
dWJsaWMgV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQzRDo6V2ViR3JhcGhpY3NTd2FwQnVmZmVy
c0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIG9u
U3dhcEJ1ZmZlcnNDb21wbGV0ZSgpOworICAgIHN0YXRpYyBQYXNzT3duUHRyPFN3YXBCdWZmZXJz
Q29tcGxldGVDYWxsYmFja0FkYXB0ZXI+IGNyZWF0ZShQYXNzT3duUHRyPEV4dGVuc2lvbnMzRENo
cm9taXVtOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTT4pOworICAgIHZpcnR1
YWwgflN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXIoKSB7fQorcHJpdmF0ZToKKyAg
ICBTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyKFBhc3NPd25QdHI8RXh0ZW5zaW9u
czNEQ2hyb21pdW06OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPiBjYikgOiBt
X3N3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFjayhjYikge30KKyAgICBPd25QdHI8RXh0ZW5zaW9u
czNEQ2hyb21pdW06OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPiBtX3N3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFjazsKK307CisKK3ZvaWQgU3dhcEJ1ZmZlcnNDb21wbGV0ZUNh
bGxiYWNrQWRhcHRlcjo6b25Td2FwQnVmZmVyc0NvbXBsZXRlKCkKK3sKKyAgICBpZiAobV9zd2Fw
QnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2spCisgICAgICAgIG1fc3dhcEJ1ZmZlcnNDb21wbGV0ZUNh
bGxiYWNrLT5vblN3YXBCdWZmZXJzQ29tcGxldGUoKTsKK30KKworUGFzc093blB0cjxTd2FwQnVm
ZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyPiBTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tB
ZGFwdGVyOjpjcmVhdGUoUGFzc093blB0cjxFeHRlbnNpb25zM0RDaHJvbWl1bTo6U3dhcEJ1ZmZl
cnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0+IGNiKQoreworICAgIHJldHVybiBhZG9wdFB0cihu
ZXcgU3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcihjYikpOworfQorCit2b2lkIEdy
YXBoaWNzQ29udGV4dDNESW50ZXJuYWw6OnNldFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NI
Uk9NSVVNKFBhc3NPd25QdHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3YXBCdWZmZXJzQ29tcGxl
dGVDYWxsYmFja0NIUk9NSVVNPiBjYikKK3sKKyAgICBtX3N3YXBCdWZmZXJzQ29tcGxldGVDYWxs
YmFja0FkYXB0ZXIgPSBTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUo
Y2IpOworICAgIG1faW1wbC0+c2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0o
bV9zd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyLmdldCgpKTsKK30KKwogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oCmlu
ZGV4IGMwMjQ5MWNkY2YzMzQ3YzMwMjE0MzZiZDE1ZWFhYzk0NmE5Zjg0MDQuLjYzODE5NjdlZTA1
ZWNkMTQ1ZjkxNjZhOGNmMDc2N2YwYTk2ZTMwNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmgKQEAgLTQ1LDYgKzQ1
LDcgQEAgY2xhc3MgRXh0ZW5zaW9uczNEQ2hyb21pdW07CiBjbGFzcyBXZWJHTExheWVyQ2hyb21p
dW07CiAjZW5kaWYKIGNsYXNzIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI7Citj
bGFzcyBTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyOwogCiBjbGFzcyBHcmFwaGlj
c0NvbnRleHQzREludGVybmFsIHsKIHB1YmxpYzoKQEAgLTI3NywxMCArMjc4LDE0IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHdhaXRMYXRjaENIUk9NSVVNKEdDM0R1aW50IGxhdGNoSWQpOwogICAgIHZv
aWQgc2V0TGF0Y2hDSFJPTUlVTShHQzNEdWludCBsYXRjaElkKTsKIAorICAgIC8vIEdMX0NIUk9N
SVVNX3N3YXBidWZmZXJzX2NvbXBsZXRlX2NhbGxiYWNrCisgICAgdm9pZCBzZXRTd2FwQnVmZmVy
c0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShQYXNzT3duUHRyPEV4dGVuc2lvbnMzRENocm9taXVt
OjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTT4pOworCiBwcml2YXRlOgogICAg
IE93blB0cjxXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEPiBtX2ltcGw7CiAgICAgT3duUHRy
PEV4dGVuc2lvbnMzRENocm9taXVtPiBtX2V4dGVuc2lvbnM7CiAgICAgT3duUHRyPEdyYXBoaWNz
Q29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI+IG1fY29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI7
CisgICAgT3duUHRyPFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXI+IG1fc3dhcEJ1
ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcjsKICAgICBXZWJLaXQ6OldlYlZpZXdJbXBsKiBt
X3dlYlZpZXdJbXBsOwogICAgIGJvb2wgbV9pbml0aWFsaXplZEF2YWlsYWJsZUV4dGVuc2lvbnM7
CiAgICAgSGFzaFNldDxTdHJpbmc+IG1fZW5hYmxlZEV4dGVuc2lvbnM7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKaW5kZXggMjQzOGE5NDgxZDAxNzBjNTZiMzYz
MmEwZmIwMWQ2YzNkMDE4N2I4ZC4uMDBhNTE0NTQzODUyMzVhMDMxY2ZjYmFlYjcwYWZlOGQ5ZThh
ZTkyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcApAQCAt
NTMsNiArNTMsNyBAQAogI2luY2x1ZGUgIkVkaXRvci5oIgogI2luY2x1ZGUgIkV2ZW50SGFuZGxl
ci5oIgogI2luY2x1ZGUgIkV4dGVuc2lvbnMzRC5oIgorI2luY2x1ZGUgIkV4dGVuc2lvbnMzRENo
cm9taXVtLmgiCiAjaW5jbHVkZSAiRm9jdXNDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiRm9udERl
c2NyaXB0aW9uLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>91426</attachid>
            <date>2011-04-27 22:00:53 -0700</date>
            <delta_ts>2011-04-27 22:05:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-59626-20110427220051.patch</filename>
            <type>text/plain</type>
            <size>9688</size>
            <attacher name="Nat Duca">nduca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQ1ODIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlYjI0NTFiN2I1YjU3YjJl
NDQ5MmExN2I3N2I0M2MwNGVhYzFkYTY2Li40MDQ0MDBlZjFlMWY2MTNiNWMwOTMwMzdlYTAzNjkx
M2IwMjIwZjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMjcgIE5hdCBE
dWNhICA8bmR1Y2FAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFtjaHJvbWl1bV0gQWRkIHN3YXBCdWZmZXJzQ29tcGxldGVDYWxs
YmFjayB0byBFeHRlbnNpb25zM0RDaHJvbWl1bQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk2MjYKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9taXVtLmg6CisgICAgICAgIChXZWJDb3JlOjpFeHRl
bnNpb25zM0RDaHJvbWl1bTo6U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU06On5T
d2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSk6CisKIDIwMTEtMDQtMjEgIFZhbmdl
bGlzIEtva2tldmlzICA8dmFuZ2VsaXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IEphbWVzIFJvYmluc29uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0uaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9taXVtLmgKaW5kZXgg
YzU0MjM1MWIzMzMyOGVkMzBmZjg1NTg5ODgwZGQ2NjIzNWE1NzIwYi4uYTc4YmJkMzg0MTcwMDRi
NDY4NjM1NDFhY2UyMzEwNzdmNjdhYTg3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0uaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9FeHRlbnNpb25zM0RDaHJvbWl1
bS5oCkBAIC0zOSw2ICszOSwxMCBAQCBwdWJsaWM6CiAgICAgLy8gU3VwcG9ydGVkIGV4dGVuc2lv
bnM6CiAgICAgLy8gICBHTF9DSFJPTUlVTV9yZXNvdXJjZV9zYWZlICA6IGluZGljYXRpbmcgdGhh
dCB0ZXh0dXJlcy9yZW5kZXJidWZmZXJzIGFyZSBhbHdheXMgaW5pdGlhbGl6ZWQgYmVmb3JlIHJl
YWQvd3JpdGUuCiAgICAgLy8gICBHTF9DSFJPTUlVTV9zdHJpY3RfYXR0cmlicyA6IGluZGljYXRp
bmcgYSBHTCBlcnJvciBpcyBnZW5lcmF0ZWQgZm9yIG91dC1vZi1ib3VuZHMgYnVmZmVyIGFjY2Vz
c2VzLgorICAgIC8vICAgR0xfQ0hST01JVU1fbWFwX3N1YgorICAgIC8vICAgR0xfQ0hST01JVU1f
Y29weV90ZXh0dXJlX3RvX3BhcmVudF90ZXh0dXJlCisgICAgLy8gICBHTF9DSFJPTUlVTV9sYXRj
aAorICAgIC8vICAgR0xfQ0hST01JVU1fc3dhcGJ1ZmZlcnNfY29tcGxldGVfY2FsbGJhY2sKIAog
ICAgIC8vIEV4dGVuc2lvbnMzRCBtZXRob2RzLgogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0cyhj
b25zdCBTdHJpbmcmKTsKQEAgLTY3LDEyICs3MSwyMCBAQCBwdWJsaWM6CiAgICAgLy8gR0xfQ0hS
T01JVU1fY29weV90ZXh0dXJlX3RvX3BhcmVudF90ZXh0dXJlCiAgICAgdm9pZCBjb3B5VGV4dHVy
ZVRvUGFyZW50VGV4dHVyZUNIUk9NSVVNKHVuc2lnbmVkIHRleHR1cmUsIHVuc2lnbmVkIHBhcmVu
dFRleHR1cmUpOwogCi0gICAgLy8gTGF0Y2ggc3VwcG9ydAorICAgIC8vIEdMX0NIUk9NSVVNX2xh
dGNoCiAgICAgdm9pZCBnZXRQYXJlbnRUb0NoaWxkTGF0Y2hDSFJPTUlVTShHQzNEdWludCogbGF0
Y2hJZCk7CiAgICAgdm9pZCBnZXRDaGlsZFRvUGFyZW50TGF0Y2hDSFJPTUlVTShHQzNEdWludCog
bGF0Y2hJZCk7CiAgICAgdm9pZCB3YWl0TGF0Y2hDSFJPTUlVTShHQzNEdWludCBsYXRjaElkKTsK
ICAgICB2b2lkIHNldExhdGNoQ0hST01JVU0oR0MzRHVpbnQgbGF0Y2hJZCk7CiAKKyAgICAvLyBH
TF9DSFJPTUlVTV9zd2FwYnVmZmVyc19jb21wbGV0ZV9jYWxsYmFjaworICAgIGNsYXNzIFN3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNIHsKKyAgICBwdWJsaWM6CisgICAgICAgIHZp
cnR1YWwgdm9pZCBvblN3YXBCdWZmZXJzQ29tcGxldGUoKSA9IDA7CisgICAgICAgIHZpcnR1YWwg
flN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKCkge30KKyAgICB9OworICAgIHZv
aWQgc2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0oUGFzc093blB0cjxTd2Fw
QnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTT4pOworCiBwcml2YXRlOgogICAgIC8vIElu
c3RhbmNlcyBvZiB0aGlzIGNsYXNzIGFyZSBzdHJpY3RseSBvd25lZCBieSB0aGUgR3JhcGhpY3ND
b250ZXh0M0QgaW1wbGVtZW50YXRpb24gYW5kIGRvIG5vdAogICAgIC8vIG5lZWQgdG8gYmUgaW5z
dGFudGlhdGVkIGJ5IGFueSBvdGhlciBjb2RlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRl
eCA0ZjFjYmVkMGJiMmM3MGI4OWM2MGZhM2I1N2ZjYzYwZDZhNmY3MzI2Li4yZTczNWM4NjYyZTUx
ZTI1NjMzYTkwMmQ1ZjU1YzhkZjI3MDE0NjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI0IEBACisyMDExLTA0LTI3ICBOYXQgRHVjYSAgPG5kdWNhQGNocm9taXVtLm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbY2hy
b21pdW1dIEFkZCBzd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2sgdG8gRXh0ZW5zaW9uczNEQ2hy
b21pdW0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU5
NjI2CisKKyAgICAgICAgKiBwdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaDoKKyAgICAgICAg
KFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q6OldlYkdyYXBoaWNzU3dhcEJ1ZmZlcnNDb21w
bGV0ZUNhbGxiYWNrQ0hST01JVU06On5XZWJHcmFwaGljc1N3YXBCdWZmZXJzQ29tcGxldGVDYWxs
YmFja0NIUk9NSVVNKToKKyAgICAgICAgKFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNl
dFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKToKKyAgICAgICAgKiBzcmMvRXh0
ZW5zaW9uczNEQ2hyb21pdW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXh0ZW5zaW9uczNEQ2hy
b21pdW06OnNldFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKToKKyAgICAgICAg
KiBzcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
d2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyOjp+U3dhcEJ1ZmZlcnNDb21wbGV0ZUNh
bGxiYWNrQWRhcHRlcik6CisgICAgICAgIChXZWJDb3JlOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tBZGFwdGVyOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXI6Om9uU3dhcEJ1
ZmZlcnNDb21wbGV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tBZGFwdGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0
M0RJbnRlcm5hbDo6c2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0pOgorICAg
ICAgICAqIHNyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmg6CisgICAgICAgICogc3JjL1dl
YlZpZXdJbXBsLmNwcDoKKwogMjAxMS0wNC0yMSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0
Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaCBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmgKaW5kZXggMmQ3
YjBhNTU5ZWU5YjNjYWVhYjczN2JjMGE5MjQ2ZGM3ZjRjOTZjZi4uYzYyYmY5ZjFhNTQxNGZjNjAy
NTY5NmU3OWQ0ZWQ5NzI2MzllOTY4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3B1YmxpYy9XZWJHcmFwaGljc0NvbnRleHQzRC5oCkBAIC0xMDIsNiArMTAyLDEyIEBAIHB1
YmxpYzoKICAgICAgICAgdmlydHVhbCB+V2ViR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrKCkg
e30KICAgICB9OwogCisgICAgY2xhc3MgV2ViR3JhcGhpY3NTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tDSFJPTUlVTSB7CisgICAgcHVibGljOgorICAgICAgICB2aXJ0dWFsIHZvaWQgb25Td2Fw
QnVmZmVyc0NvbXBsZXRlKCkgPSAwOworICAgICAgICB2aXJ0dWFsIH5XZWJHcmFwaGljc1N3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKCkge30KKyAgICB9OworCiAgICAgLy8gVGhp
cyBkZXN0cnVjdG9yIG5lZWRzIHRvIGJlIHB1YmxpYyBzbyB0aGF0IHVzaW5nIGNsYXNzZXMgY2Fu
IGRlc3Ryb3kgaW5zdGFuY2VzIGlmIGluaXRpYWxpemF0aW9uIGZhaWxzLgogICAgIHZpcnR1YWwg
fldlYkdyYXBoaWNzQ29udGV4dDNEKCkge30KIApAQCAtMTc0LDYgKzE4MCw5IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgd2FpdExhdGNoQ0hST01JVU0oV0dDM0R1aW50IGxhdGNoSWQpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0TGF0Y2hDSFJPTUlVTShXR0MzRHVpbnQgbGF0Y2hJZCkg
PSAwOwogCisgICAgLy8gR0xfQ0hST01JVU1fc3dhcGJ1ZmZlcnNfY29tcGxldGVfY2FsbGJhY2sK
KyAgICB2aXJ0dWFsIHZvaWQgc2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0o
V2ViR3JhcGhpY3NTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSogY2FsbGJhY2sp
IHt9CisKICAgICAvLyBUaGUgZW50cnkgcG9pbnRzIGJlbG93IG1hcCBkaXJlY3RseSB0byB0aGUg
T3BlbkdMIEVTIDIuMCBBUEkuCiAgICAgLy8gU2VlOiBodHRwOi8vd3d3Lmtocm9ub3Mub3JnL3Jl
Z2lzdHJ5L2dsZXMvCiAgICAgLy8gYW5kOiBodHRwOi8vd3d3Lmtocm9ub3Mub3JnL29wZW5nbGVz
L3Nkay9kb2NzL21hbi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0V4
dGVuc2lvbnMzRENocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0V4dGVu
c2lvbnMzRENocm9taXVtLmNwcAppbmRleCA4MWZhNTIwZjQxNDU0Y2QxMzVhYjA5MGVjZjRhNWE5
YWU2NWMxOWI5Li4xM2NkZTY3OWZkMTFhODNkMDZkZmNhODM0ZTk5NDMwOTJkMTFjNjcyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9FeHRlbnNpb25zM0RDaHJvbWl1bS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRXh0ZW5zaW9uczNEQ2hyb21pdW0u
Y3BwCkBAIC0xNDAsNiArMTQwLDExIEBAIHZvaWQgRXh0ZW5zaW9uczNEQ2hyb21pdW06OmJpbmRW
ZXJ0ZXhBcnJheU9FUyhQbGF0Zm9ybTNET2JqZWN0KQogewogfQogCit2b2lkIEV4dGVuc2lvbnMz
RENocm9taXVtOjpzZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShQYXNzT3du
UHRyPFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPiBjYWxsYmFjaykKK3sKKyAg
ICBtX2ludGVybmFsLT5zZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShjYWxs
YmFjayk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShX
RUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29u
dGV4dDNEQ2hyb21pdW0uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3ND
b250ZXh0M0RDaHJvbWl1bS5jcHAKaW5kZXggZWYwZDg0ZTUyNmFmMTY0OGI2YWZkYzlhMzE5YTg3
ZGJhNWE4MWI3YS4uOTRiZDMwY2NmMDA0OThhM2JhMTI0MjJkMDE0ZmZiNDc0NGI5ZTFkOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJv
bWl1bS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0
M0RDaHJvbWl1bS5jcHAKQEAgLTkzNyw2ICs5MzcsOCBAQCBHcmFwaGljc0NvbnRleHQzRDo6fkdy
YXBoaWNzQ29udGV4dDNEKCkKICAgICBXZWJHTExheWVyQ2hyb21pdW0qIGNhbnZhc0xheWVyID0g
bV9pbnRlcm5hbC0+cGxhdGZvcm1MYXllcigpOwogICAgIGlmIChjYW52YXNMYXllcikKICAgICAg
ICAgY2FudmFzTGF5ZXItPnNldENvbnRleHQoMCk7CisgICAgbV9pbnRlcm5hbC0+c2V0Q29udGV4
dExvc3RDYWxsYmFjaygwKTsKKyAgICBtX2ludGVybmFsLT5zZXRTd2FwQnVmZmVyc0NvbXBsZXRl
Q2FsbGJhY2tDSFJPTUlVTSgwKTsKIH0KIAogUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4g
R3JhcGhpY3NDb250ZXh0M0Q6OmNyZWF0ZShHcmFwaGljc0NvbnRleHQzRDo6QXR0cmlidXRlcyBh
dHRycywgSG9zdFdpbmRvdyogaG9zdFdpbmRvdywgR3JhcGhpY3NDb250ZXh0M0Q6OlJlbmRlclN0
eWxlIHJlbmRlclN0eWxlKQpAQCAtMTE4Niw2ICsxMTg4LDMzIEBAIGJvb2wgR3JhcGhpY3NDb250
ZXh0M0Q6OmlzR0xFUzJDb21wbGlhbnQoKSBjb25zdAogICAgIHJldHVybiBtX2ludGVybmFsLT5p
c0dMRVMyQ29tcGxpYW50KCk7CiB9CiAKK2NsYXNzIFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFj
a0FkYXB0ZXIgOiBwdWJsaWMgV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQzRDo6V2ViR3JhcGhp
Y3NTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSB7CitwdWJsaWM6CisgICAgdmly
dHVhbCB2b2lkIG9uU3dhcEJ1ZmZlcnNDb21wbGV0ZSgpOworICAgIHN0YXRpYyBQYXNzT3duUHRy
PFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXI+IGNyZWF0ZShQYXNzT3duUHRyPEV4
dGVuc2lvbnMzRENocm9taXVtOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTT4p
OworICAgIHZpcnR1YWwgflN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXIoKSB7fQor
cHJpdmF0ZToKKyAgICBTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyKFBhc3NPd25Q
dHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9N
SVVNPiBjYikgOiBtX3N3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFjayhjYikge30KKyAgICBPd25Q
dHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9N
SVVNPiBtX3N3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFjazsKK307CisKK3ZvaWQgU3dhcEJ1ZmZl
cnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcjo6b25Td2FwQnVmZmVyc0NvbXBsZXRlKCkKK3sKKyAg
ICBpZiAobV9zd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2spCisgICAgICAgIG1fc3dhcEJ1ZmZl
cnNDb21wbGV0ZUNhbGxiYWNrLT5vblN3YXBCdWZmZXJzQ29tcGxldGUoKTsKK30KKworUGFzc093
blB0cjxTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyPiBTd2FwQnVmZmVyc0NvbXBs
ZXRlQ2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUoUGFzc093blB0cjxFeHRlbnNpb25zM0RDaHJvbWl1
bTo6U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0+IGNiKQoreworICAgIHJldHVy
biBhZG9wdFB0cihuZXcgU3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcihjYikpOwor
fQorCit2b2lkIEdyYXBoaWNzQ29udGV4dDNESW50ZXJuYWw6OnNldFN3YXBCdWZmZXJzQ29tcGxl
dGVDYWxsYmFja0NIUk9NSVVNKFBhc3NPd25QdHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPiBjYikKK3sKKyAgICBtX3N3YXBCdWZmZXJz
Q29tcGxldGVDYWxsYmFja0FkYXB0ZXIgPSBTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFw
dGVyOjpjcmVhdGUoY2IpOworICAgIG1faW1wbC0+c2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxi
YWNrQ0hST01JVU0obV9zd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyLmdldCgpKTsK
K30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJ
bnRlcm5hbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJ
bnRlcm5hbC5oCmluZGV4IGMwMjQ5MWNkY2YzMzQ3YzMwMjE0MzZiZDE1ZWFhYzk0NmE5Zjg0MDQu
LjYzODE5NjdlZTA1ZWNkMTQ1ZjkxNjZhOGNmMDc2N2YwYTk2ZTMwNzAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmgK
QEAgLTQ1LDYgKzQ1LDcgQEAgY2xhc3MgRXh0ZW5zaW9uczNEQ2hyb21pdW07CiBjbGFzcyBXZWJH
TExheWVyQ2hyb21pdW07CiAjZW5kaWYKIGNsYXNzIEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFj
a0FkYXB0ZXI7CitjbGFzcyBTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyOwogCiBj
bGFzcyBHcmFwaGljc0NvbnRleHQzREludGVybmFsIHsKIHB1YmxpYzoKQEAgLTI3NywxMCArMjc4
LDE0IEBAIHB1YmxpYzoKICAgICB2b2lkIHdhaXRMYXRjaENIUk9NSVVNKEdDM0R1aW50IGxhdGNo
SWQpOwogICAgIHZvaWQgc2V0TGF0Y2hDSFJPTUlVTShHQzNEdWludCBsYXRjaElkKTsKIAorICAg
IC8vIEdMX0NIUk9NSVVNX3N3YXBidWZmZXJzX2NvbXBsZXRlX2NhbGxiYWNrCisgICAgdm9pZCBz
ZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShQYXNzT3duUHRyPEV4dGVuc2lv
bnMzRENocm9taXVtOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTT4pOworCiBw
cml2YXRlOgogICAgIE93blB0cjxXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEPiBtX2ltcGw7
CiAgICAgT3duUHRyPEV4dGVuc2lvbnMzRENocm9taXVtPiBtX2V4dGVuc2lvbnM7CiAgICAgT3du
UHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI+IG1fY29udGV4dExvc3RDYWxs
YmFja0FkYXB0ZXI7CisgICAgT3duUHRyPFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0
ZXI+IG1fc3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcjsKICAgICBXZWJLaXQ6Oldl
YlZpZXdJbXBsKiBtX3dlYlZpZXdJbXBsOwogICAgIGJvb2wgbV9pbml0aWFsaXplZEF2YWlsYWJs
ZUV4dGVuc2lvbnM7CiAgICAgSGFzaFNldDxTdHJpbmc+IG1fZW5hYmxlZEV4dGVuc2lvbnM7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>91427</attachid>
            <date>2011-04-27 22:06:00 -0700</date>
            <delta_ts>2011-04-28 15:54:48 -0700</delta_ts>
            <desc>Ah, thats why extensions3dchromium was included.</desc>
            <filename>bug-59626-20110427220559.patch</filename>
            <type>text/plain</type>
            <size>9900</size>
            <attacher name="Nat Duca">nduca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQ1ODIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlYjI0NTFiN2I1YjU3YjJl
NDQ5MmExN2I3N2I0M2MwNGVhYzFkYTY2Li40MDQ0MDBlZjFlMWY2MTNiNWMwOTMwMzdlYTAzNjkx
M2IwMjIwZjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMjcgIE5hdCBE
dWNhICA8bmR1Y2FAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFtjaHJvbWl1bV0gQWRkIHN3YXBCdWZmZXJzQ29tcGxldGVDYWxs
YmFjayB0byBFeHRlbnNpb25zM0RDaHJvbWl1bQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk2MjYKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9taXVtLmg6CisgICAgICAgIChXZWJDb3JlOjpFeHRl
bnNpb25zM0RDaHJvbWl1bTo6U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU06On5T
d2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSk6CisKIDIwMTEtMDQtMjEgIFZhbmdl
bGlzIEtva2tldmlzICA8dmFuZ2VsaXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IEphbWVzIFJvYmluc29uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0uaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9taXVtLmgKaW5kZXgg
YzU0MjM1MWIzMzMyOGVkMzBmZjg1NTg5ODgwZGQ2NjIzNWE1NzIwYi4uYTc4YmJkMzg0MTcwMDRi
NDY4NjM1NDFhY2UyMzEwNzdmNjdhYTg3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0uaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9FeHRlbnNpb25zM0RDaHJvbWl1
bS5oCkBAIC0zOSw2ICszOSwxMCBAQCBwdWJsaWM6CiAgICAgLy8gU3VwcG9ydGVkIGV4dGVuc2lv
bnM6CiAgICAgLy8gICBHTF9DSFJPTUlVTV9yZXNvdXJjZV9zYWZlICA6IGluZGljYXRpbmcgdGhh
dCB0ZXh0dXJlcy9yZW5kZXJidWZmZXJzIGFyZSBhbHdheXMgaW5pdGlhbGl6ZWQgYmVmb3JlIHJl
YWQvd3JpdGUuCiAgICAgLy8gICBHTF9DSFJPTUlVTV9zdHJpY3RfYXR0cmlicyA6IGluZGljYXRp
bmcgYSBHTCBlcnJvciBpcyBnZW5lcmF0ZWQgZm9yIG91dC1vZi1ib3VuZHMgYnVmZmVyIGFjY2Vz
c2VzLgorICAgIC8vICAgR0xfQ0hST01JVU1fbWFwX3N1YgorICAgIC8vICAgR0xfQ0hST01JVU1f
Y29weV90ZXh0dXJlX3RvX3BhcmVudF90ZXh0dXJlCisgICAgLy8gICBHTF9DSFJPTUlVTV9sYXRj
aAorICAgIC8vICAgR0xfQ0hST01JVU1fc3dhcGJ1ZmZlcnNfY29tcGxldGVfY2FsbGJhY2sKIAog
ICAgIC8vIEV4dGVuc2lvbnMzRCBtZXRob2RzLgogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0cyhj
b25zdCBTdHJpbmcmKTsKQEAgLTY3LDEyICs3MSwyMCBAQCBwdWJsaWM6CiAgICAgLy8gR0xfQ0hS
T01JVU1fY29weV90ZXh0dXJlX3RvX3BhcmVudF90ZXh0dXJlCiAgICAgdm9pZCBjb3B5VGV4dHVy
ZVRvUGFyZW50VGV4dHVyZUNIUk9NSVVNKHVuc2lnbmVkIHRleHR1cmUsIHVuc2lnbmVkIHBhcmVu
dFRleHR1cmUpOwogCi0gICAgLy8gTGF0Y2ggc3VwcG9ydAorICAgIC8vIEdMX0NIUk9NSVVNX2xh
dGNoCiAgICAgdm9pZCBnZXRQYXJlbnRUb0NoaWxkTGF0Y2hDSFJPTUlVTShHQzNEdWludCogbGF0
Y2hJZCk7CiAgICAgdm9pZCBnZXRDaGlsZFRvUGFyZW50TGF0Y2hDSFJPTUlVTShHQzNEdWludCog
bGF0Y2hJZCk7CiAgICAgdm9pZCB3YWl0TGF0Y2hDSFJPTUlVTShHQzNEdWludCBsYXRjaElkKTsK
ICAgICB2b2lkIHNldExhdGNoQ0hST01JVU0oR0MzRHVpbnQgbGF0Y2hJZCk7CiAKKyAgICAvLyBH
TF9DSFJPTUlVTV9zd2FwYnVmZmVyc19jb21wbGV0ZV9jYWxsYmFjaworICAgIGNsYXNzIFN3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNIHsKKyAgICBwdWJsaWM6CisgICAgICAgIHZp
cnR1YWwgdm9pZCBvblN3YXBCdWZmZXJzQ29tcGxldGUoKSA9IDA7CisgICAgICAgIHZpcnR1YWwg
flN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKCkge30KKyAgICB9OworICAgIHZv
aWQgc2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0oUGFzc093blB0cjxTd2Fw
QnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTT4pOworCiBwcml2YXRlOgogICAgIC8vIElu
c3RhbmNlcyBvZiB0aGlzIGNsYXNzIGFyZSBzdHJpY3RseSBvd25lZCBieSB0aGUgR3JhcGhpY3ND
b250ZXh0M0QgaW1wbGVtZW50YXRpb24gYW5kIGRvIG5vdAogICAgIC8vIG5lZWQgdG8gYmUgaW5z
dGFudGlhdGVkIGJ5IGFueSBvdGhlciBjb2RlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRl
eCA0ZjFjYmVkMGJiMmM3MGI4OWM2MGZhM2I1N2ZjYzYwZDZhNmY3MzI2Li4yZTczNWM4NjYyZTUx
ZTI1NjMzYTkwMmQ1ZjU1YzhkZjI3MDE0NjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI0IEBACisyMDExLTA0LTI3ICBOYXQgRHVjYSAgPG5kdWNhQGNocm9taXVtLm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbY2hy
b21pdW1dIEFkZCBzd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2sgdG8gRXh0ZW5zaW9uczNEQ2hy
b21pdW0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU5
NjI2CisKKyAgICAgICAgKiBwdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaDoKKyAgICAgICAg
KFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q6OldlYkdyYXBoaWNzU3dhcEJ1ZmZlcnNDb21w
bGV0ZUNhbGxiYWNrQ0hST01JVU06On5XZWJHcmFwaGljc1N3YXBCdWZmZXJzQ29tcGxldGVDYWxs
YmFja0NIUk9NSVVNKToKKyAgICAgICAgKFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q6OnNl
dFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKToKKyAgICAgICAgKiBzcmMvRXh0
ZW5zaW9uczNEQ2hyb21pdW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXh0ZW5zaW9uczNEQ2hy
b21pdW06OnNldFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKToKKyAgICAgICAg
KiBzcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
d2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyOjp+U3dhcEJ1ZmZlcnNDb21wbGV0ZUNh
bGxiYWNrQWRhcHRlcik6CisgICAgICAgIChXZWJDb3JlOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tBZGFwdGVyOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXI6Om9uU3dhcEJ1
ZmZlcnNDb21wbGV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tBZGFwdGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0
M0RJbnRlcm5hbDo6c2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0pOgorICAg
ICAgICAqIHNyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmg6CisgICAgICAgICogc3JjL1dl
YlZpZXdJbXBsLmNwcDoKKwogMjAxMS0wNC0yMSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0
Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaCBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmgKaW5kZXggMmQ3
YjBhNTU5ZWU5YjNjYWVhYjczN2JjMGE5MjQ2ZGM3ZjRjOTZjZi4uYzYyYmY5ZjFhNTQxNGZjNjAy
NTY5NmU3OWQ0ZWQ5NzI2MzllOTY4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3B1YmxpYy9XZWJHcmFwaGljc0NvbnRleHQzRC5oCkBAIC0xMDIsNiArMTAyLDEyIEBAIHB1
YmxpYzoKICAgICAgICAgdmlydHVhbCB+V2ViR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrKCkg
e30KICAgICB9OwogCisgICAgY2xhc3MgV2ViR3JhcGhpY3NTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tDSFJPTUlVTSB7CisgICAgcHVibGljOgorICAgICAgICB2aXJ0dWFsIHZvaWQgb25Td2Fw
QnVmZmVyc0NvbXBsZXRlKCkgPSAwOworICAgICAgICB2aXJ0dWFsIH5XZWJHcmFwaGljc1N3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKCkge30KKyAgICB9OworCiAgICAgLy8gVGhp
cyBkZXN0cnVjdG9yIG5lZWRzIHRvIGJlIHB1YmxpYyBzbyB0aGF0IHVzaW5nIGNsYXNzZXMgY2Fu
IGRlc3Ryb3kgaW5zdGFuY2VzIGlmIGluaXRpYWxpemF0aW9uIGZhaWxzLgogICAgIHZpcnR1YWwg
fldlYkdyYXBoaWNzQ29udGV4dDNEKCkge30KIApAQCAtMTc0LDYgKzE4MCw5IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgd2FpdExhdGNoQ0hST01JVU0oV0dDM0R1aW50IGxhdGNoSWQpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0TGF0Y2hDSFJPTUlVTShXR0MzRHVpbnQgbGF0Y2hJZCkg
PSAwOwogCisgICAgLy8gR0xfQ0hST01JVU1fc3dhcGJ1ZmZlcnNfY29tcGxldGVfY2FsbGJhY2sK
KyAgICB2aXJ0dWFsIHZvaWQgc2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0o
V2ViR3JhcGhpY3NTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSogY2FsbGJhY2sp
IHt9CisKICAgICAvLyBUaGUgZW50cnkgcG9pbnRzIGJlbG93IG1hcCBkaXJlY3RseSB0byB0aGUg
T3BlbkdMIEVTIDIuMCBBUEkuCiAgICAgLy8gU2VlOiBodHRwOi8vd3d3Lmtocm9ub3Mub3JnL3Jl
Z2lzdHJ5L2dsZXMvCiAgICAgLy8gYW5kOiBodHRwOi8vd3d3Lmtocm9ub3Mub3JnL29wZW5nbGVz
L3Nkay9kb2NzL21hbi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0V4
dGVuc2lvbnMzRENocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0V4dGVu
c2lvbnMzRENocm9taXVtLmNwcAppbmRleCA4MWZhNTIwZjQxNDU0Y2QxMzVhYjA5MGVjZjRhNWE5
YWU2NWMxOWI5Li4xM2NkZTY3OWZkMTFhODNkMDZkZmNhODM0ZTk5NDMwOTJkMTFjNjcyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9FeHRlbnNpb25zM0RDaHJvbWl1bS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRXh0ZW5zaW9uczNEQ2hyb21pdW0u
Y3BwCkBAIC0xNDAsNiArMTQwLDExIEBAIHZvaWQgRXh0ZW5zaW9uczNEQ2hyb21pdW06OmJpbmRW
ZXJ0ZXhBcnJheU9FUyhQbGF0Zm9ybTNET2JqZWN0KQogewogfQogCit2b2lkIEV4dGVuc2lvbnMz
RENocm9taXVtOjpzZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShQYXNzT3du
UHRyPFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPiBjYWxsYmFjaykKK3sKKyAg
ICBtX2ludGVybmFsLT5zZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShjYWxs
YmFjayk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShX
RUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29u
dGV4dDNEQ2hyb21pdW0uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3ND
b250ZXh0M0RDaHJvbWl1bS5jcHAKaW5kZXggZWYwZDg0ZTUyNmFmMTY0OGI2YWZkYzlhMzE5YTg3
ZGJhNWE4MWI3YS4uOTRiZDMwY2NmMDA0OThhM2JhMTI0MjJkMDE0ZmZiNDc0NGI5ZTFkOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJv
bWl1bS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0
M0RDaHJvbWl1bS5jcHAKQEAgLTkzNyw2ICs5MzcsOCBAQCBHcmFwaGljc0NvbnRleHQzRDo6fkdy
YXBoaWNzQ29udGV4dDNEKCkKICAgICBXZWJHTExheWVyQ2hyb21pdW0qIGNhbnZhc0xheWVyID0g
bV9pbnRlcm5hbC0+cGxhdGZvcm1MYXllcigpOwogICAgIGlmIChjYW52YXNMYXllcikKICAgICAg
ICAgY2FudmFzTGF5ZXItPnNldENvbnRleHQoMCk7CisgICAgbV9pbnRlcm5hbC0+c2V0Q29udGV4
dExvc3RDYWxsYmFjaygwKTsKKyAgICBtX2ludGVybmFsLT5zZXRTd2FwQnVmZmVyc0NvbXBsZXRl
Q2FsbGJhY2tDSFJPTUlVTSgwKTsKIH0KIAogUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4g
R3JhcGhpY3NDb250ZXh0M0Q6OmNyZWF0ZShHcmFwaGljc0NvbnRleHQzRDo6QXR0cmlidXRlcyBh
dHRycywgSG9zdFdpbmRvdyogaG9zdFdpbmRvdywgR3JhcGhpY3NDb250ZXh0M0Q6OlJlbmRlclN0
eWxlIHJlbmRlclN0eWxlKQpAQCAtMTE4Niw2ICsxMTg4LDMzIEBAIGJvb2wgR3JhcGhpY3NDb250
ZXh0M0Q6OmlzR0xFUzJDb21wbGlhbnQoKSBjb25zdAogICAgIHJldHVybiBtX2ludGVybmFsLT5p
c0dMRVMyQ29tcGxpYW50KCk7CiB9CiAKK2NsYXNzIFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFj
a0FkYXB0ZXIgOiBwdWJsaWMgV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQzRDo6V2ViR3JhcGhp
Y3NTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSB7CitwdWJsaWM6CisgICAgdmly
dHVhbCB2b2lkIG9uU3dhcEJ1ZmZlcnNDb21wbGV0ZSgpOworICAgIHN0YXRpYyBQYXNzT3duUHRy
PFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXI+IGNyZWF0ZShQYXNzT3duUHRyPEV4
dGVuc2lvbnMzRENocm9taXVtOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTT4p
OworICAgIHZpcnR1YWwgflN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXIoKSB7fQor
cHJpdmF0ZToKKyAgICBTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyKFBhc3NPd25Q
dHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9N
SVVNPiBjYikgOiBtX3N3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFjayhjYikge30KKyAgICBPd25Q
dHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9N
SVVNPiBtX3N3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFjazsKK307CisKK3ZvaWQgU3dhcEJ1ZmZl
cnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcjo6b25Td2FwQnVmZmVyc0NvbXBsZXRlKCkKK3sKKyAg
ICBpZiAobV9zd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2spCisgICAgICAgIG1fc3dhcEJ1ZmZl
cnNDb21wbGV0ZUNhbGxiYWNrLT5vblN3YXBCdWZmZXJzQ29tcGxldGUoKTsKK30KKworUGFzc093
blB0cjxTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyPiBTd2FwQnVmZmVyc0NvbXBs
ZXRlQ2FsbGJhY2tBZGFwdGVyOjpjcmVhdGUoUGFzc093blB0cjxFeHRlbnNpb25zM0RDaHJvbWl1
bTo6U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0+IGNiKQoreworICAgIHJldHVy
biBhZG9wdFB0cihuZXcgU3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcihjYikpOwor
fQorCit2b2lkIEdyYXBoaWNzQ29udGV4dDNESW50ZXJuYWw6OnNldFN3YXBCdWZmZXJzQ29tcGxl
dGVDYWxsYmFja0NIUk9NSVVNKFBhc3NPd25QdHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPiBjYikKK3sKKyAgICBtX3N3YXBCdWZmZXJz
Q29tcGxldGVDYWxsYmFja0FkYXB0ZXIgPSBTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFw
dGVyOjpjcmVhdGUoY2IpOworICAgIG1faW1wbC0+c2V0U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxi
YWNrQ0hST01JVU0obV9zd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyLmdldCgpKTsK
K30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJ
bnRlcm5hbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJ
bnRlcm5hbC5oCmluZGV4IGMwMjQ5MWNkY2YzMzQ3YzMwMjE0MzZiZDE1ZWFhYzk0NmE5Zjg0MDQu
LjQ1MjBjNjJiNWEwNzdiNWQzZWVhMGQ0ZjlkMTFhYTVkYmUzZDI2NWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmgK
QEAgLTI2LDYgKzI2LDcgQEAKICNpZm5kZWYgR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbF9oCiAj
ZGVmaW5lIEdyYXBoaWNzQ29udGV4dDNESW50ZXJuYWxfaAogCisjaW5jbHVkZSAiRXh0ZW5zaW9u
czNEQ2hyb21pdW0uaCIKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5oIgogI2luY2x1ZGUg
PHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL093blB0ci5oPgpAQCAtNDUsNiArNDYsNyBA
QCBjbGFzcyBFeHRlbnNpb25zM0RDaHJvbWl1bTsKIGNsYXNzIFdlYkdMTGF5ZXJDaHJvbWl1bTsK
ICNlbmRpZgogY2xhc3MgR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjsKK2NsYXNz
IFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXI7CiAKIGNsYXNzIEdyYXBoaWNzQ29u
dGV4dDNESW50ZXJuYWwgewogcHVibGljOgpAQCAtMjc3LDEwICsyNzksMTQgQEAgcHVibGljOgog
ICAgIHZvaWQgd2FpdExhdGNoQ0hST01JVU0oR0MzRHVpbnQgbGF0Y2hJZCk7CiAgICAgdm9pZCBz
ZXRMYXRjaENIUk9NSVVNKEdDM0R1aW50IGxhdGNoSWQpOwogCisgICAgLy8gR0xfQ0hST01JVU1f
c3dhcGJ1ZmZlcnNfY29tcGxldGVfY2FsbGJhY2sKKyAgICB2b2lkIHNldFN3YXBCdWZmZXJzQ29t
cGxldGVDYWxsYmFja0NIUk9NSVVNKFBhc3NPd25QdHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3
YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPik7CisKIHByaXZhdGU6CiAgICAgT3du
UHRyPFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0M0Q+IG1faW1wbDsKICAgICBPd25QdHI8RXh0
ZW5zaW9uczNEQ2hyb21pdW0+IG1fZXh0ZW5zaW9uczsKICAgICBPd25QdHI8R3JhcGhpY3NDb250
ZXh0TG9zdENhbGxiYWNrQWRhcHRlcj4gbV9jb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcjsKKyAg
ICBPd25QdHI8U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcj4gbV9zd2FwQnVmZmVy
c0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyOwogICAgIFdlYktpdDo6V2ViVmlld0ltcGwqIG1fd2Vi
Vmlld0ltcGw7CiAgICAgYm9vbCBtX2luaXRpYWxpemVkQXZhaWxhYmxlRXh0ZW5zaW9uczsKICAg
ICBIYXNoU2V0PFN0cmluZz4gbV9lbmFibGVkRXh0ZW5zaW9uczsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>91573</attachid>
            <date>2011-04-28 15:54:51 -0700</date>
            <delta_ts>2011-04-28 20:19:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-59626-20110428155450.patch</filename>
            <type>text/plain</type>
            <size>10735</size>
            <attacher name="Nat Duca">nduca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQ1ODIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlYjI0NTFiN2I1YjU3YjJl
NDQ5MmExN2I3N2I0M2MwNGVhYzFkYTY2Li40MDQ0MDBlZjFlMWY2MTNiNWMwOTMwMzdlYTAzNjkx
M2IwMjIwZjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMjcgIE5hdCBE
dWNhICA8bmR1Y2FAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFtjaHJvbWl1bV0gQWRkIHN3YXBCdWZmZXJzQ29tcGxldGVDYWxs
YmFjayB0byBFeHRlbnNpb25zM0RDaHJvbWl1bQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk2MjYKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9taXVtLmg6CisgICAgICAgIChXZWJDb3JlOjpFeHRl
bnNpb25zM0RDaHJvbWl1bTo6U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU06On5T
d2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSk6CisKIDIwMTEtMDQtMjEgIFZhbmdl
bGlzIEtva2tldmlzICA8dmFuZ2VsaXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IEphbWVzIFJvYmluc29uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0uaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9taXVtLmgKaW5kZXgg
YzU0MjM1MWIzMzMyOGVkMzBmZjg1NTg5ODgwZGQ2NjIzNWE1NzIwYi4uYzZlMGM2NjhlMmFkZTY0
NWEzNjIxM2MyOWEwMzljM2ZkZThjMGI3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0uaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9FeHRlbnNpb25zM0RDaHJvbWl1
bS5oCkBAIC0zOSw2ICszOSwxMCBAQCBwdWJsaWM6CiAgICAgLy8gU3VwcG9ydGVkIGV4dGVuc2lv
bnM6CiAgICAgLy8gICBHTF9DSFJPTUlVTV9yZXNvdXJjZV9zYWZlICA6IGluZGljYXRpbmcgdGhh
dCB0ZXh0dXJlcy9yZW5kZXJidWZmZXJzIGFyZSBhbHdheXMgaW5pdGlhbGl6ZWQgYmVmb3JlIHJl
YWQvd3JpdGUuCiAgICAgLy8gICBHTF9DSFJPTUlVTV9zdHJpY3RfYXR0cmlicyA6IGluZGljYXRp
bmcgYSBHTCBlcnJvciBpcyBnZW5lcmF0ZWQgZm9yIG91dC1vZi1ib3VuZHMgYnVmZmVyIGFjY2Vz
c2VzLgorICAgIC8vICAgR0xfQ0hST01JVU1fbWFwX3N1YgorICAgIC8vICAgR0xfQ0hST01JVU1f
Y29weV90ZXh0dXJlX3RvX3BhcmVudF90ZXh0dXJlCisgICAgLy8gICBHTF9DSFJPTUlVTV9sYXRj
aAorICAgIC8vICAgR0xfQ0hST01JVU1fc3dhcGJ1ZmZlcnNfY29tcGxldGVfY2FsbGJhY2sKIAog
ICAgIC8vIEV4dGVuc2lvbnMzRCBtZXRob2RzLgogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0cyhj
b25zdCBTdHJpbmcmKTsKQEAgLTY3LDEyICs3MSwyMCBAQCBwdWJsaWM6CiAgICAgLy8gR0xfQ0hS
T01JVU1fY29weV90ZXh0dXJlX3RvX3BhcmVudF90ZXh0dXJlCiAgICAgdm9pZCBjb3B5VGV4dHVy
ZVRvUGFyZW50VGV4dHVyZUNIUk9NSVVNKHVuc2lnbmVkIHRleHR1cmUsIHVuc2lnbmVkIHBhcmVu
dFRleHR1cmUpOwogCi0gICAgLy8gTGF0Y2ggc3VwcG9ydAorICAgIC8vIEdMX0NIUk9NSVVNX2xh
dGNoCiAgICAgdm9pZCBnZXRQYXJlbnRUb0NoaWxkTGF0Y2hDSFJPTUlVTShHQzNEdWludCogbGF0
Y2hJZCk7CiAgICAgdm9pZCBnZXRDaGlsZFRvUGFyZW50TGF0Y2hDSFJPTUlVTShHQzNEdWludCog
bGF0Y2hJZCk7CiAgICAgdm9pZCB3YWl0TGF0Y2hDSFJPTUlVTShHQzNEdWludCBsYXRjaElkKTsK
ICAgICB2b2lkIHNldExhdGNoQ0hST01JVU0oR0MzRHVpbnQgbGF0Y2hJZCk7CiAKKyAgICAvLyBH
TF9DSFJPTUlVTV9zd2FwYnVmZmVyc19jb21wbGV0ZV9jYWxsYmFjaworICAgIGNsYXNzIFN3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNIHsKKyAgICBwdWJsaWM6CisgICAgICAgIHZp
cnR1YWwgdm9pZCBvblN3YXBCdWZmZXJzQ29tcGxldGUoKSA9IDA7CisgICAgICAgIHZpcnR1YWwg
flN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKCkgeyB9CisgICAgfTsKKyAgICB2
b2lkIHNldFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKFBhc3NPd25QdHI8U3dh
cEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0+KTsKKwogcHJpdmF0ZToKICAgICAvLyBJ
bnN0YW5jZXMgb2YgdGhpcyBjbGFzcyBhcmUgc3RyaWN0bHkgb3duZWQgYnkgdGhlIEdyYXBoaWNz
Q29udGV4dDNEIGltcGxlbWVudGF0aW9uIGFuZCBkbyBub3QKICAgICAvLyBuZWVkIHRvIGJlIGlu
c3RhbnRpYXRlZCBieSBhbnkgb3RoZXIgY29kZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5k
ZXggNGYxY2JlZDBiYjJjNzBiODljNjBmYTNiNTdmY2M2MGQ2YTZmNzMyNi4uMmU3MzVjODY2MmU1
MWUyNTYzM2E5MDJkNWY1NWM4ZGYyNzAxNDY2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwyNCBAQAorMjAxMS0wNC0yNyAgTmF0IER1Y2EgIDxuZHVjYUBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW2No
cm9taXVtXSBBZGQgc3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrIHRvIEV4dGVuc2lvbnMzRENo
cm9taXVtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
OTYyNgorCisgICAgICAgICogcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmg6CisgICAgICAg
IChXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEOjpXZWJHcmFwaGljc1N3YXBCdWZmZXJzQ29t
cGxldGVDYWxsYmFja0NIUk9NSVVNOjp+V2ViR3JhcGhpY3NTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tDSFJPTUlVTSk6CisgICAgICAgIChXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEOjpz
ZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSk6CisgICAgICAgICogc3JjL0V4
dGVuc2lvbnMzRENocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV4dGVuc2lvbnMzRENo
cm9taXVtOjpzZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTSk6CisgICAgICAg
ICogc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcjo6flN3YXBCdWZmZXJzQ29tcGxldGVD
YWxsYmFja0FkYXB0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U3dhcEJ1ZmZlcnNDb21wbGV0ZUNh
bGxiYWNrQWRhcHRlcjo6U3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcik6CisgICAg
ICAgIChXZWJDb3JlOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyOjpvblN3YXBC
dWZmZXJzQ29tcGxldGUpOgorICAgICAgICAoV2ViQ29yZTo6U3dhcEJ1ZmZlcnNDb21wbGV0ZUNh
bGxiYWNrQWRhcHRlcjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dDNESW50ZXJuYWw6OnNldFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKToKKyAg
ICAgICAgKiBzcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oOgorICAgICAgICAqIHNyYy9X
ZWJWaWV3SW1wbC5jcHA6CisKIDIwMTEtMDQtMjEgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmggYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJHcmFwaGljc0NvbnRleHQzRC5oCmluZGV4IDJk
N2IwYTU1OWVlOWIzY2FlYWI3MzdiYzBhOTI0NmRjN2Y0Yzk2Y2YuLjhkNWViMTBmZDgxMWEwMWE1
ZWFhMDQ5NzRhOThkZWRiYWZjZmY0ZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaApAQCAtOTksNyArOTksMTMgQEAgcHVi
bGljOgogICAgIGNsYXNzIFdlYkdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFjayB7CiAgICAgcHVi
bGljOgogICAgICAgICB2aXJ0dWFsIHZvaWQgb25Db250ZXh0TG9zdCgpID0gMDsKLSAgICAgICAg
dmlydHVhbCB+V2ViR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrKCkge30KKyAgICAgICAgdmly
dHVhbCB+V2ViR3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrKCkgeyB9CisgICAgfTsKKworICAg
IGNsYXNzIFdlYkdyYXBoaWNzU3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQ0hST01JVU0gewor
ICAgIHB1YmxpYzoKKyAgICAgICAgdmlydHVhbCB2b2lkIG9uU3dhcEJ1ZmZlcnNDb21wbGV0ZSgp
ID0gMDsKKyAgICAgICAgdmlydHVhbCB+V2ViR3JhcGhpY3NTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tDSFJPTUlVTSgpIHsgfQogICAgIH07CiAKICAgICAvLyBUaGlzIGRlc3RydWN0b3IgbmVl
ZHMgdG8gYmUgcHVibGljIHNvIHRoYXQgdXNpbmcgY2xhc3NlcyBjYW4gZGVzdHJveSBpbnN0YW5j
ZXMgaWYgaW5pdGlhbGl6YXRpb24gZmFpbHMuCkBAIC0xNzQsNiArMTgwLDkgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCB3YWl0TGF0Y2hDSFJPTUlVTShXR0MzRHVpbnQgbGF0Y2hJZCkgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRMYXRjaENIUk9NSVVNKFdHQzNEdWludCBsYXRjaElkKSA9
IDA7CiAKKyAgICAvLyBHTF9DSFJPTUlVTV9zd2FwYnVmZmVyc19jb21wbGV0ZV9jYWxsYmFjawor
ICAgIHZpcnR1YWwgdm9pZCBzZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShX
ZWJHcmFwaGljc1N3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKiBjYWxsYmFjaykg
eyB9CisKICAgICAvLyBUaGUgZW50cnkgcG9pbnRzIGJlbG93IG1hcCBkaXJlY3RseSB0byB0aGUg
T3BlbkdMIEVTIDIuMCBBUEkuCiAgICAgLy8gU2VlOiBodHRwOi8vd3d3Lmtocm9ub3Mub3JnL3Jl
Z2lzdHJ5L2dsZXMvCiAgICAgLy8gYW5kOiBodHRwOi8vd3d3Lmtocm9ub3Mub3JnL29wZW5nbGVz
L3Nkay9kb2NzL21hbi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0V4
dGVuc2lvbnMzRENocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0V4dGVu
c2lvbnMzRENocm9taXVtLmNwcAppbmRleCA4MWZhNTIwZjQxNDU0Y2QxMzVhYjA5MGVjZjRhNWE5
YWU2NWMxOWI5Li4xM2NkZTY3OWZkMTFhODNkMDZkZmNhODM0ZTk5NDMwOTJkMTFjNjcyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9FeHRlbnNpb25zM0RDaHJvbWl1bS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRXh0ZW5zaW9uczNEQ2hyb21pdW0u
Y3BwCkBAIC0xNDAsNiArMTQwLDExIEBAIHZvaWQgRXh0ZW5zaW9uczNEQ2hyb21pdW06OmJpbmRW
ZXJ0ZXhBcnJheU9FUyhQbGF0Zm9ybTNET2JqZWN0KQogewogfQogCit2b2lkIEV4dGVuc2lvbnMz
RENocm9taXVtOjpzZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShQYXNzT3du
UHRyPFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPiBjYWxsYmFjaykKK3sKKyAg
ICBtX2ludGVybmFsLT5zZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShjYWxs
YmFjayk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShX
RUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29u
dGV4dDNEQ2hyb21pdW0uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3ND
b250ZXh0M0RDaHJvbWl1bS5jcHAKaW5kZXggZWYwZDg0ZTUyNmFmMTY0OGI2YWZkYzlhMzE5YTg3
ZGJhNWE4MWI3YS4uN2Y5MmEyYTY0NWQ1YzFjYzVhYjA0ZWQzZTNlZWZjNDM5YzNlMDU2MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJv
bWl1bS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0
M0RDaHJvbWl1bS5jcHAKQEAgLTkzNyw2ICs5MzcsOCBAQCBHcmFwaGljc0NvbnRleHQzRDo6fkdy
YXBoaWNzQ29udGV4dDNEKCkKICAgICBXZWJHTExheWVyQ2hyb21pdW0qIGNhbnZhc0xheWVyID0g
bV9pbnRlcm5hbC0+cGxhdGZvcm1MYXllcigpOwogICAgIGlmIChjYW52YXNMYXllcikKICAgICAg
ICAgY2FudmFzTGF5ZXItPnNldENvbnRleHQoMCk7CisgICAgbV9pbnRlcm5hbC0+c2V0Q29udGV4
dExvc3RDYWxsYmFjaygwKTsKKyAgICBtX2ludGVybmFsLT5zZXRTd2FwQnVmZmVyc0NvbXBsZXRl
Q2FsbGJhY2tDSFJPTUlVTSgwKTsKIH0KIAogUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4g
R3JhcGhpY3NDb250ZXh0M0Q6OmNyZWF0ZShHcmFwaGljc0NvbnRleHQzRDo6QXR0cmlidXRlcyBh
dHRycywgSG9zdFdpbmRvdyogaG9zdFdpbmRvdywgR3JhcGhpY3NDb250ZXh0M0Q6OlJlbmRlclN0
eWxlIHJlbmRlclN0eWxlKQpAQCAtMTE1OCw5ICsxMTYwLDkgQEAgY2xhc3MgR3JhcGhpY3NDb250
ZXh0TG9zdENhbGxiYWNrQWRhcHRlciA6IHB1YmxpYyBXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4
dDNEOjoKIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgb25Db250ZXh0TG9zdCgpOwogICAgIHN0
YXRpYyBQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI+IGNyZWF0
ZShQYXNzT3duUHRyPEdyYXBoaWNzQ29udGV4dDNEOjpDb250ZXh0TG9zdENhbGxiYWNrPik7Ci0g
ICAgdmlydHVhbCB+R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcigpIHt9CisgICAg
dmlydHVhbCB+R3JhcGhpY3NDb250ZXh0TG9zdENhbGxiYWNrQWRhcHRlcigpIHsgfQogcHJpdmF0
ZToKLSAgICBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyKFBhc3NPd25QdHI8R3Jh
cGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+IGNiKSA6IG1fY29udGV4dExvc3RD
YWxsYmFjayhjYikge30KKyAgICBHcmFwaGljc0NvbnRleHRMb3N0Q2FsbGJhY2tBZGFwdGVyKFBh
c3NPd25QdHI8R3JhcGhpY3NDb250ZXh0M0Q6OkNvbnRleHRMb3N0Q2FsbGJhY2s+IGNiKSA6IG1f
Y29udGV4dExvc3RDYWxsYmFjayhjYikgeyB9CiAgICAgT3duUHRyPEdyYXBoaWNzQ29udGV4dDNE
OjpDb250ZXh0TG9zdENhbGxiYWNrPiBtX2NvbnRleHRMb3N0Q2FsbGJhY2s7CiB9OwogCkBAIC0x
MTg2LDYgKzExODgsMzMgQEAgYm9vbCBHcmFwaGljc0NvbnRleHQzRDo6aXNHTEVTMkNvbXBsaWFu
dCgpIGNvbnN0CiAgICAgcmV0dXJuIG1faW50ZXJuYWwtPmlzR0xFUzJDb21wbGlhbnQoKTsKIH0K
IAorY2xhc3MgU3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlciA6IHB1YmxpYyBXZWJL
aXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEOjpXZWJHcmFwaGljc1N3YXBCdWZmZXJzQ29tcGxldGVD
YWxsYmFja0NIUk9NSVVNIHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgb25Td2FwQnVmZmVy
c0NvbXBsZXRlKCk7CisgICAgc3RhdGljIFBhc3NPd25QdHI8U3dhcEJ1ZmZlcnNDb21wbGV0ZUNh
bGxiYWNrQWRhcHRlcj4gY3JlYXRlKFBhc3NPd25QdHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3
YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPik7CisgICAgdmlydHVhbCB+U3dhcEJ1
ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcigpIHsgfQorcHJpdmF0ZToKKyAgICBTd2FwQnVm
ZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFwdGVyKFBhc3NPd25QdHI8RXh0ZW5zaW9uczNEQ2hyb21p
dW06OlN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNPiBjYikgOiBtX3N3YXBCdWZm
ZXJzQ29tcGxldGVDYWxsYmFjayhjYikgeyB9CisgICAgT3duUHRyPEV4dGVuc2lvbnMzRENocm9t
aXVtOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTT4gbV9zd2FwQnVmZmVyc0Nv
bXBsZXRlQ2FsbGJhY2s7Cit9OworCit2b2lkIFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0Fk
YXB0ZXI6Om9uU3dhcEJ1ZmZlcnNDb21wbGV0ZSgpCit7CisgICAgaWYgKG1fc3dhcEJ1ZmZlcnND
b21wbGV0ZUNhbGxiYWNrKQorICAgICAgICBtX3N3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFjay0+
b25Td2FwQnVmZmVyc0NvbXBsZXRlKCk7Cit9CisKK1Bhc3NPd25QdHI8U3dhcEJ1ZmZlcnNDb21w
bGV0ZUNhbGxiYWNrQWRhcHRlcj4gU3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcjo6
Y3JlYXRlKFBhc3NPd25QdHI8RXh0ZW5zaW9uczNEQ2hyb21pdW06OlN3YXBCdWZmZXJzQ29tcGxl
dGVDYWxsYmFja0NIUk9NSVVNPiBjYikKK3sKKyAgICByZXR1cm4gYWRvcHRQdHIobmV3IFN3YXBC
dWZmZXJzQ29tcGxldGVDYWxsYmFja0FkYXB0ZXIoY2IpKTsKK30KKwordm9pZCBHcmFwaGljc0Nv
bnRleHQzREludGVybmFsOjpzZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlVTShQ
YXNzT3duUHRyPEV4dGVuc2lvbnMzRENocm9taXVtOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJh
Y2tDSFJPTUlVTT4gY2IpCit7CisgICAgbV9zd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tBZGFw
dGVyID0gU3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlcjo6Y3JlYXRlKGNiKTsKKyAg
ICBtX2ltcGwtPnNldFN3YXBCdWZmZXJzQ29tcGxldGVDYWxsYmFja0NIUk9NSVVNKG1fc3dhcEJ1
ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRhcHRlci5nZXQoKSk7Cit9CisKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaCBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNESW50ZXJuYWwuaAppbmRleCBjMDI0
OTFjZGNmMzM0N2MzMDIxNDM2YmQxNWVhYWM5NDZhOWY4NDA0Li40NTIwYzYyYjVhMDc3YjVkM2Vl
YTBkNGY5ZDExYWE1ZGJlM2QyNjVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9HcmFwaGljc0NvbnRleHQzREludGVybmFsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RJbnRlcm5hbC5oCkBAIC0yNiw2ICsyNiw3IEBACiAj
aWZuZGVmIEdyYXBoaWNzQ29udGV4dDNESW50ZXJuYWxfaAogI2RlZmluZSBHcmFwaGljc0NvbnRl
eHQzREludGVybmFsX2gKIAorI2luY2x1ZGUgIkV4dGVuc2lvbnMzRENocm9taXVtLmgiCiAjaW5j
bHVkZSAiR3JhcGhpY3NDb250ZXh0M0QuaCIKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2lu
Y2x1ZGUgPHd0Zi9Pd25QdHIuaD4KQEAgLTQ1LDYgKzQ2LDcgQEAgY2xhc3MgRXh0ZW5zaW9uczNE
Q2hyb21pdW07CiBjbGFzcyBXZWJHTExheWVyQ2hyb21pdW07CiAjZW5kaWYKIGNsYXNzIEdyYXBo
aWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI7CitjbGFzcyBTd2FwQnVmZmVyc0NvbXBsZXRl
Q2FsbGJhY2tBZGFwdGVyOwogCiBjbGFzcyBHcmFwaGljc0NvbnRleHQzREludGVybmFsIHsKIHB1
YmxpYzoKQEAgLTI3NywxMCArMjc5LDE0IEBAIHB1YmxpYzoKICAgICB2b2lkIHdhaXRMYXRjaENI
Uk9NSVVNKEdDM0R1aW50IGxhdGNoSWQpOwogICAgIHZvaWQgc2V0TGF0Y2hDSFJPTUlVTShHQzNE
dWludCBsYXRjaElkKTsKIAorICAgIC8vIEdMX0NIUk9NSVVNX3N3YXBidWZmZXJzX2NvbXBsZXRl
X2NhbGxiYWNrCisgICAgdm9pZCBzZXRTd2FwQnVmZmVyc0NvbXBsZXRlQ2FsbGJhY2tDSFJPTUlV
TShQYXNzT3duUHRyPEV4dGVuc2lvbnMzRENocm9taXVtOjpTd2FwQnVmZmVyc0NvbXBsZXRlQ2Fs
bGJhY2tDSFJPTUlVTT4pOworCiBwcml2YXRlOgogICAgIE93blB0cjxXZWJLaXQ6OldlYkdyYXBo
aWNzQ29udGV4dDNEPiBtX2ltcGw7CiAgICAgT3duUHRyPEV4dGVuc2lvbnMzRENocm9taXVtPiBt
X2V4dGVuc2lvbnM7CiAgICAgT3duUHRyPEdyYXBoaWNzQ29udGV4dExvc3RDYWxsYmFja0FkYXB0
ZXI+IG1fY29udGV4dExvc3RDYWxsYmFja0FkYXB0ZXI7CisgICAgT3duUHRyPFN3YXBCdWZmZXJz
Q29tcGxldGVDYWxsYmFja0FkYXB0ZXI+IG1fc3dhcEJ1ZmZlcnNDb21wbGV0ZUNhbGxiYWNrQWRh
cHRlcjsKICAgICBXZWJLaXQ6OldlYlZpZXdJbXBsKiBtX3dlYlZpZXdJbXBsOwogICAgIGJvb2wg
bV9pbml0aWFsaXplZEF2YWlsYWJsZUV4dGVuc2lvbnM7CiAgICAgSGFzaFNldDxTdHJpbmc+IG1f
ZW5hYmxlZEV4dGVuc2lvbnM7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>