<?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>38615</bug_id>
          
          <creation_ts>2010-05-05 17:34:21 -0700</creation_ts>
          <short_desc>[V8] Add V8 bindings for FileReader interface and turn on FileReader support in Chromium</short_desc>
          <delta_ts>2010-05-10 17:18:36 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</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>38609</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jian Li">jianli</reporter>
          <assigned_to name="Jian Li">jianli</assigned_to>
          <cc>abarth</cc>
    
    <cc>dglazkov</cc>
    
    <cc>dimich</cc>
    
    <cc>eric</cc>
    
    <cc>jorlow</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>221376</commentid>
    <comment_count>0</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-05-05 17:34:21 -0700</bug_when>
    <thetext>Add V8 bindings for FileReader interface and turn on FileReader support in Chromium.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221383</commentid>
    <comment_count>1</comment_count>
      <attachid>55180</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-05-05 17:39:02 -0700</bug_when>
    <thetext>Created attachment 55180
Proposed Patch

The ews queue will be broken since this patch depends on 38609 that has not been landed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221387</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-05 17:46:17 -0700</bug_when>
    <thetext>Attachment 55180 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebCore/bindings/v8/custom/V8FileReaderCustom.cpp:67:  One space before end of line comments  [whitespace/comments] [5]
Total errors found: 1 in 8 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>221395</commentid>
    <comment_count>3</comment_count>
      <attachid>55184</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-05-05 17:53:35 -0700</bug_when>
    <thetext>Created attachment 55184
Proposed Patch

Style fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221436</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-05 19:09:06 -0700</bug_when>
    <thetext>Attachment 55184 did not build on chromium:
Build output: http://webkit-commit-queue.appspot.com/results/2175007</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221467</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-05 21:43:38 -0700</bug_when>
    <thetext>Why are custom bindings needed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221520</commentid>
    <comment_count>6</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-05-05 23:12:34 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Why are custom bindings needed?

Because we need to get the ScriptExecutionContext and pass it to the FileReader constructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221528</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-05-05 23:49:03 -0700</bug_when>
    <thetext>&gt; Because we need to get the ScriptExecutionContext and pass it to the FileReader
&gt; constructor.

Have you tried [CallWith=ScriptExecutionContext] ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221529</commentid>
    <comment_count>8</comment_count>
      <attachid>55184</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-05-05 23:51:11 -0700</bug_when>
    <thetext>Comment on attachment 55184
Proposed Patch

Please try this without custom bindings.  You might need to extend [CallWith] to work with constructors.

WebCore/bindings/v8/custom/V8FileReaderCustom.cpp:48
 +          return throwError(&quot;DOM object custructor cannot be called as a function.&quot;);
Which spec does this text come from?  Is this text localized?  I don&apos;t think we should have this random custom text in the bindings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223612</commentid>
    <comment_count>9</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-05-10 17:18:36 -0700</bug_when>
    <thetext>We do not need this bug now since we choose to change the code generator to avoid the custom bindings code.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55180</attachid>
            <date>2010-05-05 17:39:02 -0700</date>
            <delta_ts>2010-05-05 17:53:35 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>38615</filename>
            <type>text/plain</type>
            <size>8066</size>
            <attacher name="Jian Li">jianli</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkNzNjYzQ2Li5kNDBmNmYwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0yLDYgKzIsMTcgQEAKIAogICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KIAorICAgICAgICBbVjhdIEFkZCBWOCBiaW5k
aW5ncyBmb3IgRmlsZVJlYWRlciBpbnRlcmZhY2UgYW5kIHR1cm4gb24gRmlsZVJlYWRlciBzdXBw
b3J0IGluIENocm9taXVtLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9Mzg2MTUKKworICAgICAgICBVcGRhdGUgdGhlIHRlc3QgZHVlIHRvIGFkZGluZyB0
aGUgY29uc3RydWN0b3JzIHRvIERPTVdpbmRvdy4KKworICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6CisKKzIwMTAt
MDUtMDUgIEppYW4gTGkgIDxqaWFubGlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCiAgICAgICAgIEV4cG9zZSBGaWxlUmVhZGVyIGludGVyZmFj
ZS4KICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4NjA5
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZG9tL3By
b3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CmluZGV4
IDdkY2RhMGUuLjIxMTg4NDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNl
LWV4cGVjdGVkLnR4dApAQCAtODMsOCArODMsMTIgQEAgUEFTUyBpbm5lci5FdmVudFNvdXJjZS5p
c0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuRXZlbnRTb3VyY2UuY29uc3RydWN0b3IuaXNJbm5l
ciBpcyB0cnVlCiBQQVNTIGlubmVyLkZpbGUuaXNJbm5lciBpcyB0cnVlCiBQQVNTIGlubmVyLkZp
bGUuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkZpbGVFcnJvci5pc0lu
bmVyIGlzIHRydWUKK1BBU1MgaW5uZXIuRmlsZUVycm9yLmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMg
dHJ1ZQogUEFTUyBpbm5lci5GaWxlTGlzdC5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuRmls
ZUxpc3QuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkZpbGVSZWFkZXIu
aXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkZpbGVSZWFkZXIuY29uc3RydWN0b3IuaXNJbm5l
ciBpcyB0cnVlCiBQQVNTIGlubmVyLkZvcm1EYXRhLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5l
ci5Gb3JtRGF0YS5jb25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSFRNTEFs
bENvbGxlY3Rpb24uaXNJbm5lciBpcyB0cnVlCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDkxNmY1YTQuLmFlYTUyZDYgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0yLDYgKzIsMjAg
QEAKIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KIAorICAgICAgICBbVjhd
IEFkZCBWOCBiaW5kaW5ncyBmb3IgRmlsZVJlYWRlciBpbnRlcmZhY2UgYW5kIHR1cm4gb24gRmls
ZVJlYWRlciBzdXBwb3J0IGluIENocm9taXVtLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg2MTUKKworICAgICAgICBBZGQgVjggYmluZGluZ3MgZm9y
IEZpbGVSZWFkZXIgaW50ZXJmYWNlLgorCisgICAgICAgICogV2ViQ29yZS5neXBpOiBBZGQgVjgg
YmluZGluZ3MgcmVsYXRlZCBmaWxlLgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdyYXBwZXI6OmNvbnZlcnRFdmVudFRhcmdl
dFRvVjhPYmplY3QpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEZpbGVSZWFkZXJD
dXN0b20uY3BwOiBBZGRlZC4KKworMjAxMC0wNS0wNSAgSmlhbiBMaSAgPGppYW5saUBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKICAgICAgICAg
RXhwb3NlIEZpbGVSZWFkZXIgaW50ZXJmYWNlLgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg2MDkKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3Jl
Lmd5cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCA4MWVkMDE1Li5mYmNkY2FiIDEwMDY0
NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpA
QCAtMTExLDYgKzExMSw3IEBACiAgICAgICAgICAgICAnaHRtbC9GaWxlLmlkbCcsCiAgICAgICAg
ICAgICAnaHRtbC9GaWxlRXJyb3IuaWRsJywKICAgICAgICAgICAgICdodG1sL0ZpbGVMaXN0Lmlk
bCcsCisgICAgICAgICAgICAnaHRtbC9GaWxlUmVhZGVyLmlkbCcsCiAgICAgICAgICAgICAnaHRt
bC9IVE1MQWxsQ29sbGVjdGlvbi5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTEFuY2hvckVs
ZW1lbnQuaWRsJywKICAgICAgICAgICAgICdodG1sL0hUTUxBcHBsZXRFbGVtZW50LmlkbCcsCkBA
IC03MjEsNiArNzIyLDcgQEAKICAgICAgICAgICAgICdiaW5kaW5ncy92OC9jdXN0b20vVjhFbGVt
ZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudFNvdXJj
ZUNvbnN0cnVjdG9yLmNwcCcsCisgICAgICAgICAgICAnYmluZGluZ3MvdjgvY3VzdG9tL1Y4Rmls
ZVJlYWRlckN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEdl
b2xvY2F0aW9uQ3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvdjgvY3VzdG9tL1Y4
SGlzdG9yeUN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhU
TUxBdWRpb0VsZW1lbnRDb25zdHJ1Y3Rvci5jcHAnLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOERPTVdyYXBwZXIuY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBw
ZXIuY3BwCmluZGV4IGIyZWVlYjQuLjRhOTI1OGIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGlu
Z3MvdjgvVjhET01XcmFwcGVyLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3Jh
cHBlci5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbmNsdWRlICJWOERPTVdpbmRvdy5oIgogI2lu
Y2x1ZGUgIlY4RXZlbnRMaXN0ZW5lckxpc3QuaCIKICNpbmNsdWRlICJWOEV2ZW50U291cmNlLmgi
CisjaW5jbHVkZSAiVjhGaWxlUmVhZGVyLmgiCiAjaW5jbHVkZSAiVjhIVE1MQ29sbGVjdGlvbi5o
IgogI2luY2x1ZGUgIlY4SFRNTERvY3VtZW50LmgiCiAjaW5jbHVkZSAiVjhJc29sYXRlZENvbnRl
eHQuaCIKQEAgLTQxOCw2ICs0MTksMTEgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RE9NV3Jh
cHBlcjo6Y29udmVydEV2ZW50VGFyZ2V0VG9WOE9iamVjdChFdmVudFRhcmdldCogdGEKICAgICAg
ICAgcmV0dXJuIHRvVjgoZXZlbnRTb3VyY2UpOwogI2VuZGlmCiAKKyNpZiBFTkFCTEUoRklMRV9S
RUFERVIpCisgICAgaWYgKEZpbGVSZWFkZXIqIGZpbGVSZWFkZXIgPSB0YXJnZXQtPnRvRmlsZVJl
YWRlcigpKQorICAgICAgICByZXR1cm4gdG9WOChmaWxlUmVhZGVyKTsKKyNlbmRpZgorCiAgICAg
QVNTRVJUKDApOwogICAgIHJldHVybiBub3RIYW5kbGVkQnlJbnRlcmNlcHRvcigpOwogfQpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhGaWxlUmVhZGVyQ3VzdG9tLmNw
cCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RmlsZVJlYWRlckN1c3RvbS5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uODFiOTMwNAotLS0gL2Rldi9udWxsCisr
KyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RmlsZVJlYWRlckN1c3RvbS5jcHAKQEAg
LTAsMCArMSw2OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiAgQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAq
IG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFt
ZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAq
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisg
KiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoRklMRV9SRUFE
RVIpCisKKyNpbmNsdWRlICJWOEZpbGVSZWFkZXIuaCIKKworI2luY2x1ZGUgIlY4QmluZGluZy5o
IgorI2luY2x1ZGUgIlY4UHJveHkuaCIKKyNpbmNsdWRlICJWOFV0aWxpdGllcy5oIgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEZpbGVSZWFkZXI6OmNv
bnN0cnVjdG9yQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBJTkNf
U1RBVFMoIkRPTS5GaWxlUmVhZGVyLkNvbnN0cnVjdG9yIik7CisKKyAgICBpZiAoIWFyZ3MuSXND
b25zdHJ1Y3RDYWxsKCkpCisgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJET00gb2JqZWN0IGN1
c3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLiIpOworCisgICAgLy8gR2V0
IHRoZSBzY3JpcHQgZXhlY3V0aW9uIGNvbnRleHQuCisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCA9IGdldFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKKyAgICBpZiAoIWNvbnRl
eHQpCisgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJGaWxlUmVhZGVyIGNvbnN0cnVjdG9yJ3Mg
YXNzb2NpYXRlZCBmcmFtZSBpcyBub3QgYXZhaWxhYmxlIiwgVjhQcm94eTo6UmVmZXJlbmNlRXJy
b3IpOworCisgICAgUmVmUHRyPEZpbGVSZWFkZXI+IGZpbGVSZWFkZXIgPSBGaWxlUmVhZGVyOjpj
cmVhdGUoY29udGV4dCk7CisKKyAgICAvLyBTZXR1cCB0aGUgc3RhbmRhcmQgd3JhcHBlciBvYmpl
Y3QgaW50ZXJuYWwgZmllbGRzLgorICAgIFY4RE9NV3JhcHBlcjo6c2V0RE9NV3JhcHBlcihhcmdz
LkhvbGRlcigpLCAmaW5mbywgZmlsZVJlYWRlci5nZXQoKSk7CisKKyAgICAvLyBBZGQgb2JqZWN0
IHRvIHRoZSB3cmFwcGVyIG1hcC4KKyAgICBmaWxlUmVhZGVyLT5yZWYoKTsKKyAgICBWOERPTVdy
YXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdChmaWxlUmVhZGVyLmdldCgpLCB2ODo6UGVy
c2lzdGVudDx2ODo6T2JqZWN0Pjo6TmV3KGFyZ3MuSG9sZGVyKCkpKTsKKworICAgIHJldHVybiBh
cmdzLkhvbGRlcigpOworfQorCit9ICAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlm
ZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCmluZGV4IDExZTQyMmIuLmIyNzkxMzggMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1
bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEy
IEBACisyMDEwLTA1LTA1ICBKaWFuIExpICA8amlhbmxpQGNocm9taXVtLm9yZz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbVjhdIEFkZCBWOCBiaW5k
aW5ncyBmb3IgRmlsZVJlYWRlciBpbnRlcmZhY2UgYW5kIHR1cm4gb24gRmlsZVJlYWRlciBzdXBw
b3J0IGluIENocm9taXVtLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9Mzg2MTUKKworICAgICAgICAqIGZlYXR1cmVzLmd5cGk6IFR1cm4gb24gRmlsZVJl
YWRlciBzdXBwb3J0IGluIENocm9taXVtLgorCiAyMDEwLTA1LTA1ICBIYW5zIFdlbm5ib3JnICA8
aGFuc0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgSmVyZW15IE9ybG93Lgpk
aWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL2ZlYXR1cmVzLmd5cGkgYi9XZWJLaXQvY2hyb21p
dW0vZmVhdHVyZXMuZ3lwaQppbmRleCA3MTQ2Njg1Li44N2E2ZTA5IDEwMDY0NAotLS0gYS9XZWJL
aXQvY2hyb21pdW0vZmVhdHVyZXMuZ3lwaQorKysgYi9XZWJLaXQvY2hyb21pdW0vZmVhdHVyZXMu
Z3lwaQpAQCAtNDcsNyArNDcsNyBAQAogICAgICAgICAnRU5BQkxFX09GRkxJTkVfV0VCX0FQUExJ
Q0FUSU9OUz0xJywKICAgICAgICAgJ0VOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVD0wJywKICAgICAg
ICAgJ0VOQUJMRV9ET01fU1RPUkFHRT0xJywKLSAgICAgICAgJ0VOQUJMRV9GSUxFX1JFQURFUj0w
JywKKyAgICAgICAgJ0VOQUJMRV9GSUxFX1JFQURFUj0xJywKICAgICAgICAgJ0VOQUJMRV9GSUxF
X1dSSVRFUj0wJywKICAgICAgICAgJ0VOQUJMRV9HRU9MT0NBVElPTj0xJywKICAgICAgICAgJ0VO
QUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSPTEnLAo=
</data>
<flag name="commit-queue"
          id="39304"
          type_id="3"
          status="-"
          setter="jianli"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55184</attachid>
            <date>2010-05-05 17:53:35 -0700</date>
            <delta_ts>2010-05-05 23:51:11 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>38615_2</filename>
            <type>text/plain</type>
            <size>8065</size>
            <attacher name="Jian Li">jianli</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkNzNjYzQ2Li5kNDBmNmYwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0yLDYgKzIsMTcgQEAKIAogICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KIAorICAgICAgICBbVjhdIEFkZCBWOCBiaW5k
aW5ncyBmb3IgRmlsZVJlYWRlciBpbnRlcmZhY2UgYW5kIHR1cm4gb24gRmlsZVJlYWRlciBzdXBw
b3J0IGluIENocm9taXVtLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9Mzg2MTUKKworICAgICAgICBVcGRhdGUgdGhlIHRlc3QgZHVlIHRvIGFkZGluZyB0
aGUgY29uc3RydWN0b3JzIHRvIERPTVdpbmRvdy4KKworICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6CisKKzIwMTAt
MDUtMDUgIEppYW4gTGkgIDxqaWFubGlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCiAgICAgICAgIEV4cG9zZSBGaWxlUmVhZGVyIGludGVyZmFj
ZS4KICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4NjA5
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZG9tL3By
b3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CmluZGV4
IDdkY2RhMGUuLjIxMTg4NDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNl
LWV4cGVjdGVkLnR4dApAQCAtODMsOCArODMsMTIgQEAgUEFTUyBpbm5lci5FdmVudFNvdXJjZS5p
c0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuRXZlbnRTb3VyY2UuY29uc3RydWN0b3IuaXNJbm5l
ciBpcyB0cnVlCiBQQVNTIGlubmVyLkZpbGUuaXNJbm5lciBpcyB0cnVlCiBQQVNTIGlubmVyLkZp
bGUuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkZpbGVFcnJvci5pc0lu
bmVyIGlzIHRydWUKK1BBU1MgaW5uZXIuRmlsZUVycm9yLmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMg
dHJ1ZQogUEFTUyBpbm5lci5GaWxlTGlzdC5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuRmls
ZUxpc3QuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkZpbGVSZWFkZXIu
aXNJbm5lciBpcyB0cnVlCitQQVNTIGlubmVyLkZpbGVSZWFkZXIuY29uc3RydWN0b3IuaXNJbm5l
ciBpcyB0cnVlCiBQQVNTIGlubmVyLkZvcm1EYXRhLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBpbm5l
ci5Gb3JtRGF0YS5jb25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgaW5uZXIuSFRNTEFs
bENvbGxlY3Rpb24uaXNJbm5lciBpcyB0cnVlCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDkxNmY1YTQuLmFlYTUyZDYgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0yLDYgKzIsMjAg
QEAKIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KIAorICAgICAgICBbVjhd
IEFkZCBWOCBiaW5kaW5ncyBmb3IgRmlsZVJlYWRlciBpbnRlcmZhY2UgYW5kIHR1cm4gb24gRmls
ZVJlYWRlciBzdXBwb3J0IGluIENocm9taXVtLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg2MTUKKworICAgICAgICBBZGQgVjggYmluZGluZ3MgZm9y
IEZpbGVSZWFkZXIgaW50ZXJmYWNlLgorCisgICAgICAgICogV2ViQ29yZS5neXBpOiBBZGQgVjgg
YmluZGluZ3MgcmVsYXRlZCBmaWxlLgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdyYXBwZXI6OmNvbnZlcnRFdmVudFRhcmdl
dFRvVjhPYmplY3QpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEZpbGVSZWFkZXJD
dXN0b20uY3BwOiBBZGRlZC4KKworMjAxMC0wNS0wNSAgSmlhbiBMaSAgPGppYW5saUBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKICAgICAgICAg
RXhwb3NlIEZpbGVSZWFkZXIgaW50ZXJmYWNlLgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg2MDkKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3Jl
Lmd5cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCA4MWVkMDE1Li5mYmNkY2FiIDEwMDY0
NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpA
QCAtMTExLDYgKzExMSw3IEBACiAgICAgICAgICAgICAnaHRtbC9GaWxlLmlkbCcsCiAgICAgICAg
ICAgICAnaHRtbC9GaWxlRXJyb3IuaWRsJywKICAgICAgICAgICAgICdodG1sL0ZpbGVMaXN0Lmlk
bCcsCisgICAgICAgICAgICAnaHRtbC9GaWxlUmVhZGVyLmlkbCcsCiAgICAgICAgICAgICAnaHRt
bC9IVE1MQWxsQ29sbGVjdGlvbi5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTEFuY2hvckVs
ZW1lbnQuaWRsJywKICAgICAgICAgICAgICdodG1sL0hUTUxBcHBsZXRFbGVtZW50LmlkbCcsCkBA
IC03MjEsNiArNzIyLDcgQEAKICAgICAgICAgICAgICdiaW5kaW5ncy92OC9jdXN0b20vVjhFbGVt
ZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRD
dXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudFNvdXJj
ZUNvbnN0cnVjdG9yLmNwcCcsCisgICAgICAgICAgICAnYmluZGluZ3MvdjgvY3VzdG9tL1Y4Rmls
ZVJlYWRlckN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEdl
b2xvY2F0aW9uQ3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvdjgvY3VzdG9tL1Y4
SGlzdG9yeUN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhU
TUxBdWRpb0VsZW1lbnRDb25zdHJ1Y3Rvci5jcHAnLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOERPTVdyYXBwZXIuY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBw
ZXIuY3BwCmluZGV4IGIyZWVlYjQuLjRhOTI1OGIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGlu
Z3MvdjgvVjhET01XcmFwcGVyLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3Jh
cHBlci5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbmNsdWRlICJWOERPTVdpbmRvdy5oIgogI2lu
Y2x1ZGUgIlY4RXZlbnRMaXN0ZW5lckxpc3QuaCIKICNpbmNsdWRlICJWOEV2ZW50U291cmNlLmgi
CisjaW5jbHVkZSAiVjhGaWxlUmVhZGVyLmgiCiAjaW5jbHVkZSAiVjhIVE1MQ29sbGVjdGlvbi5o
IgogI2luY2x1ZGUgIlY4SFRNTERvY3VtZW50LmgiCiAjaW5jbHVkZSAiVjhJc29sYXRlZENvbnRl
eHQuaCIKQEAgLTQxOCw2ICs0MTksMTEgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RE9NV3Jh
cHBlcjo6Y29udmVydEV2ZW50VGFyZ2V0VG9WOE9iamVjdChFdmVudFRhcmdldCogdGEKICAgICAg
ICAgcmV0dXJuIHRvVjgoZXZlbnRTb3VyY2UpOwogI2VuZGlmCiAKKyNpZiBFTkFCTEUoRklMRV9S
RUFERVIpCisgICAgaWYgKEZpbGVSZWFkZXIqIGZpbGVSZWFkZXIgPSB0YXJnZXQtPnRvRmlsZVJl
YWRlcigpKQorICAgICAgICByZXR1cm4gdG9WOChmaWxlUmVhZGVyKTsKKyNlbmRpZgorCiAgICAg
QVNTRVJUKDApOwogICAgIHJldHVybiBub3RIYW5kbGVkQnlJbnRlcmNlcHRvcigpOwogfQpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhGaWxlUmVhZGVyQ3VzdG9tLmNw
cCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RmlsZVJlYWRlckN1c3RvbS5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYTcxZWUxYgotLS0gL2Rldi9udWxsCisr
KyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RmlsZVJlYWRlckN1c3RvbS5jcHAKQEAg
LTAsMCArMSw2OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiAgQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAq
IG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFt
ZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAq
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisg
KiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoRklMRV9SRUFE
RVIpCisKKyNpbmNsdWRlICJWOEZpbGVSZWFkZXIuaCIKKworI2luY2x1ZGUgIlY4QmluZGluZy5o
IgorI2luY2x1ZGUgIlY4UHJveHkuaCIKKyNpbmNsdWRlICJWOFV0aWxpdGllcy5oIgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEZpbGVSZWFkZXI6OmNv
bnN0cnVjdG9yQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBJTkNf
U1RBVFMoIkRPTS5GaWxlUmVhZGVyLkNvbnN0cnVjdG9yIik7CisKKyAgICBpZiAoIWFyZ3MuSXND
b25zdHJ1Y3RDYWxsKCkpCisgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJET00gb2JqZWN0IGN1
c3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLiIpOworCisgICAgLy8gR2V0
IHRoZSBzY3JpcHQgZXhlY3V0aW9uIGNvbnRleHQuCisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCA9IGdldFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKKyAgICBpZiAoIWNvbnRl
eHQpCisgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCJGaWxlUmVhZGVyIGNvbnN0cnVjdG9yJ3Mg
YXNzb2NpYXRlZCBmcmFtZSBpcyBub3QgYXZhaWxhYmxlIiwgVjhQcm94eTo6UmVmZXJlbmNlRXJy
b3IpOworCisgICAgUmVmUHRyPEZpbGVSZWFkZXI+IGZpbGVSZWFkZXIgPSBGaWxlUmVhZGVyOjpj
cmVhdGUoY29udGV4dCk7CisKKyAgICAvLyBTZXR1cCB0aGUgc3RhbmRhcmQgd3JhcHBlciBvYmpl
Y3QgaW50ZXJuYWwgZmllbGRzLgorICAgIFY4RE9NV3JhcHBlcjo6c2V0RE9NV3JhcHBlcihhcmdz
LkhvbGRlcigpLCAmaW5mbywgZmlsZVJlYWRlci5nZXQoKSk7CisKKyAgICAvLyBBZGQgb2JqZWN0
IHRvIHRoZSB3cmFwcGVyIG1hcC4KKyAgICBmaWxlUmVhZGVyLT5yZWYoKTsKKyAgICBWOERPTVdy
YXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdChmaWxlUmVhZGVyLmdldCgpLCB2ODo6UGVy
c2lzdGVudDx2ODo6T2JqZWN0Pjo6TmV3KGFyZ3MuSG9sZGVyKCkpKTsKKworICAgIHJldHVybiBh
cmdzLkhvbGRlcigpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZgpkaWZm
IC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1dlYktpdC9jaHJvbWl1bS9DaGFu
Z2VMb2cKaW5kZXggMTFlNDIyYi4uYjI3OTEzOCAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVt
L0NoYW5nZUxvZworKysgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIg
QEAKKzIwMTAtMDUtMDUgIEppYW4gTGkgIDxqaWFubGlAY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtWOF0gQWRkIFY4IGJpbmRp
bmdzIGZvciBGaWxlUmVhZGVyIGludGVyZmFjZSBhbmQgdHVybiBvbiBGaWxlUmVhZGVyIHN1cHBv
cnQgaW4gQ2hyb21pdW0uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0zODYxNQorCisgICAgICAgICogZmVhdHVyZXMuZ3lwaTogVHVybiBvbiBGaWxlUmVh
ZGVyIHN1cHBvcnQgaW4gQ2hyb21pdW0uCisKIDIwMTAtMDUtMDUgIEhhbnMgV2VubmJvcmcgIDxo
YW5zQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBKZXJlbXkgT3Jsb3cuCmRp
ZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vZmVhdHVyZXMuZ3lwaSBiL1dlYktpdC9jaHJvbWl1
bS9mZWF0dXJlcy5neXBpCmluZGV4IDcxNDY2ODUuLjg3YTZlMDkgMTAwNjQ0Ci0tLSBhL1dlYktp
dC9jaHJvbWl1bS9mZWF0dXJlcy5neXBpCisrKyBiL1dlYktpdC9jaHJvbWl1bS9mZWF0dXJlcy5n
eXBpCkBAIC00Nyw3ICs0Nyw3IEBACiAgICAgICAgICdFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElD
QVRJT05TPTEnLAogICAgICAgICAnRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUPTAnLAogICAgICAg
ICAnRU5BQkxFX0RPTV9TVE9SQUdFPTEnLAotICAgICAgICAnRU5BQkxFX0ZJTEVfUkVBREVSPTAn
LAorICAgICAgICAnRU5BQkxFX0ZJTEVfUkVBREVSPTEnLAogICAgICAgICAnRU5BQkxFX0ZJTEVf
V1JJVEVSPTAnLAogICAgICAgICAnRU5BQkxFX0dFT0xPQ0FUSU9OPTEnLAogICAgICAgICAnRU5B
QkxFX0pBVkFTQ1JJUFRfREVCVUdHRVI9MScsCg==
</data>
<flag name="review"
          id="39307"
          type_id="1"
          status="-"
          setter="abarth"
    />
    <flag name="commit-queue"
          id="39308"
          type_id="3"
          status="-"
          setter="jianli"
    />
          </attachment>
      

    </bug>

</bugzilla>