<?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>73336</bug_id>
          
          <creation_ts>2011-11-29 10:54:25 -0800</creation_ts>
          <short_desc>Get rid of AllowCrossThreadAccess throughout ThreadableWebSocketChannelClientWrapper</short_desc>
          <delta_ts>2011-11-30 18:33:58 -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>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>73290</dependson>
          <blocked>67942</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Takashi Toyoshima">toyoshim</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>levin</cc>
    
    <cc>levin+threading</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yutak</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>510909</commentid>
    <comment_count>0</comment_count>
    <who name="Takashi Toyoshima">toyoshim</who>
    <bug_when>2011-11-29 10:54:25 -0800</bug_when>
    <thetext>We shouldn&apos;t use &quot;AllowCrossThreadAccess&quot; in ThreadableWebSocketChannelClientWrapper.

Here&apos;s why:
1. It was added to highlight the places where we were not doing anything to help with lifetime of the object being passed.
2. At the time it was added, ThreadSafeRefCounted* objects passed through createCallbackTask did not have the ref count increased, so AllowCrossThreadAccess needed to be added here.
3. ThreadableWebSocketChannelClientWrapper is designed to be ref counted across threads -- largely to make sure that its lifetime is preserved by this call.

This issue is derived from a review in https://bugs.webkit.org/show_bug.cgi?id=73290</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510966</commentid>
    <comment_count>1</comment_count>
      <attachid>117013</attachid>
    <who name="Takashi Toyoshima">toyoshim</who>
    <bug_when>2011-11-29 11:50:56 -0800</bug_when>
    <thetext>Created attachment 117013
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510967</commentid>
    <comment_count>2</comment_count>
      <attachid>117013</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2011-11-29 11:52:36 -0800</bug_when>
    <thetext>Comment on attachment 117013
Patch

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510970</commentid>
    <comment_count>3</comment_count>
    <who name="Takashi Toyoshima">toyoshim</who>
    <bug_when>2011-11-29 11:57:24 -0800</bug_when>
    <thetext>Thank YOU, too for good advice :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512314</commentid>
    <comment_count>4</comment_count>
      <attachid>117013</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-30 18:33:53 -0800</bug_when>
    <thetext>Comment on attachment 117013
Patch

Clearing flags on attachment: 117013

Committed r101583: &lt;http://trac.webkit.org/changeset/101583&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512315</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-30 18:33:58 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117013</attachid>
            <date>2011-11-29 11:50:56 -0800</date>
            <delta_ts>2011-11-30 18:33:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>Patch</filename>
            <type>text/plain</type>
            <size>10574</size>
            <attacher name="Takashi Toyoshima">toyoshim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlOTQ5NjRkLi45NmUxYmMzIDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjkg
QEAKIDIwMTEtMTEtMjkgIFRha2FzaGkgVG95b3NoaW1hICA8dG95b3NoaW1AY2hyb21pdW0ub3Jn
PgogCisgICAgICAgIEdldCByaWQgb2YgQWxsb3dDcm9zc1RocmVhZEFjY2VzcyB0aHJvdWdob3V0
IFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlci4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTczMzM2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgaXQg
Y29udGFpbnMgbm8gZnVuY3Rpb25hbCBjaGFuZ2UuCisKKyAgICAgICAgKiB3ZWJzb2NrZXRzL1Ro
cmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZENvbm5lY3Qp
OgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFw
cGVyOjpkaWRSZWNlaXZlTWVzc2FnZSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlV2Vi
U29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZFJlY2VpdmVCaW5hcnlEYXRhKToKKyAgICAg
ICAgKFdlYkNvcmU6OlRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlcjo6ZGlk
VXBkYXRlQnVmZmVyZWRBbW91bnQpOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZVdlYlNv
Y2tldENoYW5uZWxDbGllbnRXcmFwcGVyOjpkaWRTdGFydENsb3NpbmdIYW5kc2hha2UpOgorICAg
ICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyOjpk
aWRDbG9zZSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENs
aWVudFdyYXBwZXI6OmRpZENvbm5lY3RDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUaHJl
YWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZFJlY2VpdmVNZXNzYWdlQ2Fs
bGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGll
bnRXcmFwcGVyOjpkaWRSZWNlaXZlQmluYXJ5RGF0YUNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNv
cmU6OlRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlcjo6ZGlkVXBkYXRlQnVm
ZmVyZWRBbW91bnRDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlV2ViU29j
a2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZFN0YXJ0Q2xvc2luZ0hhbmRzaGFrZUNhbGxiYWNr
KToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3Jh
cHBlcjo6ZGlkQ2xvc2VDYWxsYmFjayk6CisgICAgICAgICogd2Vic29ja2V0cy9UaHJlYWRhYmxl
V2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXIuaDoKKworMjAxMS0xMS0yOSAgVGFrYXNoaSBU
b3lvc2hpbWEgIDx0b3lvc2hpbUBjaHJvbWl1bS5vcmc+CisKICAgICAgICAgQWRkIGRpZFVwZGF0
ZUJ1ZmZlcmVkQW1vdW50KCkgY2FsbGJhY2sgdG8gU29ja2V0U3RyZWFtSGFuZGxlQ2xpZW50CiAg
ICAgICAgIGFuZCBXZWJTb2NrZXRDaGFubmVsQ2xpZW50LgogICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzMyOTAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3dlYnNvY2tldHMvVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3dlYnNvY2tldHMvVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxD
bGllbnRXcmFwcGVyLmNwcAppbmRleCBmMzhkMmQ2Li4zYmUwNGE5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS93ZWJzb2NrZXRzL1RocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3Jh
cHBlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd2Vic29ja2V0cy9UaHJlYWRhYmxlV2ViU29j
a2V0Q2hhbm5lbENsaWVudFdyYXBwZXIuY3BwCkBAIC0xMjQsNDIgKzEyNCw0MiBAQCB2b2lkIFRo
cmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlcjo6Y2xlYXJDbGllbnQoKQogCiB2
b2lkIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlcjo6ZGlkQ29ubmVjdCgp
CiB7Ci0gICAgbV9wZW5kaW5nVGFza3MuYXBwZW5kKGNyZWF0ZUNhbGxiYWNrVGFzaygmVGhyZWFk
YWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyOjpkaWRDb25uZWN0Q2FsbGJhY2ssIEFs
bG93Q3Jvc3NUaHJlYWRBY2Nlc3ModGhpcykpKTsKKyAgICBtX3BlbmRpbmdUYXNrcy5hcHBlbmQo
Y3JlYXRlQ2FsbGJhY2tUYXNrKCZkaWRDb25uZWN0Q2FsbGJhY2ssIHRoaXMpKTsKICAgICBpZiAo
IW1fc3VzcGVuZGVkKQogICAgICAgICBwcm9jZXNzUGVuZGluZ1Rhc2tzKCk7CiB9CiAKIHZvaWQg
VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyOjpkaWRSZWNlaXZlTWVzc2Fn
ZShjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCiB7Ci0gICAgbV9wZW5kaW5nVGFza3MuYXBwZW5kKGNy
ZWF0ZUNhbGxiYWNrVGFzaygmVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVy
OjpkaWRSZWNlaXZlTWVzc2FnZUNhbGxiYWNrLCBBbGxvd0Nyb3NzVGhyZWFkQWNjZXNzKHRoaXMp
LCBtZXNzYWdlKSk7CisgICAgbV9wZW5kaW5nVGFza3MuYXBwZW5kKGNyZWF0ZUNhbGxiYWNrVGFz
aygmZGlkUmVjZWl2ZU1lc3NhZ2VDYWxsYmFjaywgdGhpcywgbWVzc2FnZSkpOwogICAgIGlmICgh
bV9zdXNwZW5kZWQpCiAgICAgICAgIHByb2Nlc3NQZW5kaW5nVGFza3MoKTsKIH0KIAogdm9pZCBU
aHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZFJlY2VpdmVCaW5hcnlE
YXRhKFBhc3NPd25QdHI8VmVjdG9yPGNoYXI+ID4gYmluYXJ5RGF0YSkKIHsKLSAgICBtX3BlbmRp
bmdUYXNrcy5hcHBlbmQoY3JlYXRlQ2FsbGJhY2tUYXNrKCZUaHJlYWRhYmxlV2ViU29ja2V0Q2hh
bm5lbENsaWVudFdyYXBwZXI6OmRpZFJlY2VpdmVCaW5hcnlEYXRhQ2FsbGJhY2ssIEFsbG93Q3Jv
c3NUaHJlYWRBY2Nlc3ModGhpcyksIGJpbmFyeURhdGEpKTsKKyAgICBtX3BlbmRpbmdUYXNrcy5h
cHBlbmQoY3JlYXRlQ2FsbGJhY2tUYXNrKCZkaWRSZWNlaXZlQmluYXJ5RGF0YUNhbGxiYWNrLCB0
aGlzLCBiaW5hcnlEYXRhKSk7CiAgICAgaWYgKCFtX3N1c3BlbmRlZCkKICAgICAgICAgcHJvY2Vz
c1BlbmRpbmdUYXNrcygpOwogfQogCiB2b2lkIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xp
ZW50V3JhcHBlcjo6ZGlkVXBkYXRlQnVmZmVyZWRBbW91bnQodW5zaWduZWQgbG9uZyBidWZmZXJl
ZEFtb3VudCkKIHsKLSAgICBtX3BlbmRpbmdUYXNrcy5hcHBlbmQoY3JlYXRlQ2FsbGJhY2tUYXNr
KCZUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZFVwZGF0ZUJ1ZmZl
cmVkQW1vdW50Q2FsbGJhY2ssIEFsbG93Q3Jvc3NUaHJlYWRBY2Nlc3ModGhpcyksIGJ1ZmZlcmVk
QW1vdW50KSk7CisgICAgbV9wZW5kaW5nVGFza3MuYXBwZW5kKGNyZWF0ZUNhbGxiYWNrVGFzaygm
ZGlkVXBkYXRlQnVmZmVyZWRBbW91bnRDYWxsYmFjaywgdGhpcywgYnVmZmVyZWRBbW91bnQpKTsK
ICAgICBpZiAoIW1fc3VzcGVuZGVkKQogICAgICAgICBwcm9jZXNzUGVuZGluZ1Rhc2tzKCk7CiB9
CiAKIHZvaWQgVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyOjpkaWRTdGFy
dENsb3NpbmdIYW5kc2hha2UoKQogewotICAgIG1fcGVuZGluZ1Rhc2tzLmFwcGVuZChjcmVhdGVD
YWxsYmFja1Rhc2soJlRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlcjo6ZGlk
U3RhcnRDbG9zaW5nSGFuZHNoYWtlQ2FsbGJhY2ssIEFsbG93Q3Jvc3NUaHJlYWRBY2Nlc3ModGhp
cykpKTsKKyAgICBtX3BlbmRpbmdUYXNrcy5hcHBlbmQoY3JlYXRlQ2FsbGJhY2tUYXNrKCZkaWRT
dGFydENsb3NpbmdIYW5kc2hha2VDYWxsYmFjaywgdGhpcykpOwogICAgIGlmICghbV9zdXNwZW5k
ZWQpCiAgICAgICAgIHByb2Nlc3NQZW5kaW5nVGFza3MoKTsKIH0KIAogdm9pZCBUaHJlYWRhYmxl
V2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZENsb3NlKHVuc2lnbmVkIGxvbmcgdW5o
YW5kbGVkQnVmZmVyZWRBbW91bnQsIFdlYlNvY2tldENoYW5uZWxDbGllbnQ6OkNsb3NpbmdIYW5k
c2hha2VDb21wbGV0aW9uU3RhdHVzIGNsb3NpbmdIYW5kc2hha2VDb21wbGV0aW9uLCB1bnNpZ25l
ZCBzaG9ydCBjb2RlLCBjb25zdCBTdHJpbmcmIHJlYXNvbikKIHsKLSAgICBtX3BlbmRpbmdUYXNr
cy5hcHBlbmQoY3JlYXRlQ2FsbGJhY2tUYXNrKCZUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENs
aWVudFdyYXBwZXI6OmRpZENsb3NlQ2FsbGJhY2ssIEFsbG93Q3Jvc3NUaHJlYWRBY2Nlc3ModGhp
cyksIHVuaGFuZGxlZEJ1ZmZlcmVkQW1vdW50LCBjbG9zaW5nSGFuZHNoYWtlQ29tcGxldGlvbiwg
Y29kZSwgcmVhc29uKSk7CisgICAgbV9wZW5kaW5nVGFza3MuYXBwZW5kKGNyZWF0ZUNhbGxiYWNr
VGFzaygmZGlkQ2xvc2VDYWxsYmFjaywgdGhpcywgdW5oYW5kbGVkQnVmZmVyZWRBbW91bnQsIGNs
b3NpbmdIYW5kc2hha2VDb21wbGV0aW9uLCBjb2RlLCByZWFzb24pKTsKICAgICBpZiAoIW1fc3Vz
cGVuZGVkKQogICAgICAgICBwcm9jZXNzUGVuZGluZ1Rhc2tzKCk7CiB9CkBAIC0xODQsNDIgKzE4
NCw0MiBAQCB2b2lkIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlcjo6cHJv
Y2Vzc1BlbmRpbmdUYXNrcygpCiAgICAgICAgICgqaXRlciktPnBlcmZvcm1UYXNrKDApOwogfQog
Ci12b2lkIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlcjo6ZGlkQ29ubmVj
dENhbGxiYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFRocmVhZGFibGVXZWJT
b2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlciogd3JhcHBlcikKK3ZvaWQgVGhyZWFkYWJsZVdlYlNv
Y2tldENoYW5uZWxDbGllbnRXcmFwcGVyOjpkaWRDb25uZWN0Q2FsbGJhY2soU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5l
bENsaWVudFdyYXBwZXI+IHdyYXBwZXIpCiB7CiAgICAgQVNTRVJUX1VOVVNFRChjb250ZXh0LCAh
Y29udGV4dCk7CiAgICAgaWYgKHdyYXBwZXItPm1fY2xpZW50KQogICAgICAgICB3cmFwcGVyLT5t
X2NsaWVudC0+ZGlkQ29ubmVjdCgpOwogfQogCi12b2lkIFRocmVhZGFibGVXZWJTb2NrZXRDaGFu
bmVsQ2xpZW50V3JhcHBlcjo6ZGlkUmVjZWl2ZU1lc3NhZ2VDYWxsYmFjayhTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBjb250ZXh0LCBUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBw
ZXIqIHdyYXBwZXIsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKK3ZvaWQgVGhyZWFkYWJsZVdlYlNv
Y2tldENoYW5uZWxDbGllbnRXcmFwcGVyOjpkaWRSZWNlaXZlTWVzc2FnZUNhbGxiYWNrKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8VGhyZWFkYWJsZVdlYlNvY2tl
dENoYW5uZWxDbGllbnRXcmFwcGVyPiB3cmFwcGVyLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCiB7
CiAgICAgQVNTRVJUX1VOVVNFRChjb250ZXh0LCAhY29udGV4dCk7CiAgICAgaWYgKHdyYXBwZXIt
Pm1fY2xpZW50KQogICAgICAgICB3cmFwcGVyLT5tX2NsaWVudC0+ZGlkUmVjZWl2ZU1lc3NhZ2Uo
bWVzc2FnZSk7CiB9CiAKLXZvaWQgVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFw
cGVyOjpkaWRSZWNlaXZlQmluYXJ5RGF0YUNhbGxiYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IGNvbnRleHQsIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlciogd3JhcHBl
ciwgUGFzc093blB0cjxWZWN0b3I8Y2hhcj4gPiBiaW5hcnlEYXRhKQordm9pZCBUaHJlYWRhYmxl
V2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZFJlY2VpdmVCaW5hcnlEYXRhQ2FsbGJh
Y2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxUaHJlYWRhYmxl
V2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI+IHdyYXBwZXIsIFBhc3NPd25QdHI8VmVjdG9y
PGNoYXI+ID4gYmluYXJ5RGF0YSkKIHsKICAgICBBU1NFUlRfVU5VU0VEKGNvbnRleHQsICFjb250
ZXh0KTsKICAgICBpZiAod3JhcHBlci0+bV9jbGllbnQpCiAgICAgICAgIHdyYXBwZXItPm1fY2xp
ZW50LT5kaWRSZWNlaXZlQmluYXJ5RGF0YShiaW5hcnlEYXRhKTsKIH0KIAotdm9pZCBUaHJlYWRh
YmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZFVwZGF0ZUJ1ZmZlcmVkQW1vdW50
Q2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgVGhyZWFkYWJsZVdlYlNv
Y2tldENoYW5uZWxDbGllbnRXcmFwcGVyKiB3cmFwcGVyLCB1bnNpZ25lZCBsb25nIGJ1ZmZlcmVk
QW1vdW50KQordm9pZCBUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRp
ZFVwZGF0ZUJ1ZmZlcmVkQW1vdW50Q2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29u
dGV4dCwgUGFzc1JlZlB0cjxUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI+
IHdyYXBwZXIsIHVuc2lnbmVkIGxvbmcgYnVmZmVyZWRBbW91bnQpCiB7CiAgICAgQVNTRVJUX1VO
VVNFRChjb250ZXh0LCAhY29udGV4dCk7CiAgICAgaWYgKHdyYXBwZXItPm1fY2xpZW50KQogICAg
ICAgICB3cmFwcGVyLT5tX2NsaWVudC0+ZGlkVXBkYXRlQnVmZmVyZWRBbW91bnQoYnVmZmVyZWRB
bW91bnQpOwogfQogCi12b2lkIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBl
cjo6ZGlkU3RhcnRDbG9zaW5nSGFuZHNoYWtlQ2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCwgVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyKiB3cmFw
cGVyKQordm9pZCBUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI6OmRpZFN0
YXJ0Q2xvc2luZ0hhbmRzaGFrZUNhbGxiYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRl
eHQsIFBhc3NSZWZQdHI8VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyPiB3
cmFwcGVyKQogewogICAgIEFTU0VSVF9VTlVTRUQoY29udGV4dCwgIWNvbnRleHQpOwogICAgIGlm
ICh3cmFwcGVyLT5tX2NsaWVudCkKICAgICAgICAgd3JhcHBlci0+bV9jbGllbnQtPmRpZFN0YXJ0
Q2xvc2luZ0hhbmRzaGFrZSgpOwogfQogCi12b2lkIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVs
Q2xpZW50V3JhcHBlcjo6ZGlkQ2xvc2VDYWxsYmFjayhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBj
b250ZXh0LCBUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXIqIHdyYXBwZXIs
IHVuc2lnbmVkIGxvbmcgdW5oYW5kbGVkQnVmZmVyZWRBbW91bnQsIFdlYlNvY2tldENoYW5uZWxD
bGllbnQ6OkNsb3NpbmdIYW5kc2hha2VDb21wbGV0aW9uU3RhdHVzIGNsb3NpbmdIYW5kc2hha2VD
b21wbGV0aW9uLCB1bnNpZ25lZCBzaG9ydCBjb2RlLCBjb25zdCBTdHJpbmcmIHJlYXNvbikKK3Zv
aWQgVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyOjpkaWRDbG9zZUNhbGxi
YWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8VGhyZWFkYWJs
ZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyPiB3cmFwcGVyLCB1bnNpZ25lZCBsb25nIHVu
aGFuZGxlZEJ1ZmZlcmVkQW1vdW50LCBXZWJTb2NrZXRDaGFubmVsQ2xpZW50OjpDbG9zaW5nSGFu
ZHNoYWtlQ29tcGxldGlvblN0YXR1cyBjbG9zaW5nSGFuZHNoYWtlQ29tcGxldGlvbiwgdW5zaWdu
ZWQgc2hvcnQgY29kZSwgY29uc3QgU3RyaW5nJiByZWFzb24pCiB7CiAgICAgQVNTRVJUX1VOVVNF
RChjb250ZXh0LCAhY29udGV4dCk7CiAgICAgaWYgKHdyYXBwZXItPm1fY2xpZW50KQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd2Vic29ja2V0cy9UaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5l
bENsaWVudFdyYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3dlYnNvY2tldHMvVGhyZWFkYWJsZVdl
YlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyLmgKaW5kZXggMjg2MWUyYS4uZWM5Mzk3YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd2Vic29ja2V0cy9UaHJlYWRhYmxlV2ViU29ja2V0Q2hh
bm5lbENsaWVudFdyYXBwZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93ZWJzb2NrZXRzL1RocmVh
ZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlci5oCkBAIC04NSwxMiArODUsMTIgQEAg
cHJvdGVjdGVkOgogICAgIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlcihX
ZWJTb2NrZXRDaGFubmVsQ2xpZW50Kik7CiAKICAgICB2b2lkIHByb2Nlc3NQZW5kaW5nVGFza3Mo
KTsKLSAgICBzdGF0aWMgdm9pZCBkaWRDb25uZWN0Q2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCosIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlciopOwotICAgIHN0
YXRpYyB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlQ2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCosIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlciosIGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSk7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZUJpbmFyeURhdGFDYWxsYmFj
ayhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGll
bnRXcmFwcGVyKiwgUGFzc093blB0cjxWZWN0b3I8Y2hhcj4gPik7Ci0gICAgc3RhdGljIHZvaWQg
ZGlkVXBkYXRlQnVmZmVyZWRBbW91bnRDYWxsYmFjayhTY3JpcHRFeGVjdXRpb25Db250ZXh0Kiwg
VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyKiwgdW5zaWduZWQgbG9uZyBi
dWZmZXJlZEFtb3VudCk7Ci0gICAgc3RhdGljIHZvaWQgZGlkU3RhcnRDbG9zaW5nSGFuZHNoYWtl
Q2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFRocmVhZGFibGVXZWJTb2NrZXRDaGFu
bmVsQ2xpZW50V3JhcHBlciopOwotICAgIHN0YXRpYyB2b2lkIGRpZENsb3NlQ2FsbGJhY2soU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCosIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3Jh
cHBlciosIHVuc2lnbmVkIGxvbmcgdW5oYW5kbGVkQnVmZmVyZWRBbW91bnQsIFdlYlNvY2tldENo
YW5uZWxDbGllbnQ6OkNsb3NpbmdIYW5kc2hha2VDb21wbGV0aW9uU3RhdHVzLCB1bnNpZ25lZCBz
aG9ydCBjb2RlLCBjb25zdCBTdHJpbmcmIHJlYXNvbik7CisgICAgc3RhdGljIHZvaWQgZGlkQ29u
bmVjdENhbGxiYWNrKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFRocmVhZGFi
bGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlcj4pOworICAgIHN0YXRpYyB2b2lkIGRpZFJl
Y2VpdmVNZXNzYWdlQ2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8
VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyPiwgY29uc3QgU3RyaW5nJiBt
ZXNzYWdlKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlQmluYXJ5RGF0YUNhbGxiYWNrKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPFRocmVhZGFibGVXZWJTb2NrZXRDaGFu
bmVsQ2xpZW50V3JhcHBlcj4sIFBhc3NPd25QdHI8VmVjdG9yPGNoYXI+ID4pOworICAgIHN0YXRp
YyB2b2lkIGRpZFVwZGF0ZUJ1ZmZlcmVkQW1vdW50Q2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCosIFBhc3NSZWZQdHI8VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVy
PiwgdW5zaWduZWQgbG9uZyBidWZmZXJlZEFtb3VudCk7CisgICAgc3RhdGljIHZvaWQgZGlkU3Rh
cnRDbG9zaW5nSGFuZHNoYWtlQ2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NS
ZWZQdHI8VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVyPik7CisgICAgc3Rh
dGljIHZvaWQgZGlkQ2xvc2VDYWxsYmFjayhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1Jl
ZlB0cjxUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXI+LCB1bnNpZ25lZCBs
b25nIHVuaGFuZGxlZEJ1ZmZlcmVkQW1vdW50LCBXZWJTb2NrZXRDaGFubmVsQ2xpZW50OjpDbG9z
aW5nSGFuZHNoYWtlQ29tcGxldGlvblN0YXR1cywgdW5zaWduZWQgc2hvcnQgY29kZSwgY29uc3Qg
U3RyaW5nJiByZWFzb24pOwogCiAgICAgV2ViU29ja2V0Q2hhbm5lbENsaWVudCogbV9jbGllbnQ7
CiAgICAgYm9vbCBtX3N5bmNNZXRob2REb25lOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>