<?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>27282</bug_id>
          
          <creation_ts>2009-07-14 17:30:20 -0700</creation_ts>
          <short_desc>[V8] Cleanup exception handling in worker evaluation code.</short_desc>
          <delta_ts>2009-07-24 11:03:01 -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>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>25151</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jian Li">jianli</reporter>
          <assigned_to name="Jian Li">jianli</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>levin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>131761</commentid>
    <comment_count>0</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2009-07-14 17:30:20 -0700</bug_when>
    <thetext>Implement the corresponding V8 changes to deal with the problem that workers with syntax errors not firing error event.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131768</commentid>
    <comment_count>1</comment_count>
      <attachid>32752</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2009-07-14 17:37:42 -0700</bug_when>
    <thetext>Created attachment 32752
Proposed Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>133265</commentid>
    <comment_count>2</comment_count>
      <attachid>33115</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2009-07-20 15:27:37 -0700</bug_when>
    <thetext>Created attachment 33115
Proposed Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134376</commentid>
    <comment_count>3</comment_count>
      <attachid>33115</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-07-23 23:09:03 -0700</bug_when>
    <thetext>Comment on attachment 33115
Proposed Patch

This looks good.  Is there any behavior change we can test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134588</commentid>
    <comment_count>4</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2009-07-24 09:59:31 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 33115 [details])
&gt; This looks good.  Is there any behavior change we can test?

The tests are in worker-constructor.html (see patch for bug 27525). This layout test worker-constructor.html will be re-enabled in Chrome until all WebKit patches are landed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134605</commentid>
    <comment_count>5</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2009-07-24 11:03:01 -0700</bug_when>
    <thetext>Committed as http://trac.webkit.org/changeset/46365</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32752</attachid>
            <date>2009-07-14 17:37:42 -0700</date>
            <delta_ts>2009-07-20 15:27:37 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>27282</filename>
            <type>text/plain</type>
            <size>6822</size>
            <attacher name="Jian Li">jianli</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDhlMTJjOC4uOWQ5NWJlYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAwOS0wNy0xNCAgSmlhbiBMaSAgPGpp
YW5saUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQnVnIDI3MjgyIC0gW1Y4XSBJbXBsZW1lbnQgdGhlIGNvcnJlc3BvbmRpbmcg
VjggY2hhbmdlcyB0byBkZWFsIHdpdGggdGhlCisgICAgICAgIHByb2JsZW0gdGhhdCB3b3JrZXJz
IHdpdGggc3ludGF4IGVycm9ycyBub3QgZmlyaW5nIGVycm9yIGV2ZW50LgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjcyODIKKworICAgICAgICBUaGlz
IGNvbnRhaW5zIHRoZSBjb3JyZXNwb25kaW5nIFY4IGNoYW5nZXMgaW4gb3JkZXIgdG8gZml4IGJ1
ZyAyNTE1MS4KKyAgICAgICAgQWxzbyBmaXggYW5kIGNsZWFuIHVwIGEgY291cGxlIHByb2JsZW1z
IGluIHdvcmtlciBldmFsdWF0aW9uIGNvZGUgcGF0aC4KKworICAgICAgICBObyBhZGRpdGlvbmFs
IHRlc3QgaXMgbmVlZGVkLgorCisgICAgICAgICogYmluZGluZ3MvdjgvV29ya2VyQ29udGV4dEV4
ZWN1dGlvblByb3h5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckNvbnRleHRFeGVjdXRp
b25Qcm94eTo6ZXZhbHVhdGUpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1dvcmtlckNvbnRleHRF
eGVjdXRpb25Qcm94eS5oOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyQ29udGV4dEV4ZWN1dGlv
blN0YXRlOjpXb3JrZXJDb250ZXh0RXhlY3V0aW9uU3RhdGUpOgorICAgICAgICAqIGJpbmRpbmdz
L3Y4L1dvcmtlclNjcmlwdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V29ya2Vy
U2NyaXB0Q29udHJvbGxlcjo6ZXZhbHVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyU2Ny
aXB0Q29udHJvbGxlcjo6c2V0RXhjZXB0aW9uKToKKwogMjAwOS0wNy0xNCAgQWRhbSBCYXJ0aCAg
PGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERpbWl0cmkgR2xhemtv
di4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvV29ya2VyQ29udGV4dEV4ZWN1dGlv
blByb3h5LmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvV29ya2VyQ29udGV4dEV4ZWN1dGlvblBy
b3h5LmNwcAppbmRleCA3ODNlZWI1Li5kNThiNmE3IDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1dvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eS5jcHAKKysrIGIvV2ViQ29yZS9iaW5k
aW5ncy92OC9Xb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHkuY3BwCkBAIC0zNDQsMTYgKzM0NCwz
MyBAQCBib29sIFdvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eTo6Zm9yZ2V0VjhFdmVudE9iamVj
dChFdmVudCogZXZlbnQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIH0KIAotdjg6OkxvY2FsPHY4
OjpWYWx1ZT4gV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5OjpldmFsdWF0ZShjb25zdCBTdHJp
bmcmIHNjcmlwdCwgY29uc3QgU3RyaW5nJiBmaWxlTmFtZSwgaW50IGJhc2VMaW5lKQorU2NyaXB0
VmFsdWUgV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5OjpldmFsdWF0ZShjb25zdCBTdHJpbmcm
IHNjcmlwdCwgY29uc3QgU3RyaW5nJiBmaWxlTmFtZSwgaW50IGJhc2VMaW5lLCBXb3JrZXJDb250
ZXh0RXhlY3V0aW9uU3RhdGUqIHN0YXRlKQogewogICAgIHY4OjpIYW5kbGVTY29wZSBoczsKIAog
ICAgIGluaXRDb250ZXh0SWZOZWVkZWQoKTsKICAgICB2ODo6Q29udGV4dDo6U2NvcGUgc2NvcGUo
bV9jb250ZXh0KTsKIAorICAgIHY4OjpUcnlDYXRjaCBleGNlcHRpb25DYXRjaGVyOworCiAgICAg
djg6OkxvY2FsPHY4OjpTdHJpbmc+IHNjcmlwdFN0cmluZyA9IHY4RXh0ZXJuYWxTdHJpbmcoc2Ny
aXB0KTsKICAgICB2ODo6SGFuZGxlPHY4OjpTY3JpcHQ+IGNvbXBpbGVkU2NyaXB0ID0gVjhQcm94
eTo6Y29tcGlsZVNjcmlwdChzY3JpcHRTdHJpbmcsIGZpbGVOYW1lLCBiYXNlTGluZSk7Ci0gICAg
cmV0dXJuIHJ1blNjcmlwdChjb21waWxlZFNjcmlwdCk7CisgICAgdjg6OkxvY2FsPHY4OjpWYWx1
ZT4gcmVzdWx0ID0gcnVuU2NyaXB0KGNvbXBpbGVkU2NyaXB0KTsKKworICAgIGlmIChleGNlcHRp
b25DYXRjaGVyLkhhc0NhdWdodCgpKSB7CisgICAgICAgIHY4OjpMb2NhbDx2ODo6TWVzc2FnZT4g
bWVzc2FnZSA9IGV4Y2VwdGlvbkNhdGNoZXIuTWVzc2FnZSgpOworICAgICAgICBzdGF0ZS0+aGFk
RXhjZXB0aW9uID0gdHJ1ZTsKKyAgICAgICAgc3RhdGUtPmV4Y2VwdGlvbiA9IFNjcmlwdFZhbHVl
KGV4Y2VwdGlvbkNhdGNoZXIuRXhjZXB0aW9uKCkpOworICAgICAgICBzdGF0ZS0+ZXJyb3JNZXNz
YWdlID0gdG9XZWJDb3JlU3RyaW5nKG1lc3NhZ2UtPkdldCgpKTsKKyAgICAgICAgc3RhdGUtPmxp
bmVOdW1iZXIgPSBtZXNzYWdlLT5HZXRMaW5lTnVtYmVyKCk7CisgICAgICAgIHN0YXRlLT5zb3Vy
Y2VVUkwgPSB0b1dlYkNvcmVTdHJpbmcobWVzc2FnZS0+R2V0U2NyaXB0UmVzb3VyY2VOYW1lKCkp
OworICAgIH0gZWxzZQorICAgICAgICBzdGF0ZS0+aGFkRXhjZXB0aW9uID0gZmFsc2U7CisKKyAg
ICBpZiAocmVzdWx0LklzRW1wdHkoKSB8fCByZXN1bHQtPklzVW5kZWZpbmVkKCkpCisgICAgICAg
IHJldHVybiBTY3JpcHRWYWx1ZSgpOworCisgICAgcmV0dXJuIFNjcmlwdFZhbHVlKHJlc3VsdCk7
CiB9CiAKIHY4OjpMb2NhbDx2ODo6VmFsdWU+IFdvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eTo6
cnVuU2NyaXB0KHY4OjpIYW5kbGU8djg6OlNjcmlwdD4gc2NyaXB0KQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9iaW5kaW5ncy92OC9Xb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHkuaCBiL1dlYkNvcmUv
YmluZGluZ3MvdjgvV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5LmgKaW5kZXggMTI2NTA4Ni4u
Mzg3ZTRjNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy92OC9Xb3JrZXJDb250ZXh0RXhl
Y3V0aW9uUHJveHkuaAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1dvcmtlckNvbnRleHRFeGVj
dXRpb25Qcm94eS5oCkBAIC0zNSw2ICszNSw3IEBACiAjaWYgRU5BQkxFKFdPUktFUlMpCiAKICNp
bmNsdWRlIDx2OC5oPgorI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCiAjaW5jbHVkZSAiVjhFdmVu
dExpc3RlbmVyTGlzdC5oIgogI2luY2x1ZGUgIlY4SW5kZXguaCIKICNpbmNsdWRlIDx3dGYvT3du
UHRyLmg+CkBAIC00OCw2ICs0OSwxNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3Mg
VjhXb3JrZXJDb250ZXh0RXZlbnRMaXN0ZW5lcjsKICAgICBjbGFzcyBXb3JrZXJDb250ZXh0Owog
CisgICAgc3RydWN0IFdvcmtlckNvbnRleHRFeGVjdXRpb25TdGF0ZSB7CisgICAgICAgIFdvcmtl
ckNvbnRleHRFeGVjdXRpb25TdGF0ZSgpIDogaGFkRXhjZXB0aW9uKGZhbHNlKSwgbGluZU51bWJl
cigwKSB7IH0KKworICAgICAgICBib29sIGhhZEV4Y2VwdGlvbjsKKyAgICAgICAgU2NyaXB0VmFs
dWUgZXhjZXB0aW9uOworICAgICAgICBTdHJpbmcgZXJyb3JNZXNzYWdlOworICAgICAgICBpbnQg
bGluZU51bWJlcjsKKyAgICAgICAgU3RyaW5nIHNvdXJjZVVSTDsKKyAgICB9OworCiAgICAgY2xh
c3MgV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5IHsKICAgICBwdWJsaWM6CiAgICAgICAgIFdv
cmtlckNvbnRleHRFeGVjdXRpb25Qcm94eShXb3JrZXJDb250ZXh0Kik7CkBAIC03Myw3ICs4NCw3
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCB0cmFja0V2ZW50KEV2ZW50Kik7
CiAKICAgICAgICAgLy8gRXZhbHVhdGUgYSBzY3JpcHQgZmlsZSBpbiB0aGUgY3VycmVudCBleGVj
dXRpb24gZW52aXJvbm1lbnQuCi0gICAgICAgIHY4OjpMb2NhbDx2ODo6VmFsdWU+IGV2YWx1YXRl
KGNvbnN0IFN0cmluZyYgc2NyaXB0LCBjb25zdCBTdHJpbmcmIGZpbGVOYW1lLCBpbnQgYmFzZUxp
bmUpOworICAgICAgICBTY3JpcHRWYWx1ZSBldmFsdWF0ZShjb25zdCBTdHJpbmcmIHNjcmlwdCwg
Y29uc3QgU3RyaW5nJiBmaWxlTmFtZSwgaW50IGJhc2VMaW5lLCBXb3JrZXJDb250ZXh0RXhlY3V0
aW9uU3RhdGUqKTsKIAogICAgICAgICAvLyBSZXR1cm5zIFdvcmtlckNvbnRleHQgb2JqZWN0Lgog
ICAgICAgICBXb3JrZXJDb250ZXh0KiB3b3JrZXJDb250ZXh0KCkgeyByZXR1cm4gbV93b3JrZXJD
b250ZXh0OyB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1dvcmtlclNjcmlwdENv
bnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9Xb3JrZXJTY3JpcHRDb250cm9sbGVy
LmNwcAppbmRleCBkZjFjZTllLi4zYzRmM2E1IDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdz
L3Y4L1dvcmtlclNjcmlwdENvbnRyb2xsZXIuY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mvdjgv
V29ya2VyU2NyaXB0Q29udHJvbGxlci5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlICJT
Y3JpcHRTb3VyY2VDb2RlLmgiCiAjaW5jbHVkZSAiU2NyaXB0VmFsdWUuaCIKICNpbmNsdWRlICJE
T01UaW1lci5oIgorI2luY2x1ZGUgIlY4QmluZGluZy5oIgogI2luY2x1ZGUgIlY4RE9NTWFwLmgi
CiAjaW5jbHVkZSAiVjhQcm94eS5oIgogI2luY2x1ZGUgIldvcmtlckNvbnRleHQuaCIKQEAgLTY4
LDIxICs2OSwzMiBAQCBTY3JpcHRWYWx1ZSBXb3JrZXJTY3JpcHRDb250cm9sbGVyOjpldmFsdWF0
ZShjb25zdCBTY3JpcHRTb3VyY2VDb2RlJiBzb3VyY2VDb2RlKQogICAgICAgICAgICAgcmV0dXJu
IFNjcmlwdFZhbHVlKCk7CiAgICAgfQogCi0gICAgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gcmVzdWx0
ID0gbV9wcm94eS0+ZXZhbHVhdGUoc291cmNlQ29kZS5zb3VyY2UoKSwgc291cmNlQ29kZS51cmwo
KS5zdHJpbmcoKSwgc291cmNlQ29kZS5zdGFydExpbmUoKSAtIDEpOworICAgIFdvcmtlckNvbnRl
eHRFeGVjdXRpb25TdGF0ZSBzdGF0ZTsKKyAgICBTY3JpcHRWYWx1ZSByZXN1bHQgPSBtX3Byb3h5
LT5ldmFsdWF0ZShzb3VyY2VDb2RlLnNvdXJjZSgpLCBzb3VyY2VDb2RlLnVybCgpLnN0cmluZygp
LCBzb3VyY2VDb2RlLnN0YXJ0TGluZSgpIC0gMSwgJnN0YXRlKTsKKyAgICBpZiAoc3RhdGUuaGFk
RXhjZXB0aW9uKQorICAgICAgICBtX3dvcmtlckNvbnRleHQtPnRocmVhZCgpLT53b3JrZXJPYmpl
Y3RQcm94eSgpLnBvc3RFeGNlcHRpb25Ub1dvcmtlck9iamVjdChzdGF0ZS5lcnJvck1lc3NhZ2Us
IHN0YXRlLmxpbmVOdW1iZXIsIHN0YXRlLnNvdXJjZVVSTCk7CisKICAgICBtX3dvcmtlckNvbnRl
eHQtPnRocmVhZCgpLT53b3JrZXJPYmplY3RQcm94eSgpLnJlcG9ydFBlbmRpbmdBY3Rpdml0eSht
X3dvcmtlckNvbnRleHQtPmhhc1BlbmRpbmdBY3Rpdml0eSgpKTsKLSAgICByZXR1cm4gU2NyaXB0
VmFsdWUoKTsKKworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIFNjcmlwdFZhbHVlIFdvcmtlclNj
cmlwdENvbnRyb2xsZXI6OmV2YWx1YXRlKGNvbnN0IFNjcmlwdFNvdXJjZUNvZGUmIHNvdXJjZUNv
ZGUsIFNjcmlwdFZhbHVlKiBleGNlcHRpb24pCiB7Ci0gICAgdjg6OlRyeUNhdGNoIGV4Y2VwdGlv
bkNhdGNoZXI7Ci0gICAgU2NyaXB0VmFsdWUgcmVzdWx0ID0gZXZhbHVhdGUoc291cmNlQ29kZSk7
Ci0gICAgaWYgKGV4Y2VwdGlvbkNhdGNoZXIuSGFzQ2F1Z2h0KCkpIHsKLSAgICAgICAgKmV4Y2Vw
dGlvbiA9IFNjcmlwdFZhbHVlKGV4Y2VwdGlvbkNhdGNoZXIuRXhjZXB0aW9uKCkpOwotICAgICAg
ICB0aHJvd0Vycm9yKGV4Y2VwdGlvbkNhdGNoZXIuRXhjZXB0aW9uKCkpOwotICAgICAgICByZXR1
cm4gU2NyaXB0VmFsdWUoKTsKLSAgICB9IGVsc2UKLSAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAg
ICB7CisgICAgICAgIE11dGV4TG9ja2VyIGxvY2sobV9zaGFyZWREYXRhTXV0ZXgpOworICAgICAg
ICBpZiAobV9leGVjdXRpb25Gb3JiaWRkZW4pCisgICAgICAgICAgICByZXR1cm4gU2NyaXB0VmFs
dWUoKTsKKyAgICB9CisKKyAgICBXb3JrZXJDb250ZXh0RXhlY3V0aW9uU3RhdGUgc3RhdGU7Cisg
ICAgU2NyaXB0VmFsdWUgcmVzdWx0ID0gbV9wcm94eS0+ZXZhbHVhdGUoc291cmNlQ29kZS5zb3Vy
Y2UoKSwgc291cmNlQ29kZS51cmwoKS5zdHJpbmcoKSwgc291cmNlQ29kZS5zdGFydExpbmUoKSAt
IDEsICZzdGF0ZSk7CisgICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbikKKyAgICAgICAgKmV4Y2Vw
dGlvbiA9IHN0YXRlLmV4Y2VwdGlvbjsKKworICAgIG1fd29ya2VyQ29udGV4dC0+dGhyZWFkKCkt
Pndvcmtlck9iamVjdFByb3h5KCkucmVwb3J0UGVuZGluZ0FjdGl2aXR5KG1fd29ya2VyQ29udGV4
dC0+aGFzUGVuZGluZ0FjdGl2aXR5KCkpOworCisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogdm9p
ZCBXb3JrZXJTY3JpcHRDb250cm9sbGVyOjpmb3JiaWRFeGVjdXRpb24oKQpAQCAtOTIsOSArMTA0
LDkgQEAgdm9pZCBXb3JrZXJTY3JpcHRDb250cm9sbGVyOjpmb3JiaWRFeGVjdXRpb24oKQogICAg
IG1fZXhlY3V0aW9uRm9yYmlkZGVuID0gdHJ1ZTsKIH0KIAotdm9pZCBXb3JrZXJTY3JpcHRDb250
cm9sbGVyOjpzZXRFeGNlcHRpb24oU2NyaXB0VmFsdWUgLyogZXhjZXB0aW9uICovKQordm9pZCBX
b3JrZXJTY3JpcHRDb250cm9sbGVyOjpzZXRFeGNlcHRpb24oU2NyaXB0VmFsdWUgZXhjZXB0aW9u
KQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgdGhyb3dFcnJvcigqZXhjZXB0aW9uLnY4
VmFsdWUoKSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33115</attachid>
            <date>2009-07-20 15:27:37 -0700</date>
            <delta_ts>2009-07-23 23:09:03 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>27282_2</filename>
            <type>text/plain</type>
            <size>6207</size>
            <attacher name="Jian Li">jianli</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZmU4YjE0OS4uNjVkNGIxMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAwOS0wNy0yMCAgSmlhbiBMaSAgPGpp
YW5saUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgW1Y4XSBDbGVhbnVwIGV4Y2VwdGlvbiBoYW5kbGluZyBpbiB3b3JrZXIgZXZh
bHVhdGlvbiBjb2RlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjcyODIKKworICAgICAgICAqIGJpbmRpbmdzL3Y4L1dvcmtlckNvbnRleHRFeGVjdXRp
b25Qcm94eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJv
eHk6OmV2YWx1YXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9Xb3JrZXJDb250ZXh0RXhlY3V0
aW9uUHJveHkuaDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlckNvbnRleHRFeGVjdXRpb25TdGF0
ZTo6V29ya2VyQ29udGV4dEV4ZWN1dGlvblN0YXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9X
b3JrZXJTY3JpcHRDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclNjcmlw
dENvbnRyb2xsZXI6OmV2YWx1YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclNjcmlwdENv
bnRyb2xsZXI6OnNldEV4Y2VwdGlvbik6CisKIDIwMDktMDctMjAgIFlvbmcgTGkgIDx5b25nLmxp
QHRvcmNobW9iaWxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIFJvYmVuLgpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9Xb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHku
Y3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9Xb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHkuY3Bw
CmluZGV4IDc4M2VlYjUuLjM3NDlhOWIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvdjgv
V29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5LmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4
L1dvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eS5jcHAKQEAgLTM0NCwxNiArMzQ0LDM0IEBAIGJv
b2wgV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5Ojpmb3JnZXRWOEV2ZW50T2JqZWN0KEV2ZW50
KiBldmVudCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12ODo6TG9jYWw8djg6OlZhbHVl
PiBXb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHk6OmV2YWx1YXRlKGNvbnN0IFN0cmluZyYgc2Ny
aXB0LCBjb25zdCBTdHJpbmcmIGZpbGVOYW1lLCBpbnQgYmFzZUxpbmUpCitTY3JpcHRWYWx1ZSBX
b3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHk6OmV2YWx1YXRlKGNvbnN0IFN0cmluZyYgc2NyaXB0
LCBjb25zdCBTdHJpbmcmIGZpbGVOYW1lLCBpbnQgYmFzZUxpbmUsIFdvcmtlckNvbnRleHRFeGVj
dXRpb25TdGF0ZSogc3RhdGUpCiB7CiAgICAgdjg6OkhhbmRsZVNjb3BlIGhzOwogCiAgICAgaW5p
dENvbnRleHRJZk5lZWRlZCgpOwogICAgIHY4OjpDb250ZXh0OjpTY29wZSBzY29wZShtX2NvbnRl
eHQpOwogCisgICAgdjg6OlRyeUNhdGNoIGV4Y2VwdGlvbkNhdGNoZXI7CisKICAgICB2ODo6TG9j
YWw8djg6OlN0cmluZz4gc2NyaXB0U3RyaW5nID0gdjhFeHRlcm5hbFN0cmluZyhzY3JpcHQpOwog
ICAgIHY4OjpIYW5kbGU8djg6OlNjcmlwdD4gY29tcGlsZWRTY3JpcHQgPSBWOFByb3h5Ojpjb21w
aWxlU2NyaXB0KHNjcmlwdFN0cmluZywgZmlsZU5hbWUsIGJhc2VMaW5lKTsKLSAgICByZXR1cm4g
cnVuU2NyaXB0KGNvbXBpbGVkU2NyaXB0KTsKKyAgICB2ODo6TG9jYWw8djg6OlZhbHVlPiByZXN1
bHQgPSBydW5TY3JpcHQoY29tcGlsZWRTY3JpcHQpOworCisgICAgaWYgKGV4Y2VwdGlvbkNhdGNo
ZXIuSGFzQ2F1Z2h0KCkpIHsKKyAgICAgICAgdjg6OkxvY2FsPHY4OjpNZXNzYWdlPiBtZXNzYWdl
ID0gZXhjZXB0aW9uQ2F0Y2hlci5NZXNzYWdlKCk7CisgICAgICAgIHN0YXRlLT5oYWRFeGNlcHRp
b24gPSB0cnVlOworICAgICAgICBzdGF0ZS0+ZXhjZXB0aW9uID0gU2NyaXB0VmFsdWUoZXhjZXB0
aW9uQ2F0Y2hlci5FeGNlcHRpb24oKSk7CisgICAgICAgIHN0YXRlLT5lcnJvck1lc3NhZ2UgPSB0
b1dlYkNvcmVTdHJpbmcobWVzc2FnZS0+R2V0KCkpOworICAgICAgICBzdGF0ZS0+bGluZU51bWJl
ciA9IG1lc3NhZ2UtPkdldExpbmVOdW1iZXIoKTsKKyAgICAgICAgc3RhdGUtPnNvdXJjZVVSTCA9
IHRvV2ViQ29yZVN0cmluZyhtZXNzYWdlLT5HZXRTY3JpcHRSZXNvdXJjZU5hbWUoKSk7CisgICAg
ICAgIGV4Y2VwdGlvbkNhdGNoZXIuUmVzZXQoKTsKKyAgICB9IGVsc2UKKyAgICAgICAgc3RhdGUt
PmhhZEV4Y2VwdGlvbiA9IGZhbHNlOworCisgICAgaWYgKHJlc3VsdC5Jc0VtcHR5KCkgfHwgcmVz
dWx0LT5Jc1VuZGVmaW5lZCgpKQorICAgICAgICByZXR1cm4gU2NyaXB0VmFsdWUoKTsKKworICAg
IHJldHVybiBTY3JpcHRWYWx1ZShyZXN1bHQpOwogfQogCiB2ODo6TG9jYWw8djg6OlZhbHVlPiBX
b3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHk6OnJ1blNjcmlwdCh2ODo6SGFuZGxlPHY4OjpTY3Jp
cHQ+IHNjcmlwdCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvV29ya2VyQ29udGV4
dEV4ZWN1dGlvblByb3h5LmggYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1dvcmtlckNvbnRleHRFeGVj
dXRpb25Qcm94eS5oCmluZGV4IDEyNjUwODYuLjM4N2U0YzYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
YmluZGluZ3MvdjgvV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5LmgKKysrIGIvV2ViQ29yZS9i
aW5kaW5ncy92OC9Xb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHkuaApAQCAtMzUsNiArMzUsNyBA
QAogI2lmIEVOQUJMRShXT1JLRVJTKQogCiAjaW5jbHVkZSA8djguaD4KKyNpbmNsdWRlICJTY3Jp
cHRWYWx1ZS5oIgogI2luY2x1ZGUgIlY4RXZlbnRMaXN0ZW5lckxpc3QuaCIKICNpbmNsdWRlICJW
OEluZGV4LmgiCiAjaW5jbHVkZSA8d3RmL093blB0ci5oPgpAQCAtNDgsNiArNDksMTYgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIFY4V29ya2VyQ29udGV4dEV2ZW50TGlzdGVuZXI7
CiAgICAgY2xhc3MgV29ya2VyQ29udGV4dDsKIAorICAgIHN0cnVjdCBXb3JrZXJDb250ZXh0RXhl
Y3V0aW9uU3RhdGUgeworICAgICAgICBXb3JrZXJDb250ZXh0RXhlY3V0aW9uU3RhdGUoKSA6IGhh
ZEV4Y2VwdGlvbihmYWxzZSksIGxpbmVOdW1iZXIoMCkgeyB9CisKKyAgICAgICAgYm9vbCBoYWRF
eGNlcHRpb247CisgICAgICAgIFNjcmlwdFZhbHVlIGV4Y2VwdGlvbjsKKyAgICAgICAgU3RyaW5n
IGVycm9yTWVzc2FnZTsKKyAgICAgICAgaW50IGxpbmVOdW1iZXI7CisgICAgICAgIFN0cmluZyBz
b3VyY2VVUkw7CisgICAgfTsKKwogICAgIGNsYXNzIFdvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94
eSB7CiAgICAgcHVibGljOgogICAgICAgICBXb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHkoV29y
a2VyQ29udGV4dCopOwpAQCAtNzMsNyArODQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgIHZvaWQgdHJhY2tFdmVudChFdmVudCopOwogCiAgICAgICAgIC8vIEV2YWx1YXRlIGEgc2Ny
aXB0IGZpbGUgaW4gdGhlIGN1cnJlbnQgZXhlY3V0aW9uIGVudmlyb25tZW50LgotICAgICAgICB2
ODo6TG9jYWw8djg6OlZhbHVlPiBldmFsdWF0ZShjb25zdCBTdHJpbmcmIHNjcmlwdCwgY29uc3Qg
U3RyaW5nJiBmaWxlTmFtZSwgaW50IGJhc2VMaW5lKTsKKyAgICAgICAgU2NyaXB0VmFsdWUgZXZh
bHVhdGUoY29uc3QgU3RyaW5nJiBzY3JpcHQsIGNvbnN0IFN0cmluZyYgZmlsZU5hbWUsIGludCBi
YXNlTGluZSwgV29ya2VyQ29udGV4dEV4ZWN1dGlvblN0YXRlKik7CiAKICAgICAgICAgLy8gUmV0
dXJucyBXb3JrZXJDb250ZXh0IG9iamVjdC4KICAgICAgICAgV29ya2VyQ29udGV4dCogd29ya2Vy
Q29udGV4dCgpIHsgcmV0dXJuIG1fd29ya2VyQ29udGV4dDsgfQpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9iaW5kaW5ncy92OC9Xb3JrZXJTY3JpcHRDb250cm9sbGVyLmNwcCBiL1dlYkNvcmUvYmluZGlu
Z3MvdjgvV29ya2VyU2NyaXB0Q29udHJvbGxlci5jcHAKaW5kZXggZGYxY2U5ZS4uOTkzMTZkYSAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy92OC9Xb3JrZXJTY3JpcHRDb250cm9sbGVyLmNw
cAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1dvcmtlclNjcmlwdENvbnRyb2xsZXIuY3BwCkBA
IC02MiwyNyArNjIsMjkgQEAgV29ya2VyU2NyaXB0Q29udHJvbGxlcjo6fldvcmtlclNjcmlwdENv
bnRyb2xsZXIoKQogCiBTY3JpcHRWYWx1ZSBXb3JrZXJTY3JpcHRDb250cm9sbGVyOjpldmFsdWF0
ZShjb25zdCBTY3JpcHRTb3VyY2VDb2RlJiBzb3VyY2VDb2RlKQogeworICAgIHJldHVybiBldmFs
dWF0ZShzb3VyY2VDb2RlLCAwKTsKK30KKworU2NyaXB0VmFsdWUgV29ya2VyU2NyaXB0Q29udHJv
bGxlcjo6ZXZhbHVhdGUoY29uc3QgU2NyaXB0U291cmNlQ29kZSYgc291cmNlQ29kZSwgU2NyaXB0
VmFsdWUqIGV4Y2VwdGlvbikKK3sKICAgICB7CiAgICAgICAgIE11dGV4TG9ja2VyIGxvY2sobV9z
aGFyZWREYXRhTXV0ZXgpOwogICAgICAgICBpZiAobV9leGVjdXRpb25Gb3JiaWRkZW4pCiAgICAg
ICAgICAgICByZXR1cm4gU2NyaXB0VmFsdWUoKTsKICAgICB9CiAKLSAgICB2ODo6TG9jYWw8djg6
OlZhbHVlPiByZXN1bHQgPSBtX3Byb3h5LT5ldmFsdWF0ZShzb3VyY2VDb2RlLnNvdXJjZSgpLCBz
b3VyY2VDb2RlLnVybCgpLnN0cmluZygpLCBzb3VyY2VDb2RlLnN0YXJ0TGluZSgpIC0gMSk7Cisg
ICAgV29ya2VyQ29udGV4dEV4ZWN1dGlvblN0YXRlIHN0YXRlOworICAgIFNjcmlwdFZhbHVlIHJl
c3VsdCA9IG1fcHJveHktPmV2YWx1YXRlKHNvdXJjZUNvZGUuc291cmNlKCksIHNvdXJjZUNvZGUu
dXJsKCkuc3RyaW5nKCksIHNvdXJjZUNvZGUuc3RhcnRMaW5lKCkgLSAxLCAmc3RhdGUpOworICAg
IGlmIChzdGF0ZS5oYWRFeGNlcHRpb24pIHsKKyAgICAgICAgaWYgKGV4Y2VwdGlvbikKKyAgICAg
ICAgICAgICpleGNlcHRpb24gPSBzdGF0ZS5leGNlcHRpb247CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIG1fd29ya2VyQ29udGV4dC0+cmVwb3J0RXhjZXB0aW9uKHN0YXRlLmVycm9yTWVzc2Fn
ZSwgc3RhdGUubGluZU51bWJlciwgc3RhdGUuc291cmNlVVJMKTsKKyAgICB9CisKICAgICBtX3dv
cmtlckNvbnRleHQtPnRocmVhZCgpLT53b3JrZXJPYmplY3RQcm94eSgpLnJlcG9ydFBlbmRpbmdB
Y3Rpdml0eShtX3dvcmtlckNvbnRleHQtPmhhc1BlbmRpbmdBY3Rpdml0eSgpKTsKLSAgICByZXR1
cm4gU2NyaXB0VmFsdWUoKTsKLX0KIAotU2NyaXB0VmFsdWUgV29ya2VyU2NyaXB0Q29udHJvbGxl
cjo6ZXZhbHVhdGUoY29uc3QgU2NyaXB0U291cmNlQ29kZSYgc291cmNlQ29kZSwgU2NyaXB0VmFs
dWUqIGV4Y2VwdGlvbikKLXsKLSAgICB2ODo6VHJ5Q2F0Y2ggZXhjZXB0aW9uQ2F0Y2hlcjsKLSAg
ICBTY3JpcHRWYWx1ZSByZXN1bHQgPSBldmFsdWF0ZShzb3VyY2VDb2RlKTsKLSAgICBpZiAoZXhj
ZXB0aW9uQ2F0Y2hlci5IYXNDYXVnaHQoKSkgewotICAgICAgICAqZXhjZXB0aW9uID0gU2NyaXB0
VmFsdWUoZXhjZXB0aW9uQ2F0Y2hlci5FeGNlcHRpb24oKSk7Ci0gICAgICAgIHRocm93RXJyb3Io
ZXhjZXB0aW9uQ2F0Y2hlci5FeGNlcHRpb24oKSk7Ci0gICAgICAgIHJldHVybiBTY3JpcHRWYWx1
ZSgpOwotICAgIH0gZWxzZQotICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiByZXN1
bHQ7CiB9CiAKIHZvaWQgV29ya2VyU2NyaXB0Q29udHJvbGxlcjo6Zm9yYmlkRXhlY3V0aW9uKCkK
QEAgLTkyLDkgKzk0LDkgQEAgdm9pZCBXb3JrZXJTY3JpcHRDb250cm9sbGVyOjpmb3JiaWRFeGVj
dXRpb24oKQogICAgIG1fZXhlY3V0aW9uRm9yYmlkZGVuID0gdHJ1ZTsKIH0KIAotdm9pZCBXb3Jr
ZXJTY3JpcHRDb250cm9sbGVyOjpzZXRFeGNlcHRpb24oU2NyaXB0VmFsdWUgLyogZXhjZXB0aW9u
ICovKQordm9pZCBXb3JrZXJTY3JpcHRDb250cm9sbGVyOjpzZXRFeGNlcHRpb24oU2NyaXB0VmFs
dWUgZXhjZXB0aW9uKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgdGhyb3dFcnJvcigq
ZXhjZXB0aW9uLnY4VmFsdWUoKSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>
<flag name="review"
          id="17441"
          type_id="1"
          status="+"
          setter="abarth"
    />
          </attachment>
      

    </bug>

</bugzilla>