<?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>103555</bug_id>
          
          <creation_ts>2012-11-28 13:07:47 -0800</creation_ts>
          <short_desc>Make LazyDecodingPixelRef inherit from skia::LazyPixelRef so that cc thread can access it</short_desc>
          <delta_ts>2012-12-06 14:30:27 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>103701</dependson>
          <blocked>99790</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Min Qin">qinmin</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cc-bugs</cc>
    
    <cc>hclam</cc>
    
    <cc>jamesr</cc>
    
    <cc>levin+threading</cc>
    
    <cc>nduca</cc>
    
    <cc>senorblanco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>778252</commentid>
    <comment_count>0</comment_count>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-11-28 13:07:47 -0800</bug_when>
    <thetext>Make LazyDecodingPixelRef inherit from skia::LazyPixelRef so that cc thread can access it</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778256</commentid>
    <comment_count>1</comment_count>
      <attachid>176559</attachid>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-11-28 13:10:22 -0800</bug_when>
    <thetext>Created attachment 176559
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778274</commentid>
    <comment_count>2</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2012-11-28 13:30:57 -0800</bug_when>
    <thetext>Is Skia rolled already?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778286</commentid>
    <comment_count>3</comment_count>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-11-28 13:39:56 -0800</bug_when>
    <thetext>The skia change i made is in rev 168995, and webkit now is using 169895.
So I assume the change has rolled already.

(In reply to comment #2)
&gt; Is Skia rolled already?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778292</commentid>
    <comment_count>4</comment_count>
      <attachid>176559</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2012-11-28 13:44:28 -0800</bug_when>
    <thetext>Comment on attachment 176559
Patch

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

&gt; Source/WebCore/platform/graphics/chromium/LazyDecodingPixelRef.cpp:94
&gt; +    m_mutex.lock();

Use MutexLocker lock(m_mutex). The mutex just needs to protect access to m_frameGenerator and m_scaledSize. We don&apos;t absolutely need a mutex here because they don&apos;t mutate but just for safety.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778295</commentid>
    <comment_count>5</comment_count>
      <attachid>176565</attachid>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-11-28 13:49:35 -0800</bug_when>
    <thetext>Created attachment 176565
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778296</commentid>
    <comment_count>6</comment_count>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-11-28 13:50:17 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 176559 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=176559&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/chromium/LazyDecodingPixelRef.cpp:94
&gt; &gt; +    m_mutex.lock();
&gt; 
&gt; Use MutexLocker lock(m_mutex). The mutex just needs to protect access to m_frameGenerator and m_scaledSize. We don&apos;t absolutely need a mutex here because they don&apos;t mutate but just for safety.

Done</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778297</commentid>
    <comment_count>7</comment_count>
      <attachid>176565</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2012-11-28 13:50:28 -0800</bug_when>
    <thetext>Comment on attachment 176565
Patch

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

&gt; Source/WebCore/platform/graphics/chromium/LazyDecodingPixelRef.cpp:95
&gt; +    // TODO(hclam): check if only a particular rect is available in image cache.

Whoops also WebKit doesn&apos;t use TODO(XXX), it&apos;s just TODO. Sorry I didn&apos;t point it out earlier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778309</commentid>
    <comment_count>8</comment_count>
      <attachid>176569</attachid>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-11-28 13:59:14 -0800</bug_when>
    <thetext>Created attachment 176569
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778312</commentid>
    <comment_count>9</comment_count>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-11-28 14:00:14 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 176565 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=176565&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/chromium/LazyDecodingPixelRef.cpp:95
&gt; &gt; +    // TODO(hclam): check if only a particular rect is available in image cache.
&gt; 
&gt; Whoops also WebKit doesn&apos;t use TODO(XXX), it&apos;s just TODO. Sorry I didn&apos;t point it out earlier.

ah.... Sorry, missed that. Fixed now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779423</commentid>
    <comment_count>10</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2012-11-29 14:13:58 -0800</bug_when>
    <thetext>lgtm from me by the way.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779435</commentid>
    <comment_count>11</comment_count>
      <attachid>176569</attachid>
    <who name="Stephen White">senorblanco</who>
    <bug_when>2012-11-29 14:20:52 -0800</bug_when>
    <thetext>Comment on attachment 176569
Patch

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

OK.  r=me

&gt; Source/WebCore/platform/graphics/chromium/LazyDecodingPixelRef.cpp:103
&gt; +    lockPixels();
&gt; +    unlockPixels();

Not sure I really get this, since you&apos;re going to have to lock again to use them, but I&apos;m sure you know that.  :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779447</commentid>
    <comment_count>12</comment_count>
      <attachid>176569</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-29 14:35:08 -0800</bug_when>
    <thetext>Comment on attachment 176569
Patch

Clearing flags on attachment: 176569

Committed r136167: &lt;http://trac.webkit.org/changeset/136167&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779448</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-29 14:35:12 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779716</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-29 18:24:09 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 103701</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783163</commentid>
    <comment_count>15</comment_count>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-12-04 17:33:45 -0800</bug_when>
    <thetext>Hi, Stephen, Can you help me recommit this patch?

A fix for the previous build fix is submitted in r170542
The current DEPS roll is at 171019 now.

Thanks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783164</commentid>
    <comment_count>16</comment_count>
      <attachid>176569</attachid>
    <who name="Stephen White">senorblanco</who>
    <bug_when>2012-12-04 17:34:59 -0800</bug_when>
    <thetext>Comment on attachment 176569
Patch

OK.  r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783334</commentid>
    <comment_count>17</comment_count>
      <attachid>176569</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-04 20:50:45 -0800</bug_when>
    <thetext>Comment on attachment 176569
Patch

Clearing flags on attachment: 176569

Committed r136630: &lt;http://trac.webkit.org/changeset/136630&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783335</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-04 20:50:50 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783975</commentid>
    <comment_count>19</comment_count>
    <who name="Stephen White">senorblanco</who>
    <bug_when>2012-12-05 12:15:43 -0800</bug_when>
    <thetext>Reverted r136630 for reason:

Still breaking Chrome/Win Debug builds

Committed r136728: &lt;http://trac.webkit.org/changeset/136728&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785034</commentid>
    <comment_count>20</comment_count>
      <attachid>176569</attachid>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-12-06 10:45:21 -0800</bug_when>
    <thetext>Comment on attachment 176569
Patch

Hi, Stephen, sorry about this, but can you approve this again. Thanks.

We believe the windows dbg bot failure is caused by that the lazy_pixel_ref.h is not built into the dll. So we split the file into a .cc and .h file. The fix is committed in r171375. And DEPS has rolled to r171376</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785042</commentid>
    <comment_count>21</comment_count>
    <who name="Stephen White">senorblanco</who>
    <bug_when>2012-12-06 10:51:26 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; (From update of attachment 176569 [details])
&gt; Hi, Stephen, sorry about this, but can you approve this again. Thanks.
&gt; 
&gt; We believe the windows dbg bot failure is caused by that the lazy_pixel_ref.h is not built into the dll. So we split the file into a .cc and .h file. The fix is committed in r171375. And DEPS has rolled to r171376

Have you built windows debug (component build) locally?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785145</commentid>
    <comment_count>22</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-12-06 12:22:10 -0800</bug_when>
    <thetext>(In reply to comment #21)
&gt; (In reply to comment #20)
&gt; &gt; (From update of attachment 176569 [details] [details])
&gt; &gt; Hi, Stephen, sorry about this, but can you approve this again. Thanks.
&gt; &gt; 
&gt; &gt; We believe the windows dbg bot failure is caused by that the lazy_pixel_ref.h is not built into the dll. So we split the file into a .cc and .h file. The fix is committed in r171375. And DEPS has rolled to r171376
&gt; 
&gt; Have you built windows debug (component build) locally?

And if you aren&apos;t set up to do this, you can send a tryjob to the chromium win trybot (which is debug and component) to verify.  Please do one or the other before attempting to land.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785223</commentid>
    <comment_count>23</comment_count>
    <who name="Min Qin">qinmin</who>
    <bug_when>2012-12-06 13:58:53 -0800</bug_when>
    <thetext>Hi, Stephen. Yes, I tried our new patch on windows dbg build, and it compiles fine now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785229</commentid>
    <comment_count>24</comment_count>
      <attachid>176569</attachid>
    <who name="Stephen White">senorblanco</who>
    <bug_when>2012-12-06 14:00:23 -0800</bug_when>
    <thetext>Comment on attachment 176569
Patch

Great, thanks.  r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785268</commentid>
    <comment_count>25</comment_count>
      <attachid>176569</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-06 14:22:25 -0800</bug_when>
    <thetext>Comment on attachment 176569
Patch

Clearing flags on attachment: 176569

Committed r136891: &lt;http://trac.webkit.org/changeset/136891&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785269</commentid>
    <comment_count>26</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-06 14:22:29 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785274</commentid>
    <comment_count>27</comment_count>
      <attachid>176569</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2012-12-06 14:29:39 -0800</bug_when>
    <thetext>Comment on attachment 176569
Patch

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

&gt; Source/WebCore/platform/graphics/chromium/LazyDecodingPixelRef.cpp:97
&gt; +    return ImageDecodingStore::instance()-&gt;lockCompleteCache(m_frameGenerator.get(), m_scaledSize);

I don&apos;t think this is entirely correct, this method is used as a hint to see of the cache is there. So the code should be:

const ScaledImageFragment* cachedImage = ...lockCompleteCache();
if (!cachedImage)
  return false;
... unlockCache(cachedImage);
return true;

Can you make another change to fix this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785277</commentid>
    <comment_count>28</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2012-12-06 14:30:27 -0800</bug_when>
    <thetext>(In reply to comment #27)
&gt; (From update of attachment 176569 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=176569&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/chromium/LazyDecodingPixelRef.cpp:97
&gt; &gt; +    return ImageDecodingStore::instance()-&gt;lockCompleteCache(m_frameGenerator.get(), m_scaledSize);
&gt; 
&gt; I don&apos;t think this is entirely correct, this method is used as a hint to see of the cache is there. So the code should be:
&gt; 
&gt; const ScaledImageFragment* cachedImage = ...lockCompleteCache();
&gt; if (!cachedImage)
&gt;   return false;
&gt; ... unlockCache(cachedImage);
&gt; return true;
&gt; 
&gt; Can you make another change to fix this?

If you don&apos;t do this it wil leak.. :(</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176559</attachid>
            <date>2012-11-28 13:10:22 -0800</date>
            <delta_ts>2012-11-28 13:49:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103555-20121128130757.patch</filename>
            <type>text/plain</type>
            <size>3847</size>
            <attacher name="Min Qin">qinmin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2MDE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzM4MDNlNDVkZTJkZWJj
OWRmNjY3ZWU5MTkyZDYxMDlkYWJlMzdiZS4uMDU2ZTM5NDZjN2FhOTdmNGE5YzRiZDUxYzMxMjhk
NjdhZmVmNWRkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTExLTI4ICBNaW4g
UWluICA8cWlubWluQGNocm9taXVtLm9yZz4KKworICAgICAgICBNYWtlIExhenlEZWNvZGluZ1Bp
eGVsUmVmIGluaGVyaXQgZnJvbSBza2lhOjpMYXp5UGl4ZWxSZWYgc28gdGhhdCBjYyB0aHJlYWQg
Y2FuIGFjY2VzcyBpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAzNTU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRXhwb3NlIExhenlEZWNvZGluZ1BpeGVsUmVmIHRvIHRoZSBjYyB0aHJlYWQgYnkgaW5o
ZXJpdGluZyBmcm9tIHNraWE6OkxhenlQaXhlbFJlZi4KKyAgICAgICAgTm8gdGVzdCBhZGRlZCBm
b3Igbm93IGFzIGltcGwgc2lkZSBwYWl0aW5nIGlzIHN0aWxsIFdJUC4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xhenlEZWNvZGluZ1BpeGVsUmVmLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkxhenlEZWNvZGluZ1BpeGVsUmVmOjpMYXp5RGVjb2RpbmdQaXhlbFJlZik6
CisgICAgICAgIChXZWJDb3JlOjpMYXp5RGVjb2RpbmdQaXhlbFJlZjo6UHJlcGFyZVRvRGVjb2Rl
KToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6TGF6eURlY29kaW5nUGl4
ZWxSZWY6OkRlY29kZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF6
eURlY29kaW5nUGl4ZWxSZWYuaDoKKyAgICAgICAgKExhenlEZWNvZGluZ1BpeGVsUmVmKToKKwog
MjAxMi0xMS0yOCAgWmVubyBBbGJpc3NlciAgPHplbm9Ad2Via2l0Lm9yZz4KIAogICAgICAgICBb
UXRdW1dpbl0gRW5hYmxlIHVzYWdlIG9mIFFUV0VCS0lUX1BMVUdJTl9QQVRILgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF6eURlY29kaW5n
UGl4ZWxSZWYuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
TGF6eURlY29kaW5nUGl4ZWxSZWYuY3BwCmluZGV4IDU1NTI2NjM2MmE2NTI4Y2Q0YzUzMzgyMmYx
ZjY1ODZiYmZkODQzNTMuLjBhZTIwMWFiM2Q4YjUzMzBmODFhZDQwNGE1ODFhYzFiOTJjODgwYmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xh
enlEZWNvZGluZ1BpeGVsUmVmLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9MYXp5RGVjb2RpbmdQaXhlbFJlZi5jcHAKQEAgLTM0LDggKzM0LDcgQEAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogTGF6eURlY29kaW5nUGl4ZWxSZWY6OkxhenlEZWNvZGlu
Z1BpeGVsUmVmKFBhc3NSZWZQdHI8SW1hZ2VGcmFtZUdlbmVyYXRvcj4gZnJhbWVHZW5lcmF0b3Is
IGNvbnN0IFNrSVNpemUmIHNjYWxlZFNpemUsIGNvbnN0IFNrSVJlY3QmIHNjYWxlZFN1YnNldCkK
LSAgICA6IFNrUGl4ZWxSZWYoMCkKLSAgICAsIG1fZnJhbWVHZW5lcmF0b3IoZnJhbWVHZW5lcmF0
b3IpCisgICAgOiBtX2ZyYW1lR2VuZXJhdG9yKGZyYW1lR2VuZXJhdG9yKQogICAgICwgbV9zY2Fs
ZWRTaXplKHNjYWxlZFNpemUpCiAgICAgLCBtX3NjYWxlZFN1YnNldChzY2FsZWRTdWJzZXQpCiAg
ICAgLCBtX2xvY2tlZENhY2hlZEltYWdlKDApCkBAIC05MCw0ICs4OSwxOSBAQCBib29sIExhenlE
ZWNvZGluZ1BpeGVsUmVmOjpvbkxvY2tQaXhlbHNBcmVXcml0YWJsZSgpIGNvbnN0CiAgICAgcmV0
dXJuIGZhbHNlOwogfQogCitib29sIExhenlEZWNvZGluZ1BpeGVsUmVmOjpQcmVwYXJlVG9EZWNv
ZGUoY29uc3QgTGF6eVBpeGVsUmVmOjpQcmVwYXJlUGFyYW1zJiBwYXJhbXMpCit7CisgICAgbV9t
dXRleC5sb2NrKCk7CisgICAgLy8gVE9ETyhoY2xhbSk6IGNoZWNrIGlmIG9ubHkgYSBwYXJ0aWN1
bGFyIHJlY3QgaXMgYXZhaWxhYmxlIGluIGltYWdlIGNhY2hlLgorICAgIFVOVVNFRF9QQVJBTShw
YXJhbXMpOworICAgIHJldHVybiBJbWFnZURlY29kaW5nU3RvcmU6Omluc3RhbmNlKCktPmxvY2tD
b21wbGV0ZUNhY2hlKG1fZnJhbWVHZW5lcmF0b3IuZ2V0KCksIG1fc2NhbGVkU2l6ZSk7Cit9CisK
K3ZvaWQgTGF6eURlY29kaW5nUGl4ZWxSZWY6OkRlY29kZSgpCit7CisgICAgbG9ja1BpeGVscygp
OworICAgIHVubG9ja1BpeGVscygpOworfQorCisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF6eURl
Y29kaW5nUGl4ZWxSZWYuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL0xhenlEZWNvZGluZ1BpeGVsUmVmLmgKaW5kZXggOWIyYTQ2ZDRlNWQ5YjQ1ZjRlMDcyZTcz
MjgwYzE0YjAyYWIyYTBiNy4uMDllNmY4ZDAzODQxYThhYjE1NjYwYWFkNjNiNWYxOGQwNzhjNGQy
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
TGF6eURlY29kaW5nUGl4ZWxSZWYuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9MYXp5RGVjb2RpbmdQaXhlbFJlZi5oCkBAIC0yNiwyMSArMjYsMjQgQEAK
ICNpZm5kZWYgTGF6eURlY29kaW5nUGl4ZWxSZWZfaAogI2RlZmluZSBMYXp5RGVjb2RpbmdQaXhl
bFJlZl9oCiAKLSNpbmNsdWRlICJTa1R5cGVzLmgiCiAjaW5jbHVkZSAiU2tGbGF0dGVuYWJsZUJ1
ZmZlcnMuaCIKICNpbmNsdWRlICJTa1BpeGVsUmVmLmgiCiAjaW5jbHVkZSAiU2tSZWN0LmgiCiAj
aW5jbHVkZSAiU2tTaXplLmgiCisjaW5jbHVkZSAiU2tUeXBlcy5oIgorI2luY2x1ZGUgInNraWEv
ZXh0L2xhenlfcGl4ZWxfcmVmLmgiCiAKICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVk
ZSA8d3RmL1RocmVhZGluZ1ByaW1pdGl2ZXMuaD4KIAordXNpbmcgc2tpYTo6TGF6eVBpeGVsUmVm
OworCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEltYWdlRnJhbWVHZW5lcmF0b3I7CiBj
bGFzcyBTY2FsZWRJbWFnZUZyYWdtZW50OwogCi1jbGFzcyBMYXp5RGVjb2RpbmdQaXhlbFJlZiA6
IHB1YmxpYyBTa1BpeGVsUmVmIHsKK2NsYXNzIExhenlEZWNvZGluZ1BpeGVsUmVmIDogcHVibGlj
IExhenlQaXhlbFJlZiB7CiBwdWJsaWM6CiAgICAgTGF6eURlY29kaW5nUGl4ZWxSZWYoUGFzc1Jl
ZlB0cjxJbWFnZUZyYW1lR2VuZXJhdG9yPiwgY29uc3QgU2tJU2l6ZSYgc2NhbGVkU2l6ZSwgY29u
c3QgU2tJUmVjdCYgc2NhbGVkU3Vic2V0KTsKICAgICB2aXJ0dWFsIH5MYXp5RGVjb2RpbmdQaXhl
bFJlZigpOwpAQCAtNTEsNiArNTQsOSBAQCBwdWJsaWM6CiAgICAgYm9vbCBpc1NjYWxlZChjb25z
dCBTa0lTaXplJiBmdWxsU2l6ZSkgY29uc3Q7CiAgICAgYm9vbCBpc0NsaXBwZWQoKSBjb25zdDsK
IAorICAgIHZpcnR1YWwgYm9vbCBQcmVwYXJlVG9EZWNvZGUoY29uc3QgTGF6eVBpeGVsUmVmOjpQ
cmVwYXJlUGFyYW1zJik7CisgICAgdmlydHVhbCB2b2lkIERlY29kZSgpOworCiBwcm90ZWN0ZWQ6
CiAgICAgLy8gU2tQaXhlbFJlZiBpbXBsZW1lbnRhdGlvbi4KICAgICB2aXJ0dWFsIHZvaWQqIG9u
TG9ja1BpeGVscyhTa0NvbG9yVGFibGUqKik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176565</attachid>
            <date>2012-11-28 13:49:35 -0800</date>
            <delta_ts>2012-11-28 13:59:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103555-20121128134710.patch</filename>
            <type>text/plain</type>
            <size>3858</size>
            <attacher name="Min Qin">qinmin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2MDE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzM4MDNlNDVkZTJkZWJj
OWRmNjY3ZWU5MTkyZDYxMDlkYWJlMzdiZS4uMDU2ZTM5NDZjN2FhOTdmNGE5YzRiZDUxYzMxMjhk
NjdhZmVmNWRkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTExLTI4ICBNaW4g
UWluICA8cWlubWluQGNocm9taXVtLm9yZz4KKworICAgICAgICBNYWtlIExhenlEZWNvZGluZ1Bp
eGVsUmVmIGluaGVyaXQgZnJvbSBza2lhOjpMYXp5UGl4ZWxSZWYgc28gdGhhdCBjYyB0aHJlYWQg
Y2FuIGFjY2VzcyBpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAzNTU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRXhwb3NlIExhenlEZWNvZGluZ1BpeGVsUmVmIHRvIHRoZSBjYyB0aHJlYWQgYnkgaW5o
ZXJpdGluZyBmcm9tIHNraWE6OkxhenlQaXhlbFJlZi4KKyAgICAgICAgTm8gdGVzdCBhZGRlZCBm
b3Igbm93IGFzIGltcGwgc2lkZSBwYWl0aW5nIGlzIHN0aWxsIFdJUC4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xhenlEZWNvZGluZ1BpeGVsUmVmLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkxhenlEZWNvZGluZ1BpeGVsUmVmOjpMYXp5RGVjb2RpbmdQaXhlbFJlZik6
CisgICAgICAgIChXZWJDb3JlOjpMYXp5RGVjb2RpbmdQaXhlbFJlZjo6UHJlcGFyZVRvRGVjb2Rl
KToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6TGF6eURlY29kaW5nUGl4
ZWxSZWY6OkRlY29kZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF6
eURlY29kaW5nUGl4ZWxSZWYuaDoKKyAgICAgICAgKExhenlEZWNvZGluZ1BpeGVsUmVmKToKKwog
MjAxMi0xMS0yOCAgWmVubyBBbGJpc3NlciAgPHplbm9Ad2Via2l0Lm9yZz4KIAogICAgICAgICBb
UXRdW1dpbl0gRW5hYmxlIHVzYWdlIG9mIFFUV0VCS0lUX1BMVUdJTl9QQVRILgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF6eURlY29kaW5n
UGl4ZWxSZWYuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
TGF6eURlY29kaW5nUGl4ZWxSZWYuY3BwCmluZGV4IDU1NTI2NjM2MmE2NTI4Y2Q0YzUzMzgyMmYx
ZjY1ODZiYmZkODQzNTMuLjA4N2Q1MzRmMmJmMTM0MmFkOTg3NzljOThiZTk2ZGE5MTA1ZDJhNjIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xh
enlEZWNvZGluZ1BpeGVsUmVmLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9MYXp5RGVjb2RpbmdQaXhlbFJlZi5jcHAKQEAgLTM0LDggKzM0LDcgQEAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogTGF6eURlY29kaW5nUGl4ZWxSZWY6OkxhenlEZWNvZGlu
Z1BpeGVsUmVmKFBhc3NSZWZQdHI8SW1hZ2VGcmFtZUdlbmVyYXRvcj4gZnJhbWVHZW5lcmF0b3Is
IGNvbnN0IFNrSVNpemUmIHNjYWxlZFNpemUsIGNvbnN0IFNrSVJlY3QmIHNjYWxlZFN1YnNldCkK
LSAgICA6IFNrUGl4ZWxSZWYoMCkKLSAgICAsIG1fZnJhbWVHZW5lcmF0b3IoZnJhbWVHZW5lcmF0
b3IpCisgICAgOiBtX2ZyYW1lR2VuZXJhdG9yKGZyYW1lR2VuZXJhdG9yKQogICAgICwgbV9zY2Fs
ZWRTaXplKHNjYWxlZFNpemUpCiAgICAgLCBtX3NjYWxlZFN1YnNldChzY2FsZWRTdWJzZXQpCiAg
ICAgLCBtX2xvY2tlZENhY2hlZEltYWdlKDApCkBAIC05MCw0ICs4OSwxOSBAQCBib29sIExhenlE
ZWNvZGluZ1BpeGVsUmVmOjpvbkxvY2tQaXhlbHNBcmVXcml0YWJsZSgpIGNvbnN0CiAgICAgcmV0
dXJuIGZhbHNlOwogfQogCitib29sIExhenlEZWNvZGluZ1BpeGVsUmVmOjpQcmVwYXJlVG9EZWNv
ZGUoY29uc3QgTGF6eVBpeGVsUmVmOjpQcmVwYXJlUGFyYW1zJiBwYXJhbXMpCit7CisgICAgTXV0
ZXhMb2NrZXIgbG9jayhtX211dGV4KTsKKyAgICAvLyBUT0RPKGhjbGFtKTogY2hlY2sgaWYgb25s
eSBhIHBhcnRpY3VsYXIgcmVjdCBpcyBhdmFpbGFibGUgaW4gaW1hZ2UgY2FjaGUuCisgICAgVU5V
U0VEX1BBUkFNKHBhcmFtcyk7CisgICAgcmV0dXJuIEltYWdlRGVjb2RpbmdTdG9yZTo6aW5zdGFu
Y2UoKS0+bG9ja0NvbXBsZXRlQ2FjaGUobV9mcmFtZUdlbmVyYXRvci5nZXQoKSwgbV9zY2FsZWRT
aXplKTsKK30KKwordm9pZCBMYXp5RGVjb2RpbmdQaXhlbFJlZjo6RGVjb2RlKCkKK3sKKyAgICBs
b2NrUGl4ZWxzKCk7CisgICAgdW5sb2NrUGl4ZWxzKCk7Cit9CisKKwogfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9MYXp5RGVjb2RpbmdQaXhlbFJlZi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vTGF6eURlY29kaW5nUGl4ZWxSZWYuaAppbmRleCA5YjJhNDZkNGU1ZDli
NDVmNGUwNzJlNzMyODBjMTRiMDJhYjJhMGI3Li4wOWU2ZjhkMDM4NDFhOGFiMTU2NjBhYWQ2M2I1
ZjE4ZDA3OGM0ZDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9MYXp5RGVjb2RpbmdQaXhlbFJlZi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xhenlEZWNvZGluZ1BpeGVsUmVmLmgKQEAgLTI2LDIx
ICsyNiwyNCBAQAogI2lmbmRlZiBMYXp5RGVjb2RpbmdQaXhlbFJlZl9oCiAjZGVmaW5lIExhenlE
ZWNvZGluZ1BpeGVsUmVmX2gKIAotI2luY2x1ZGUgIlNrVHlwZXMuaCIKICNpbmNsdWRlICJTa0Zs
YXR0ZW5hYmxlQnVmZmVycy5oIgogI2luY2x1ZGUgIlNrUGl4ZWxSZWYuaCIKICNpbmNsdWRlICJT
a1JlY3QuaCIKICNpbmNsdWRlICJTa1NpemUuaCIKKyNpbmNsdWRlICJTa1R5cGVzLmgiCisjaW5j
bHVkZSAic2tpYS9leHQvbGF6eV9waXhlbF9yZWYuaCIKIAogI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nUHJpbWl0aXZlcy5oPgogCit1c2luZyBza2lhOjpM
YXp5UGl4ZWxSZWY7CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSW1hZ2VGcmFtZUdl
bmVyYXRvcjsKIGNsYXNzIFNjYWxlZEltYWdlRnJhZ21lbnQ7CiAKLWNsYXNzIExhenlEZWNvZGlu
Z1BpeGVsUmVmIDogcHVibGljIFNrUGl4ZWxSZWYgeworY2xhc3MgTGF6eURlY29kaW5nUGl4ZWxS
ZWYgOiBwdWJsaWMgTGF6eVBpeGVsUmVmIHsKIHB1YmxpYzoKICAgICBMYXp5RGVjb2RpbmdQaXhl
bFJlZihQYXNzUmVmUHRyPEltYWdlRnJhbWVHZW5lcmF0b3I+LCBjb25zdCBTa0lTaXplJiBzY2Fs
ZWRTaXplLCBjb25zdCBTa0lSZWN0JiBzY2FsZWRTdWJzZXQpOwogICAgIHZpcnR1YWwgfkxhenlE
ZWNvZGluZ1BpeGVsUmVmKCk7CkBAIC01MSw2ICs1NCw5IEBAIHB1YmxpYzoKICAgICBib29sIGlz
U2NhbGVkKGNvbnN0IFNrSVNpemUmIGZ1bGxTaXplKSBjb25zdDsKICAgICBib29sIGlzQ2xpcHBl
ZCgpIGNvbnN0OwogCisgICAgdmlydHVhbCBib29sIFByZXBhcmVUb0RlY29kZShjb25zdCBMYXp5
UGl4ZWxSZWY6OlByZXBhcmVQYXJhbXMmKTsKKyAgICB2aXJ0dWFsIHZvaWQgRGVjb2RlKCk7CisK
IHByb3RlY3RlZDoKICAgICAvLyBTa1BpeGVsUmVmIGltcGxlbWVudGF0aW9uLgogICAgIHZpcnR1
YWwgdm9pZCogb25Mb2NrUGl4ZWxzKFNrQ29sb3JUYWJsZSoqKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176569</attachid>
            <date>2012-11-28 13:59:14 -0800</date>
            <delta_ts>2012-12-06 14:29:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103555-20121128135649.patch</filename>
            <type>text/plain</type>
            <size>3851</size>
            <attacher name="Min Qin">qinmin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2MDE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzM4MDNlNDVkZTJkZWJj
OWRmNjY3ZWU5MTkyZDYxMDlkYWJlMzdiZS4uMDU2ZTM5NDZjN2FhOTdmNGE5YzRiZDUxYzMxMjhk
NjdhZmVmNWRkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTExLTI4ICBNaW4g
UWluICA8cWlubWluQGNocm9taXVtLm9yZz4KKworICAgICAgICBNYWtlIExhenlEZWNvZGluZ1Bp
eGVsUmVmIGluaGVyaXQgZnJvbSBza2lhOjpMYXp5UGl4ZWxSZWYgc28gdGhhdCBjYyB0aHJlYWQg
Y2FuIGFjY2VzcyBpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAzNTU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRXhwb3NlIExhenlEZWNvZGluZ1BpeGVsUmVmIHRvIHRoZSBjYyB0aHJlYWQgYnkgaW5o
ZXJpdGluZyBmcm9tIHNraWE6OkxhenlQaXhlbFJlZi4KKyAgICAgICAgTm8gdGVzdCBhZGRlZCBm
b3Igbm93IGFzIGltcGwgc2lkZSBwYWl0aW5nIGlzIHN0aWxsIFdJUC4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xhenlEZWNvZGluZ1BpeGVsUmVmLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkxhenlEZWNvZGluZ1BpeGVsUmVmOjpMYXp5RGVjb2RpbmdQaXhlbFJlZik6
CisgICAgICAgIChXZWJDb3JlOjpMYXp5RGVjb2RpbmdQaXhlbFJlZjo6UHJlcGFyZVRvRGVjb2Rl
KToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6TGF6eURlY29kaW5nUGl4
ZWxSZWY6OkRlY29kZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF6
eURlY29kaW5nUGl4ZWxSZWYuaDoKKyAgICAgICAgKExhenlEZWNvZGluZ1BpeGVsUmVmKToKKwog
MjAxMi0xMS0yOCAgWmVubyBBbGJpc3NlciAgPHplbm9Ad2Via2l0Lm9yZz4KIAogICAgICAgICBb
UXRdW1dpbl0gRW5hYmxlIHVzYWdlIG9mIFFUV0VCS0lUX1BMVUdJTl9QQVRILgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF6eURlY29kaW5n
UGl4ZWxSZWYuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
TGF6eURlY29kaW5nUGl4ZWxSZWYuY3BwCmluZGV4IDU1NTI2NjM2MmE2NTI4Y2Q0YzUzMzgyMmYx
ZjY1ODZiYmZkODQzNTMuLmYzMTIwZTc5ZDgwZWQ1YWI0NDAzMjc0NWViMTYxZGZjNDA4ZDg5M2Ug
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xh
enlEZWNvZGluZ1BpeGVsUmVmLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9MYXp5RGVjb2RpbmdQaXhlbFJlZi5jcHAKQEAgLTM0LDggKzM0LDcgQEAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogTGF6eURlY29kaW5nUGl4ZWxSZWY6OkxhenlEZWNvZGlu
Z1BpeGVsUmVmKFBhc3NSZWZQdHI8SW1hZ2VGcmFtZUdlbmVyYXRvcj4gZnJhbWVHZW5lcmF0b3Is
IGNvbnN0IFNrSVNpemUmIHNjYWxlZFNpemUsIGNvbnN0IFNrSVJlY3QmIHNjYWxlZFN1YnNldCkK
LSAgICA6IFNrUGl4ZWxSZWYoMCkKLSAgICAsIG1fZnJhbWVHZW5lcmF0b3IoZnJhbWVHZW5lcmF0
b3IpCisgICAgOiBtX2ZyYW1lR2VuZXJhdG9yKGZyYW1lR2VuZXJhdG9yKQogICAgICwgbV9zY2Fs
ZWRTaXplKHNjYWxlZFNpemUpCiAgICAgLCBtX3NjYWxlZFN1YnNldChzY2FsZWRTdWJzZXQpCiAg
ICAgLCBtX2xvY2tlZENhY2hlZEltYWdlKDApCkBAIC05MCw0ICs4OSwxOSBAQCBib29sIExhenlE
ZWNvZGluZ1BpeGVsUmVmOjpvbkxvY2tQaXhlbHNBcmVXcml0YWJsZSgpIGNvbnN0CiAgICAgcmV0
dXJuIGZhbHNlOwogfQogCitib29sIExhenlEZWNvZGluZ1BpeGVsUmVmOjpQcmVwYXJlVG9EZWNv
ZGUoY29uc3QgTGF6eVBpeGVsUmVmOjpQcmVwYXJlUGFyYW1zJiBwYXJhbXMpCit7CisgICAgTXV0
ZXhMb2NrZXIgbG9jayhtX211dGV4KTsKKyAgICAvLyBUT0RPOiBjaGVjayBpZiBvbmx5IGEgcGFy
dGljdWxhciByZWN0IGlzIGF2YWlsYWJsZSBpbiBpbWFnZSBjYWNoZS4KKyAgICBVTlVTRURfUEFS
QU0ocGFyYW1zKTsKKyAgICByZXR1cm4gSW1hZ2VEZWNvZGluZ1N0b3JlOjppbnN0YW5jZSgpLT5s
b2NrQ29tcGxldGVDYWNoZShtX2ZyYW1lR2VuZXJhdG9yLmdldCgpLCBtX3NjYWxlZFNpemUpOwor
fQorCit2b2lkIExhenlEZWNvZGluZ1BpeGVsUmVmOjpEZWNvZGUoKQoreworICAgIGxvY2tQaXhl
bHMoKTsKKyAgICB1bmxvY2tQaXhlbHMoKTsKK30KKworCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xh
enlEZWNvZGluZ1BpeGVsUmVmLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9MYXp5RGVjb2RpbmdQaXhlbFJlZi5oCmluZGV4IDliMmE0NmQ0ZTVkOWI0NWY0ZTA3
MmU3MzI4MGMxNGIwMmFiMmEwYjcuLjA5ZTZmOGQwMzg0MWE4YWIxNTY2MGFhZDYzYjVmMThkMDc4
YzRkMjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL0xhenlEZWNvZGluZ1BpeGVsUmVmLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vTGF6eURlY29kaW5nUGl4ZWxSZWYuaApAQCAtMjYsMjEgKzI2LDI0
IEBACiAjaWZuZGVmIExhenlEZWNvZGluZ1BpeGVsUmVmX2gKICNkZWZpbmUgTGF6eURlY29kaW5n
UGl4ZWxSZWZfaAogCi0jaW5jbHVkZSAiU2tUeXBlcy5oIgogI2luY2x1ZGUgIlNrRmxhdHRlbmFi
bGVCdWZmZXJzLmgiCiAjaW5jbHVkZSAiU2tQaXhlbFJlZi5oIgogI2luY2x1ZGUgIlNrUmVjdC5o
IgogI2luY2x1ZGUgIlNrU2l6ZS5oIgorI2luY2x1ZGUgIlNrVHlwZXMuaCIKKyNpbmNsdWRlICJz
a2lhL2V4dC9sYXp5X3BpeGVsX3JlZi5oIgogCiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2lu
Y2x1ZGUgPHd0Zi9UaHJlYWRpbmdQcmltaXRpdmVzLmg+CiAKK3VzaW5nIHNraWE6OkxhenlQaXhl
bFJlZjsKKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBJbWFnZUZyYW1lR2VuZXJhdG9y
OwogY2xhc3MgU2NhbGVkSW1hZ2VGcmFnbWVudDsKIAotY2xhc3MgTGF6eURlY29kaW5nUGl4ZWxS
ZWYgOiBwdWJsaWMgU2tQaXhlbFJlZiB7CitjbGFzcyBMYXp5RGVjb2RpbmdQaXhlbFJlZiA6IHB1
YmxpYyBMYXp5UGl4ZWxSZWYgewogcHVibGljOgogICAgIExhenlEZWNvZGluZ1BpeGVsUmVmKFBh
c3NSZWZQdHI8SW1hZ2VGcmFtZUdlbmVyYXRvcj4sIGNvbnN0IFNrSVNpemUmIHNjYWxlZFNpemUs
IGNvbnN0IFNrSVJlY3QmIHNjYWxlZFN1YnNldCk7CiAgICAgdmlydHVhbCB+TGF6eURlY29kaW5n
UGl4ZWxSZWYoKTsKQEAgLTUxLDYgKzU0LDkgQEAgcHVibGljOgogICAgIGJvb2wgaXNTY2FsZWQo
Y29uc3QgU2tJU2l6ZSYgZnVsbFNpemUpIGNvbnN0OwogICAgIGJvb2wgaXNDbGlwcGVkKCkgY29u
c3Q7CiAKKyAgICB2aXJ0dWFsIGJvb2wgUHJlcGFyZVRvRGVjb2RlKGNvbnN0IExhenlQaXhlbFJl
Zjo6UHJlcGFyZVBhcmFtcyYpOworICAgIHZpcnR1YWwgdm9pZCBEZWNvZGUoKTsKKwogcHJvdGVj
dGVkOgogICAgIC8vIFNrUGl4ZWxSZWYgaW1wbGVtZW50YXRpb24uCiAgICAgdmlydHVhbCB2b2lk
KiBvbkxvY2tQaXhlbHMoU2tDb2xvclRhYmxlKiopOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>