<?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>136325</bug_id>
          
          <creation_ts>2014-08-27 17:29:02 -0700</creation_ts>
          <short_desc>Pass the resource identifier in willSendRequest callback; and pass pageIsProvisionallyLoading flag in didInitiateLoadForResource.</short_desc>
          <delta_ts>2014-09-02 16:09:18 -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>WebKit2</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yongjun Zhang">yongjun_zhang</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>mitz</cc>
    
    <cc>sam</cc>
    
    <cc>thorton</cc>
    
    <cc>yongjun_zhang</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1031854</commentid>
    <comment_count>0</comment_count>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2014-08-27 17:29:02 -0700</bug_when>
    <thetext>The delegate method webProcessPlugInBrowserContextController:frame:willSendRequest:redirectResponse: in WKWebProcessPlugInLoadDelegate doesn&apos;t pass the resource identifier, we should add it back, like we did with didInitialLoadForResource: method.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1031856</commentid>
    <comment_count>1</comment_count>
      <attachid>237274</attachid>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2014-08-27 17:33:22 -0700</bug_when>
    <thetext>Created attachment 237274
Patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1031857</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-08-27 17:36:13 -0700</bug_when>
    <thetext>Attachment 237274 did not pass style-queue:


ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:234:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:236:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:237:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 3 in 3 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>1031859</commentid>
    <comment_count>3</comment_count>
      <attachid>237275</attachid>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2014-08-27 17:45:42 -0700</bug_when>
    <thetext>Created attachment 237275
Fix style issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1032181</commentid>
    <comment_count>4</comment_count>
      <attachid>237275</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-08-29 10:03:27 -0700</bug_when>
    <thetext>Comment on attachment 237275
Fix style issue.

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

&gt; Source/WebKit2/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h:54
&gt; +- (NSURLRequest *)webProcessPlugInBrowserContextController:(WKWebProcessPlugInBrowserContextController *)controller frame:(WKWebProcessPlugInFrame *)frame willSendRequestForResource:(uint64_t)resource request:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse;

How can we just change a protocol like this in public API? Don’t we need to keep existing clients compatible? I think there’s a pattern we need to follow here to deprecate an old method signature and replace it with a new one, calling the old one if the new one isn’t present.

Or maybe this isn’t public API yet?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1032189</commentid>
    <comment_count>5</comment_count>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2014-08-29 10:55:48 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 237275 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=237275&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h:54
&gt; &gt; +- (NSURLRequest *)webProcessPlugInBrowserContextController:(WKWebProcessPlugInBrowserContextController *)controller frame:(WKWebProcessPlugInFrame *)frame willSendRequestForResource:(uint64_t)resource request:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse;
&gt; 
&gt; How can we just change a protocol like this in public API? Don’t we need to keep existing clients compatible? I think there’s a pattern we need to follow here to deprecate an old method signature and replace it with a new one, calling the old one if the new one isn’t present.
&gt; 
&gt; Or maybe this isn’t public API yet?

No, this is not public API yet and it is subject to change.  That said, I think it is better to follow the staging pattern that falls back to old signature if the new method isn&apos;t implemented by the delegate.  And we can remove the check when all client are moving to the new method.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1032288</commentid>
    <comment_count>6</comment_count>
      <attachid>237389</attachid>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2014-08-29 16:38:41 -0700</bug_when>
    <thetext>Created attachment 237389
Revise patch; falls back to old delegate methods if the new ones are not implemented by a client.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1032290</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-08-29 16:44:58 -0700</bug_when>
    <thetext>Attachment 237389 did not pass style-queue:


ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:234:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:236:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:237:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:244:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:245:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:246:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:263:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:265:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 8 in 3 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>1032736</commentid>
    <comment_count>8</comment_count>
      <attachid>237513</attachid>
    <who name="Yongjun Zhang">yongjun_zhang</who>
    <bug_when>2014-09-02 14:06:10 -0700</bug_when>
    <thetext>Created attachment 237513
Fi style issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1032777</commentid>
    <comment_count>9</comment_count>
      <attachid>237513</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-09-02 16:09:15 -0700</bug_when>
    <thetext>Comment on attachment 237513
Fi style issues.

Clearing flags on attachment: 237513

Committed r173191: &lt;http://trac.webkit.org/changeset/173191&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1032778</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-09-02 16:09:18 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>237274</attachid>
            <date>2014-08-27 17:33:22 -0700</date>
            <delta_ts>2014-08-27 17:45:42 -0700</delta_ts>
            <desc>Patch.</desc>
            <filename>resource_id_delegate.patch</filename>
            <type>text/plain</type>
            <size>5092</size>
            <attacher name="Yongjun Zhang">yongjun_zhang</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MzAzOCkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE0LTA4LTI3ICBZb25nanVu
IFpoYW5nICA8eW9uZ2p1bl96aGFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUGFzcyB0aGUgcmVz
b3VyY2UgaWRlbnRpZmllciBpbiB3aWxsU2VuZFJlcXVlc3QgY2FsbGJhY2suCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzYzMjUKKworICAgICAgICBD
aGFuZ2UgV0tXZWJQcm9jZXNzUGx1Z0luTG9hZERlbGVnYXRlIGRlbGVnYXRlIG1ldGhvZCB3ZWJQ
cm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOmZyYW1lOndpbGxTZW5kUmVxdWVz
dDpyZWRpcmVjdFJlc3BvbnNlOiB0bworICAgICAgICB3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNv
bnRleHRDb250cm9sbGVyOmZyYW1lOndpbGxTZW5kUmVxdWVzdEZvclJlc291cmNlOnJlcXVlc3Q6
cmVkaXJlY3RSZXNwb25zZTogc28gdGhhdCB3ZSBjYW4gcGFzcyB0aGUgcmVzb3VyY2UgaWRlbnRp
ZmllcgorICAgICAgICB0byBsb2FkIGRlbGVnYXRlLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkv
Q29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luTG9hZERlbGVnYXRlLmg6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvbWFjL1dLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250
ZXh0Q29udHJvbGxlci5tbToKKyAgICAgICAgKHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKToKKwog
MjAxNC0wOC0yNyAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAg
ICAgICBPY2Nhc2lvbmFsIGNyYXNoZXMgaW4gY29tbWl0VHJhbnNpZW50Wm9vbSdzIHRyYW5zYWN0
aW9uIGNvbXBsZXRpb24gYmxvY2sKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvQVBJL0NvY29hL1dLV2ViUHJvY2Vzc1BsdWdJbkxvYWREZWxlZ2F0ZS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJ
L0NvY29hL1dLV2ViUHJvY2Vzc1BsdWdJbkxvYWREZWxlZ2F0ZS5oCShyZXZpc2lvbiAxNzMwMDgp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9X
S1dlYlByb2Nlc3NQbHVnSW5Mb2FkRGVsZWdhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtNTEsNyAr
NTEsNyBAQAogCiAvLyBSZXNvdXJjZSBsb2FkaW5nCiAKLS0gKE5TVVJMUmVxdWVzdCAqKXdlYlBy
b2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJy
b3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgZnJhbWU6KFdLV2ViUHJvY2Vzc1Bs
dWdJbkZyYW1lICopZnJhbWUgd2lsbFNlbmRSZXF1ZXN0OihOU1VSTFJlcXVlc3QgKilyZXF1ZXN0
IHJlZGlyZWN0UmVzcG9uc2U6KE5TVVJMUmVzcG9uc2UgKilyZWRpcmVjdFJlc3BvbnNlOworLSAo
TlNVUkxSZXF1ZXN0ICopd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjoo
V0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICopY29udHJvbGxlciBm
cmFtZTooV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUgKilmcmFtZSB3aWxsU2VuZFJlcXVlc3RGb3JS
ZXNvdXJjZToodWludDY0X3QpcmVzb3VyY2UgcmVxdWVzdDooTlNVUkxSZXF1ZXN0ICopcmVxdWVz
dCByZWRpcmVjdFJlc3BvbnNlOihOU1VSTFJlc3BvbnNlICopcmVkaXJlY3RSZXNwb25zZTsKIAog
LSAodm9pZCl3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOihXS1dlYlBy
b2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIgKiljb250cm9sbGVyIGZyYW1lOihX
S1dlYlByb2Nlc3NQbHVnSW5GcmFtZSAqKWZyYW1lIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNl
Oih1aW50NjRfdClyZXNvdXJjZSByZXF1ZXN0OihOU1VSTFJlcXVlc3QgKilyZXF1ZXN0OwogLSAo
dm9pZCl3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOihXS1dlYlByb2Nl
c3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIgKiljb250cm9sbGVyIGZyYW1lOihXS1dl
YlByb2Nlc3NQbHVnSW5GcmFtZSAqKWZyYW1lIGRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZToodWlu
dDY0X3QpcmVzb3VyY2U7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9tYWMvV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVy
Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvQVBJL21hYy9XS1dlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIubW0J
KHJldmlzaW9uIDE3MzAwOCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL21hYy9XS1dlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIu
bW0JKHdvcmtpbmcgY29weSkKQEAgLTIyMywxNSArMjIzLDE4IEBAIHN0YXRpYyB2b2lkIHNldFVw
UGFnZUxvYWRlckNsaWVudChXS1dlYlAKICAgICBwYWdlLmluaXRpYWxpemVJbmplY3RlZEJ1bmRs
ZUxvYWRlckNsaWVudCgmY2xpZW50LmJhc2UpOwogfQogCi1zdGF0aWMgV0tVUkxSZXF1ZXN0UmVm
IHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwgV0tCdW5kbGVGcmFtZVJl
ZiBmcmFtZSwgdWludDY0X3QsIFdLVVJMUmVxdWVzdFJlZiByZXF1ZXN0LCBXS1VSTFJlc3BvbnNl
UmVmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCitzdGF0aWMgV0tV
UkxSZXF1ZXN0UmVmIHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwgV0tC
dW5kbGVGcmFtZVJlZiBmcmFtZSwgdWludDY0X3QgcmVzb3VyY2VJZGVudGlmaWVyLCBXS1VSTFJl
cXVlc3RSZWYgcmVxdWVzdCwgV0tVUkxSZXNwb25zZVJlZiByZWRpcmVjdFJlc3BvbnNlLCBjb25z
dCB2b2lkKiBjbGllbnRJbmZvKQogewogICAgIFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250
ZXh0Q29udHJvbGxlciAqcGx1Z2luQ29udGV4dENvbnRyb2xsZXIgPSAoV0tXZWJQcm9jZXNzUGx1
Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICopY2xpZW50SW5mbzsKICAgICBhdXRvIGxvYWRE
ZWxlZ2F0ZSA9IHBsdWdpbkNvbnRleHRDb250cm9sbGVyLT5fbG9hZERlbGVnYXRlLmdldCgpOwog
Ci0gICAgaWYgKFtsb2FkRGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcih3ZWJQ
cm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOmZyYW1lOndpbGxTZW5kUmVxdWVz
dDpyZWRpcmVjdFJlc3BvbnNlOildKSB7CisgICAgaWYgKFtsb2FkRGVsZWdhdGUgcmVzcG9uZHNU
b1NlbGVjdG9yOkBzZWxlY3Rvcih3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9s
bGVyOmZyYW1lOndpbGxTZW5kUmVxdWVzdEZvclJlc291cmNlOnJlcXVlc3Q6cmVkaXJlY3RSZXNw
b25zZTopXSkgewogICAgICAgICBOU1VSTFJlcXVlc3QgKm9yaWdpbmFsUmVxdWVzdCA9IHdyYXBw
ZXIoKnRvSW1wbChyZXF1ZXN0KSk7Ci0gICAgICAgIFJldGFpblB0cjxOU1VSTFJlcXVlc3Q+IHN1
YnN0aXR1dGVSZXF1ZXN0ID0gW2xvYWREZWxlZ2F0ZSB3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNv
bnRleHRDb250cm9sbGVyOnBsdWdpbkNvbnRleHRDb250cm9sbGVyIGZyYW1lOndyYXBwZXIoKnRv
SW1wbChmcmFtZSkpIHdpbGxTZW5kUmVxdWVzdDpvcmlnaW5hbFJlcXVlc3QKLSAgICAgICAgICAg
IHJlZGlyZWN0UmVzcG9uc2U6dG9JbXBsKHJlZGlyZWN0UmVzcG9uc2UpLT5yZXNvdXJjZVJlc3Bv
bnNlKCkubnNVUkxSZXNwb25zZSgpXTsKKyAgICAgICAgUmV0YWluUHRyPE5TVVJMUmVxdWVzdD4g
c3Vic3RpdHV0ZVJlcXVlc3QgPSBbbG9hZERlbGVnYXRlIHdlYlByb2Nlc3NQbHVnSW5Ccm93c2Vy
Q29udGV4dENvbnRyb2xsZXI6cGx1Z2luQ29udGV4dENvbnRyb2xsZXIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWU6d3JhcHBlcigqdG9JbXBsKGZyYW1l
KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lsbFNlbmRSZXF1ZXN0Rm9yUmVzb3VyY2U6cmVz
b3VyY2VJZGVudGlmaWVyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICByZXF1ZXN0Om9yaWdpbmFsUmVxdWVzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcmVkaXJlY3RSZXNwb25zZTp0b0ltcGwocmVkaXJlY3RSZXNwb25zZSktPnJlc291cmNlUmVz
cG9uc2UoKS5uc1VSTFJlc3BvbnNlKCldOwogCiAgICAgICAgIGlmIChzdWJzdGl0dXRlUmVxdWVz
dCAhPSBvcmlnaW5hbFJlcXVlc3QpCiAgICAgICAgICAgICByZXR1cm4gc3Vic3RpdHV0ZVJlcXVl
c3QgPyBXS1VSTFJlcXVlc3RDcmVhdGVXaXRoTlNVUkxSZXF1ZXN0KHN1YnN0aXR1dGVSZXF1ZXN0
LmdldCgpKSA6IG51bGxwdHI7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>237275</attachid>
            <date>2014-08-27 17:45:42 -0700</date>
            <delta_ts>2014-08-29 10:56:11 -0700</delta_ts>
            <desc>Fix style issue.</desc>
            <filename>deleget_with_id.patch</filename>
            <type>text/plain</type>
            <size>4718</size>
            <attacher name="Yongjun Zhang">yongjun_zhang</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MzAzOCkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE0LTA4LTI3ICBZb25nanVu
IFpoYW5nICA8eW9uZ2p1bl96aGFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUGFzcyB0aGUgcmVz
b3VyY2UgaWRlbnRpZmllciBpbiB3aWxsU2VuZFJlcXVlc3QgY2FsbGJhY2suCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzYzMjUKKworICAgICAgICBD
aGFuZ2UgV0tXZWJQcm9jZXNzUGx1Z0luTG9hZERlbGVnYXRlIGRlbGVnYXRlIG1ldGhvZCB3ZWJQ
cm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOmZyYW1lOndpbGxTZW5kUmVxdWVz
dDpyZWRpcmVjdFJlc3BvbnNlOiB0bworICAgICAgICB3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNv
bnRleHRDb250cm9sbGVyOmZyYW1lOndpbGxTZW5kUmVxdWVzdEZvclJlc291cmNlOnJlcXVlc3Q6
cmVkaXJlY3RSZXNwb25zZTogc28gdGhhdCB3ZSBjYW4gcGFzcyB0aGUgcmVzb3VyY2UgaWRlbnRp
ZmllcgorICAgICAgICB0byBsb2FkIGRlbGVnYXRlLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkv
Q29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luTG9hZERlbGVnYXRlLmg6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvbWFjL1dLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250
ZXh0Q29udHJvbGxlci5tbToKKyAgICAgICAgKHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKToKKwog
MjAxNC0wOC0yNyAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAg
ICAgICBPY2Nhc2lvbmFsIGNyYXNoZXMgaW4gY29tbWl0VHJhbnNpZW50Wm9vbSdzIHRyYW5zYWN0
aW9uIGNvbXBsZXRpb24gYmxvY2sKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvQVBJL0NvY29hL1dLV2ViUHJvY2Vzc1BsdWdJbkxvYWREZWxlZ2F0ZS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJ
L0NvY29hL1dLV2ViUHJvY2Vzc1BsdWdJbkxvYWREZWxlZ2F0ZS5oCShyZXZpc2lvbiAxNzMwMDgp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9X
S1dlYlByb2Nlc3NQbHVnSW5Mb2FkRGVsZWdhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtNTEsNyAr
NTEsNyBAQAogCiAvLyBSZXNvdXJjZSBsb2FkaW5nCiAKLS0gKE5TVVJMUmVxdWVzdCAqKXdlYlBy
b2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJy
b3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgZnJhbWU6KFdLV2ViUHJvY2Vzc1Bs
dWdJbkZyYW1lICopZnJhbWUgd2lsbFNlbmRSZXF1ZXN0OihOU1VSTFJlcXVlc3QgKilyZXF1ZXN0
IHJlZGlyZWN0UmVzcG9uc2U6KE5TVVJMUmVzcG9uc2UgKilyZWRpcmVjdFJlc3BvbnNlOworLSAo
TlNVUkxSZXF1ZXN0ICopd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjoo
V0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICopY29udHJvbGxlciBm
cmFtZTooV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUgKilmcmFtZSB3aWxsU2VuZFJlcXVlc3RGb3JS
ZXNvdXJjZToodWludDY0X3QpcmVzb3VyY2UgcmVxdWVzdDooTlNVUkxSZXF1ZXN0ICopcmVxdWVz
dCByZWRpcmVjdFJlc3BvbnNlOihOU1VSTFJlc3BvbnNlICopcmVkaXJlY3RSZXNwb25zZTsKIAog
LSAodm9pZCl3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOihXS1dlYlBy
b2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIgKiljb250cm9sbGVyIGZyYW1lOihX
S1dlYlByb2Nlc3NQbHVnSW5GcmFtZSAqKWZyYW1lIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNl
Oih1aW50NjRfdClyZXNvdXJjZSByZXF1ZXN0OihOU1VSTFJlcXVlc3QgKilyZXF1ZXN0OwogLSAo
dm9pZCl3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOihXS1dlYlByb2Nl
c3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIgKiljb250cm9sbGVyIGZyYW1lOihXS1dl
YlByb2Nlc3NQbHVnSW5GcmFtZSAqKWZyYW1lIGRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZToodWlu
dDY0X3QpcmVzb3VyY2U7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9tYWMvV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVy
Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvQVBJL21hYy9XS1dlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIubW0J
KHJldmlzaW9uIDE3MzAwOCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL21hYy9XS1dlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIu
bW0JKHdvcmtpbmcgY29weSkKQEAgLTIyMywxNSArMjIzLDE0IEBAIHN0YXRpYyB2b2lkIHNldFVw
UGFnZUxvYWRlckNsaWVudChXS1dlYlAKICAgICBwYWdlLmluaXRpYWxpemVJbmplY3RlZEJ1bmRs
ZUxvYWRlckNsaWVudCgmY2xpZW50LmJhc2UpOwogfQogCi1zdGF0aWMgV0tVUkxSZXF1ZXN0UmVm
IHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwgV0tCdW5kbGVGcmFtZVJl
ZiBmcmFtZSwgdWludDY0X3QsIFdLVVJMUmVxdWVzdFJlZiByZXF1ZXN0LCBXS1VSTFJlc3BvbnNl
UmVmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCitzdGF0aWMgV0tV
UkxSZXF1ZXN0UmVmIHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwgV0tC
dW5kbGVGcmFtZVJlZiBmcmFtZSwgdWludDY0X3QgcmVzb3VyY2VJZGVudGlmaWVyLCBXS1VSTFJl
cXVlc3RSZWYgcmVxdWVzdCwgV0tVUkxSZXNwb25zZVJlZiByZWRpcmVjdFJlc3BvbnNlLCBjb25z
dCB2b2lkKiBjbGllbnRJbmZvKQogewogICAgIFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250
ZXh0Q29udHJvbGxlciAqcGx1Z2luQ29udGV4dENvbnRyb2xsZXIgPSAoV0tXZWJQcm9jZXNzUGx1
Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICopY2xpZW50SW5mbzsKICAgICBhdXRvIGxvYWRE
ZWxlZ2F0ZSA9IHBsdWdpbkNvbnRleHRDb250cm9sbGVyLT5fbG9hZERlbGVnYXRlLmdldCgpOwog
Ci0gICAgaWYgKFtsb2FkRGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcih3ZWJQ
cm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOmZyYW1lOndpbGxTZW5kUmVxdWVz
dDpyZWRpcmVjdFJlc3BvbnNlOildKSB7CisgICAgaWYgKFtsb2FkRGVsZWdhdGUgcmVzcG9uZHNU
b1NlbGVjdG9yOkBzZWxlY3Rvcih3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9s
bGVyOmZyYW1lOndpbGxTZW5kUmVxdWVzdEZvclJlc291cmNlOnJlcXVlc3Q6cmVkaXJlY3RSZXNw
b25zZTopXSkgewogICAgICAgICBOU1VSTFJlcXVlc3QgKm9yaWdpbmFsUmVxdWVzdCA9IHdyYXBw
ZXIoKnRvSW1wbChyZXF1ZXN0KSk7Ci0gICAgICAgIFJldGFpblB0cjxOU1VSTFJlcXVlc3Q+IHN1
YnN0aXR1dGVSZXF1ZXN0ID0gW2xvYWREZWxlZ2F0ZSB3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNv
bnRleHRDb250cm9sbGVyOnBsdWdpbkNvbnRleHRDb250cm9sbGVyIGZyYW1lOndyYXBwZXIoKnRv
SW1wbChmcmFtZSkpIHdpbGxTZW5kUmVxdWVzdDpvcmlnaW5hbFJlcXVlc3QKLSAgICAgICAgICAg
IHJlZGlyZWN0UmVzcG9uc2U6dG9JbXBsKHJlZGlyZWN0UmVzcG9uc2UpLT5yZXNvdXJjZVJlc3Bv
bnNlKCkubnNVUkxSZXNwb25zZSgpXTsKKyAgICAgICAgUmV0YWluUHRyPE5TVVJMUmVxdWVzdD4g
c3Vic3RpdHV0ZVJlcXVlc3QgPSBbbG9hZERlbGVnYXRlIHdlYlByb2Nlc3NQbHVnSW5Ccm93c2Vy
Q29udGV4dENvbnRyb2xsZXI6cGx1Z2luQ29udGV4dENvbnRyb2xsZXIgZnJhbWU6d3JhcHBlcigq
dG9JbXBsKGZyYW1lKSkgd2lsbFNlbmRSZXF1ZXN0Rm9yUmVzb3VyY2U6cmVzb3VyY2VJZGVudGlm
aWVyIHJlcXVlc3Q6b3JpZ2luYWxSZXF1ZXN0IHJlZGlyZWN0UmVzcG9uc2U6dG9JbXBsKHJlZGly
ZWN0UmVzcG9uc2UpLT5yZXNvdXJjZVJlc3BvbnNlKCkubnNVUkxSZXNwb25zZSgpXTsKIAogICAg
ICAgICBpZiAoc3Vic3RpdHV0ZVJlcXVlc3QgIT0gb3JpZ2luYWxSZXF1ZXN0KQogICAgICAgICAg
ICAgcmV0dXJuIHN1YnN0aXR1dGVSZXF1ZXN0ID8gV0tVUkxSZXF1ZXN0Q3JlYXRlV2l0aE5TVVJM
UmVxdWVzdChzdWJzdGl0dXRlUmVxdWVzdC5nZXQoKSkgOiBudWxscHRyOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>237389</attachid>
            <date>2014-08-29 16:38:41 -0700</date>
            <delta_ts>2014-09-02 14:06:10 -0700</delta_ts>
            <desc>Revise patch; falls back to old delegate methods if the new ones are not implemented by a client.</desc>
            <filename>new_delegate.patch</filename>
            <type>text/plain</type>
            <size>8424</size>
            <attacher name="Yongjun Zhang">yongjun_zhang</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MzEyOCkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDE0LTA4LTI5ICBZb25nanVu
IFpoYW5nICA8eW9uZ2p1bl96aGFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUGFzcyB0aGUgcmVz
b3VyY2UgaWRlbnRpZmllciBpbiB3aWxsU2VuZFJlcXVlc3QgY2FsbGJhY2suCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzYzMjUKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgdHdvIG5ldyBkZWxlZ2F0
ZSBtZXRob2RzIHdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6ZnJhbWU6
d2lsbFNlbmRSZXF1ZXN0Rm9yUmVzb3VyY2U6cmVxdWVzdDpyZWRpcmVjdFJlc3BvbnNlOgorICAg
ICAgICBhbmQgd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpmcmFtZTpk
aWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZTpyZXF1ZXN0OnBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2Fk
aW5nOi4gV2Ugd2lsbCByZW1vdmUKKyAgICAgICAgdGhlIG9sZCB3aWxsU2VuZFJlcXVlc3QgYW5k
IGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlIHdoZW4gY2xpZW50cyBhZG9wdCB0aGUgbmV3IG1l
dGhvZHMuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9X
S1dlYlByb2Nlc3NQbHVnSW5Mb2FkRGVsZWdhdGUuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9tYWMvV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250
cm9sbGVyLm1tOgorICAgICAgICAod2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUpOgorICAgICAgICAo
ZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UpOgorCiAyMDE0LTA4LTI5ICBUaW0gSG9ydG9uICA8
dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAgICAgIE1vcmUgb2NjYXNpb25hbCBjcmFz
aGVzIGluIFNlcnZpY2VzQ29udHJvbGxlcjo6cmVzZnJlc2hFeGlzdGluZ1NlcnZpY2VzCkluZGV4
OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dl
YlByb2Nlc3NQbHVnSW5Mb2FkRGVsZWdhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5M
b2FkRGVsZWdhdGUuaAkocmV2aXNpb24gMTczMTIxKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luTG9hZERlbGVn
YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTUxLDggKzUxLDEwIEBACiAKIC8vIFJlc291cmNlIGxv
YWRpbmcKIAorLSAoTlNVUkxSZXF1ZXN0ICopd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0
Q29udHJvbGxlcjooV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICop
Y29udHJvbGxlciBmcmFtZTooV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUgKilmcmFtZSB3aWxsU2Vu
ZFJlcXVlc3RGb3JSZXNvdXJjZToodWludDY0X3QpcmVzb3VyY2UgcmVxdWVzdDooTlNVUkxSZXF1
ZXN0ICopcmVxdWVzdCByZWRpcmVjdFJlc3BvbnNlOihOU1VSTFJlc3BvbnNlICopcmVkaXJlY3RS
ZXNwb25zZTsKIC0gKE5TVVJMUmVxdWVzdCAqKXdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4
dENvbnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAq
KWNvbnRyb2xsZXIgZnJhbWU6KFdLV2ViUHJvY2Vzc1BsdWdJbkZyYW1lICopZnJhbWUgd2lsbFNl
bmRSZXF1ZXN0OihOU1VSTFJlcXVlc3QgKilyZXF1ZXN0IHJlZGlyZWN0UmVzcG9uc2U6KE5TVVJM
UmVzcG9uc2UgKilyZWRpcmVjdFJlc3BvbnNlOwogCistICh2b2lkKXdlYlByb2Nlc3NQbHVnSW5C
cm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0
Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgZnJhbWU6KFdLV2ViUHJvY2Vzc1BsdWdJbkZyYW1lICop
ZnJhbWUgZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2U6KHVpbnQ2NF90KXJlc291cmNlIHJlcXVl
c3Q6KE5TVVJMUmVxdWVzdCAqKXJlcXVlc3QgcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmc6KEJP
T0wpcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmc7CiAtICh2b2lkKXdlYlByb2Nlc3NQbHVnSW5C
cm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0
Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgZnJhbWU6KFdLV2ViUHJvY2Vzc1BsdWdJbkZyYW1lICop
ZnJhbWUgZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2U6KHVpbnQ2NF90KXJlc291cmNlIHJlcXVl
c3Q6KE5TVVJMUmVxdWVzdCAqKXJlcXVlc3Q7CiAtICh2b2lkKXdlYlByb2Nlc3NQbHVnSW5Ccm93
c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29u
dHJvbGxlciAqKWNvbnRyb2xsZXIgZnJhbWU6KFdLV2ViUHJvY2Vzc1BsdWdJbkZyYW1lICopZnJh
bWUgZGlkRmluaXNoTG9hZEZvclJlc291cmNlOih1aW50NjRfdClyZXNvdXJjZTsKIC0gKHZvaWQp
d2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjooV0tXZWJQcm9jZXNzUGx1
Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICopY29udHJvbGxlciBmcmFtZTooV0tXZWJQcm9j
ZXNzUGx1Z0luRnJhbWUgKilmcmFtZSBkaWRGYWlsTG9hZEZvclJlc291cmNlOih1aW50NjRfdCly
ZXNvdXJjZSBlcnJvcjooTlNFcnJvciAqKWVycm9yOwpJbmRleDogU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvbWFjL1dLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJD
b250ZXh0Q29udHJvbGxlci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9tYWMvV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRl
eHRDb250cm9sbGVyLm1tCShyZXZpc2lvbiAxNzMxMjEpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9tYWMvV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNv
bnRleHRDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yMjMsMTUgKzIyMywyNyBAQCBz
dGF0aWMgdm9pZCBzZXRVcFBhZ2VMb2FkZXJDbGllbnQoV0tXZWJQCiAgICAgcGFnZS5pbml0aWFs
aXplSW5qZWN0ZWRCdW5kbGVMb2FkZXJDbGllbnQoJmNsaWVudC5iYXNlKTsKIH0KIAotc3RhdGlj
IFdLVVJMUmVxdWVzdFJlZiB3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXS0J1bmRsZVBhZ2VSZWYs
IFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIHVpbnQ2NF90LCBXS1VSTFJlcXVlc3RSZWYgcmVxdWVz
dCwgV0tVUkxSZXNwb25zZVJlZiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCB2b2lkKiBjbGllbnRJ
bmZvKQorc3RhdGljIFdLVVJMUmVxdWVzdFJlZiB3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXS0J1
bmRsZVBhZ2VSZWYsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIHVpbnQ2NF90IHJlc291cmNlSWRl
bnRpZmllciwgV0tVUkxSZXF1ZXN0UmVmIHJlcXVlc3QsIFdLVVJMUmVzcG9uc2VSZWYgcmVkaXJl
Y3RSZXNwb25zZSwgY29uc3Qgdm9pZCogY2xpZW50SW5mbykKIHsKICAgICBXS1dlYlByb2Nlc3NQ
bHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIgKnBsdWdpbkNvbnRleHRDb250cm9sbGVyID0g
KFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNsaWVudEluZm87
CiAgICAgYXV0byBsb2FkRGVsZWdhdGUgPSBwbHVnaW5Db250ZXh0Q29udHJvbGxlci0+X2xvYWRE
ZWxlZ2F0ZS5nZXQoKTsKIAotICAgIGlmIChbbG9hZERlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3Rv
cjpAc2VsZWN0b3Iod2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpmcmFt
ZTp3aWxsU2VuZFJlcXVlc3Q6cmVkaXJlY3RSZXNwb25zZTopXSkgeworICAgIGlmIChbbG9hZERl
bGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Iod2ViUHJvY2Vzc1BsdWdJbkJyb3dz
ZXJDb250ZXh0Q29udHJvbGxlcjpmcmFtZTp3aWxsU2VuZFJlcXVlc3RGb3JSZXNvdXJjZTpyZXF1
ZXN0OnJlZGlyZWN0UmVzcG9uc2U6KV0pIHsKICAgICAgICAgTlNVUkxSZXF1ZXN0ICpvcmlnaW5h
bFJlcXVlc3QgPSB3cmFwcGVyKCp0b0ltcGwocmVxdWVzdCkpOwotICAgICAgICBSZXRhaW5QdHI8
TlNVUkxSZXF1ZXN0PiBzdWJzdGl0dXRlUmVxdWVzdCA9IFtsb2FkRGVsZWdhdGUgd2ViUHJvY2Vz
c1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpwbHVnaW5Db250ZXh0Q29udHJvbGxlciBm
cmFtZTp3cmFwcGVyKCp0b0ltcGwoZnJhbWUpKSB3aWxsU2VuZFJlcXVlc3Q6b3JpZ2luYWxSZXF1
ZXN0Ci0gICAgICAgICAgICByZWRpcmVjdFJlc3BvbnNlOnRvSW1wbChyZWRpcmVjdFJlc3BvbnNl
KS0+cmVzb3VyY2VSZXNwb25zZSgpLm5zVVJMUmVzcG9uc2UoKV07CisgICAgICAgIFJldGFpblB0
cjxOU1VSTFJlcXVlc3Q+IHN1YnN0aXR1dGVSZXF1ZXN0ID0gW2xvYWREZWxlZ2F0ZSB3ZWJQcm9j
ZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOnBsdWdpbkNvbnRleHRDb250cm9sbGVy
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lOndyYXBw
ZXIoKnRvSW1wbChmcmFtZSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbGxTZW5kUmVxdWVz
dEZvclJlc291cmNlOnJlc291cmNlSWRlbnRpZmllcgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcmVxdWVzdDpvcmlnaW5hbFJlcXVlc3QKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHJlZGlyZWN0UmVzcG9uc2U6dG9JbXBsKHJlZGlyZWN0UmVzcG9u
c2UpLT5yZXNvdXJjZVJlc3BvbnNlKCkubnNVUkxSZXNwb25zZSgpXTsKKworICAgICAgICBpZiAo
c3Vic3RpdHV0ZVJlcXVlc3QgIT0gb3JpZ2luYWxSZXF1ZXN0KQorICAgICAgICAgICAgcmV0dXJu
IHN1YnN0aXR1dGVSZXF1ZXN0ID8gV0tVUkxSZXF1ZXN0Q3JlYXRlV2l0aE5TVVJMUmVxdWVzdChz
dWJzdGl0dXRlUmVxdWVzdC5nZXQoKSkgOiBudWxscHRyOworICAgIH0gZWxzZSBpZiAoW2xvYWRE
ZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHdlYlByb2Nlc3NQbHVnSW5Ccm93
c2VyQ29udGV4dENvbnRyb2xsZXI6ZnJhbWU6d2lsbFNlbmRSZXF1ZXN0OnJlZGlyZWN0UmVzcG9u
c2U6KV0pIHsKKyAgICAgICAgTlNVUkxSZXF1ZXN0ICpvcmlnaW5hbFJlcXVlc3QgPSB3cmFwcGVy
KCp0b0ltcGwocmVxdWVzdCkpOworICAgICAgICBSZXRhaW5QdHI8TlNVUkxSZXF1ZXN0PiBzdWJz
dGl0dXRlUmVxdWVzdCA9IFtsb2FkRGVsZWdhdGUgd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250
ZXh0Q29udHJvbGxlcjpwbHVnaW5Db250ZXh0Q29udHJvbGxlcgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZTp3cmFwcGVyKCp0b0ltcGwoZnJhbWUpKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbGxTZW5kUmVxdWVzdDpvcmlnaW5h
bFJlcXVlc3QKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZGlyZWN0UmVzcG9u
c2U6dG9JbXBsKHJlZGlyZWN0UmVzcG9uc2UpLT5yZXNvdXJjZVJlc3BvbnNlKCkubnNVUkxSZXNw
b25zZSgpXTsKIAogICAgICAgICBpZiAoc3Vic3RpdHV0ZVJlcXVlc3QgIT0gb3JpZ2luYWxSZXF1
ZXN0KQogICAgICAgICAgICAgcmV0dXJuIHN1YnN0aXR1dGVSZXF1ZXN0ID8gV0tVUkxSZXF1ZXN0
Q3JlYXRlV2l0aE5TVVJMUmVxdWVzdChzdWJzdGl0dXRlUmVxdWVzdC5nZXQoKSkgOiBudWxscHRy
OwpAQCAtMjQxLDEyICsyNTMsMTggQEAgc3RhdGljIFdLVVJMUmVxdWVzdFJlZiB3aWxsU2VuZFJl
cXVlc3RGbwogICAgIHJldHVybiByZXF1ZXN0OwogfQogCi1zdGF0aWMgdm9pZCBkaWRJbml0aWF0
ZUxvYWRGb3JSZXNvdXJjZShXS0J1bmRsZVBhZ2VSZWYsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUs
IHVpbnQ2NF90IHJlc291cmNlSWRlbnRpZmllciwgV0tVUkxSZXF1ZXN0UmVmIHJlcXVlc3QsIGJv
b2wsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCitzdGF0aWMgdm9pZCBkaWRJbml0aWF0ZUxvYWRG
b3JSZXNvdXJjZShXS0J1bmRsZVBhZ2VSZWYsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIHVpbnQ2
NF90IHJlc291cmNlSWRlbnRpZmllciwgV0tVUkxSZXF1ZXN0UmVmIHJlcXVlc3QsIGJvb2wgcGFn
ZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCiB7CiAgICAg
V0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICpwbHVnaW5Db250ZXh0
Q29udHJvbGxlciA9IChXS1dlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIg
KiljbGllbnRJbmZvOwogICAgIGF1dG8gbG9hZERlbGVnYXRlID0gcGx1Z2luQ29udGV4dENvbnRy
b2xsZXItPl9sb2FkRGVsZWdhdGUuZ2V0KCk7CiAKLSAgICBpZiAoW2xvYWREZWxlZ2F0ZSByZXNw
b25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENv
bnRyb2xsZXI6ZnJhbWU6ZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2U6cmVxdWVzdDopXSkgewor
ICAgIGlmIChbbG9hZERlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Iod2ViUHJv
Y2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpmcmFtZTpkaWRJbml0aWF0ZUxvYWRG
b3JSZXNvdXJjZTpyZXF1ZXN0OnBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nOildKSB7CisgICAg
ICAgIFtsb2FkRGVsZWdhdGUgd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxl
cjpwbHVnaW5Db250ZXh0Q29udHJvbGxlcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWU6d3JhcHBlcigqdG9JbXBsKGZyYW1lKSkK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZEluaXRpYXRlTG9hZEZvclJl
c291cmNlOnJlc291cmNlSWRlbnRpZmllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3Q6d3JhcHBlcigqdG9JbXBsKHJlcXVlc3Qp
KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZUlzUHJvdmlzaW9uYWxs
eUxvYWRpbmc6cGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmddOworICAgIH0gZWxzZSBpZiAoW2xv
YWREZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHdlYlByb2Nlc3NQbHVnSW5C
cm93c2VyQ29udGV4dENvbnRyb2xsZXI6ZnJhbWU6ZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2U6
cmVxdWVzdDopXSkgewogICAgICAgICBbbG9hZERlbGVnYXRlIHdlYlByb2Nlc3NQbHVnSW5Ccm93
c2VyQ29udGV4dENvbnRyb2xsZXI6cGx1Z2luQ29udGV4dENvbnRyb2xsZXIKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lOndyYXBw
ZXIoKnRvSW1wbChmcmFtZSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk
aWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZTpyZXNvdXJjZUlkZW50aWZpZXIK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>237513</attachid>
            <date>2014-09-02 14:06:10 -0700</date>
            <delta_ts>2014-09-02 16:09:14 -0700</delta_ts>
            <desc>Fi style issues.</desc>
            <filename>new_delegate.patch</filename>
            <type>text/plain</type>
            <size>7439</size>
            <attacher name="Yongjun Zhang">yongjun_zhang</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MzE4MikKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDE0LTA5LTAyICBZb25nanVu
IFpoYW5nICA8eW9uZ2p1bl96aGFuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUGFzcyB0aGUgcmVz
b3VyY2UgaWRlbnRpZmllciBpbiB3aWxsU2VuZFJlcXVlc3QgY2FsbGJhY2suCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzYzMjUKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgdHdvIG5ldyBkZWxlZ2F0
ZSBtZXRob2RzIHdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6ZnJhbWU6
d2lsbFNlbmRSZXF1ZXN0Rm9yUmVzb3VyY2U6cmVxdWVzdDpyZWRpcmVjdFJlc3BvbnNlOgorICAg
ICAgICBhbmQgd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpmcmFtZTpk
aWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZTpyZXF1ZXN0OnBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2Fk
aW5nOi4gV2Ugd2lsbCByZW1vdmUKKyAgICAgICAgdGhlIG9sZCB3aWxsU2VuZFJlcXVlc3QgYW5k
IGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlIHdoZW4gY2xpZW50cyBhZG9wdCB0aGUgbmV3IG1l
dGhvZHMuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9X
S1dlYlByb2Nlc3NQbHVnSW5Mb2FkRGVsZWdhdGUuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9tYWMvV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250
cm9sbGVyLm1tOgorICAgICAgICAod2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUpOgorICAgICAgICAo
ZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UpOgorCiAyMDE0LTA5LTAyICBQaGlsaXBwZSBOb3Jt
YW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBHVEsgYnVp
bGQgZml4IGFmdGVyIHIxNzMxNjMuCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5Mb2FkRGVsZWdhdGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQ
SS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5Mb2FkRGVsZWdhdGUuaAkocmV2aXNpb24gMTczMTgy
KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2Ev
V0tXZWJQcm9jZXNzUGx1Z0luTG9hZERlbGVnYXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTUxLDgg
KzUxLDEwIEBACiAKIC8vIFJlc291cmNlIGxvYWRpbmcKIAorLSAoTlNVUkxSZXF1ZXN0ICopd2Vi
UHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjooV0tXZWJQcm9jZXNzUGx1Z0lu
QnJvd3NlckNvbnRleHRDb250cm9sbGVyICopY29udHJvbGxlciBmcmFtZTooV0tXZWJQcm9jZXNz
UGx1Z0luRnJhbWUgKilmcmFtZSB3aWxsU2VuZFJlcXVlc3RGb3JSZXNvdXJjZToodWludDY0X3Qp
cmVzb3VyY2UgcmVxdWVzdDooTlNVUkxSZXF1ZXN0ICopcmVxdWVzdCByZWRpcmVjdFJlc3BvbnNl
OihOU1VSTFJlc3BvbnNlICopcmVkaXJlY3RSZXNwb25zZTsKIC0gKE5TVVJMUmVxdWVzdCAqKXdl
YlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJ
bkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgZnJhbWU6KFdLV2ViUHJvY2Vz
c1BsdWdJbkZyYW1lICopZnJhbWUgd2lsbFNlbmRSZXF1ZXN0OihOU1VSTFJlcXVlc3QgKilyZXF1
ZXN0IHJlZGlyZWN0UmVzcG9uc2U6KE5TVVJMUmVzcG9uc2UgKilyZWRpcmVjdFJlc3BvbnNlOwog
CistICh2b2lkKXdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2Vi
UHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgZnJhbWU6
KFdLV2ViUHJvY2Vzc1BsdWdJbkZyYW1lICopZnJhbWUgZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3Vy
Y2U6KHVpbnQ2NF90KXJlc291cmNlIHJlcXVlc3Q6KE5TVVJMUmVxdWVzdCAqKXJlcXVlc3QgcGFn
ZUlzUHJvdmlzaW9uYWxseUxvYWRpbmc6KEJPT0wpcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmc7
CiAtICh2b2lkKXdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2Vi
UHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgZnJhbWU6
KFdLV2ViUHJvY2Vzc1BsdWdJbkZyYW1lICopZnJhbWUgZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3Vy
Y2U6KHVpbnQ2NF90KXJlc291cmNlIHJlcXVlc3Q6KE5TVVJMUmVxdWVzdCAqKXJlcXVlc3Q7CiAt
ICh2b2lkKXdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6KFdLV2ViUHJv
Y2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRyb2xsZXIgZnJhbWU6KFdL
V2ViUHJvY2Vzc1BsdWdJbkZyYW1lICopZnJhbWUgZGlkRmluaXNoTG9hZEZvclJlc291cmNlOih1
aW50NjRfdClyZXNvdXJjZTsKIC0gKHZvaWQpd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0
Q29udHJvbGxlcjooV0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyICop
Y29udHJvbGxlciBmcmFtZTooV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUgKilmcmFtZSBkaWRGYWls
TG9hZEZvclJlc291cmNlOih1aW50NjRfdClyZXNvdXJjZSBlcnJvcjooTlNFcnJvciAqKWVycm9y
OwpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvbWFj
L1dLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlci5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9tYWMvV0tX
ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyLm1tCShyZXZpc2lvbiAxNzMx
ODIpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9tYWMv
V0tXZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyLm1tCSh3b3JraW5nIGNv
cHkpCkBAIC0yMjMsMTIgKzIyMywxOSBAQCBzdGF0aWMgdm9pZCBzZXRVcFBhZ2VMb2FkZXJDbGll
bnQoV0tXZWJQCiAgICAgcGFnZS5pbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVMb2FkZXJDbGllbnQo
JmNsaWVudC5iYXNlKTsKIH0KIAotc3RhdGljIFdLVVJMUmVxdWVzdFJlZiB3aWxsU2VuZFJlcXVl
c3RGb3JGcmFtZShXS0J1bmRsZVBhZ2VSZWYsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIHVpbnQ2
NF90LCBXS1VSTFJlcXVlc3RSZWYgcmVxdWVzdCwgV0tVUkxSZXNwb25zZVJlZiByZWRpcmVjdFJl
c3BvbnNlLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQorc3RhdGljIFdLVVJMUmVxdWVzdFJlZiB3
aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXS0J1bmRsZVBhZ2VSZWYsIFdLQnVuZGxlRnJhbWVSZWYg
ZnJhbWUsIHVpbnQ2NF90IHJlc291cmNlSWRlbnRpZmllciwgV0tVUkxSZXF1ZXN0UmVmIHJlcXVl
c3QsIFdLVVJMUmVzcG9uc2VSZWYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3Qgdm9pZCogY2xpZW50
SW5mbykKIHsKICAgICBXS1dlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIg
KnBsdWdpbkNvbnRleHRDb250cm9sbGVyID0gKFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250
ZXh0Q29udHJvbGxlciAqKWNsaWVudEluZm87CiAgICAgYXV0byBsb2FkRGVsZWdhdGUgPSBwbHVn
aW5Db250ZXh0Q29udHJvbGxlci0+X2xvYWREZWxlZ2F0ZS5nZXQoKTsKIAotICAgIGlmIChbbG9h
ZERlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Iod2ViUHJvY2Vzc1BsdWdJbkJy
b3dzZXJDb250ZXh0Q29udHJvbGxlcjpmcmFtZTp3aWxsU2VuZFJlcXVlc3Q6cmVkaXJlY3RSZXNw
b25zZTopXSkgeworICAgIGlmIChbbG9hZERlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2Vs
ZWN0b3Iod2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpmcmFtZTp3aWxs
U2VuZFJlcXVlc3RGb3JSZXNvdXJjZTpyZXF1ZXN0OnJlZGlyZWN0UmVzcG9uc2U6KV0pIHsKKyAg
ICAgICAgTlNVUkxSZXF1ZXN0ICpvcmlnaW5hbFJlcXVlc3QgPSB3cmFwcGVyKCp0b0ltcGwocmVx
dWVzdCkpOworICAgICAgICBSZXRhaW5QdHI8TlNVUkxSZXF1ZXN0PiBzdWJzdGl0dXRlUmVxdWVz
dCA9IFtsb2FkRGVsZWdhdGUgd2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxl
cjpwbHVnaW5Db250ZXh0Q29udHJvbGxlciBmcmFtZTp3cmFwcGVyKCp0b0ltcGwoZnJhbWUpKSB3
aWxsU2VuZFJlcXVlc3RGb3JSZXNvdXJjZTpyZXNvdXJjZUlkZW50aWZpZXIKKyAgICAgICAgICAg
IHJlcXVlc3Q6b3JpZ2luYWxSZXF1ZXN0IHJlZGlyZWN0UmVzcG9uc2U6dG9JbXBsKHJlZGlyZWN0
UmVzcG9uc2UpLT5yZXNvdXJjZVJlc3BvbnNlKCkubnNVUkxSZXNwb25zZSgpXTsKKworICAgICAg
ICBpZiAoc3Vic3RpdHV0ZVJlcXVlc3QgIT0gb3JpZ2luYWxSZXF1ZXN0KQorICAgICAgICAgICAg
cmV0dXJuIHN1YnN0aXR1dGVSZXF1ZXN0ID8gV0tVUkxSZXF1ZXN0Q3JlYXRlV2l0aE5TVVJMUmVx
dWVzdChzdWJzdGl0dXRlUmVxdWVzdC5nZXQoKSkgOiBudWxscHRyOworICAgIH0gZWxzZSBpZiAo
W2xvYWREZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHdlYlByb2Nlc3NQbHVn
SW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI6ZnJhbWU6d2lsbFNlbmRSZXF1ZXN0OnJlZGlyZWN0
UmVzcG9uc2U6KV0pIHsKICAgICAgICAgTlNVUkxSZXF1ZXN0ICpvcmlnaW5hbFJlcXVlc3QgPSB3
cmFwcGVyKCp0b0ltcGwocmVxdWVzdCkpOwogICAgICAgICBSZXRhaW5QdHI8TlNVUkxSZXF1ZXN0
PiBzdWJzdGl0dXRlUmVxdWVzdCA9IFtsb2FkRGVsZWdhdGUgd2ViUHJvY2Vzc1BsdWdJbkJyb3dz
ZXJDb250ZXh0Q29udHJvbGxlcjpwbHVnaW5Db250ZXh0Q29udHJvbGxlciBmcmFtZTp3cmFwcGVy
KCp0b0ltcGwoZnJhbWUpKSB3aWxsU2VuZFJlcXVlc3Q6b3JpZ2luYWxSZXF1ZXN0CiAgICAgICAg
ICAgICByZWRpcmVjdFJlc3BvbnNlOnRvSW1wbChyZWRpcmVjdFJlc3BvbnNlKS0+cmVzb3VyY2VS
ZXNwb25zZSgpLm5zVVJMUmVzcG9uc2UoKV07CkBAIC0yNDEsMTYgKzI0OCwxNiBAQCBzdGF0aWMg
V0tVUkxSZXF1ZXN0UmVmIHdpbGxTZW5kUmVxdWVzdEZvCiAgICAgcmV0dXJuIHJlcXVlc3Q7CiB9
CiAKLXN0YXRpYyB2b2lkIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdLQnVuZGxlUGFnZVJl
ZiwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgdWludDY0X3QgcmVzb3VyY2VJZGVudGlmaWVyLCBX
S1VSTFJlcXVlc3RSZWYgcmVxdWVzdCwgYm9vbCwgY29uc3Qgdm9pZCogY2xpZW50SW5mbykKK3N0
YXRpYyB2b2lkIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdLQnVuZGxlUGFnZVJlZiwgV0tC
dW5kbGVGcmFtZVJlZiBmcmFtZSwgdWludDY0X3QgcmVzb3VyY2VJZGVudGlmaWVyLCBXS1VSTFJl
cXVlc3RSZWYgcmVxdWVzdCwgYm9vbCBwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZywgY29uc3Qg
dm9pZCogY2xpZW50SW5mbykKIHsKICAgICBXS1dlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4
dENvbnRyb2xsZXIgKnBsdWdpbkNvbnRleHRDb250cm9sbGVyID0gKFdLV2ViUHJvY2Vzc1BsdWdJ
bkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNsaWVudEluZm87CiAgICAgYXV0byBsb2FkRGVs
ZWdhdGUgPSBwbHVnaW5Db250ZXh0Q29udHJvbGxlci0+X2xvYWREZWxlZ2F0ZS5nZXQoKTsKIAot
ICAgIGlmIChbbG9hZERlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Iod2ViUHJv
Y2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpmcmFtZTpkaWRJbml0aWF0ZUxvYWRG
b3JSZXNvdXJjZTpyZXF1ZXN0OildKSB7Ci0gICAgICAgIFtsb2FkRGVsZWdhdGUgd2ViUHJvY2Vz
c1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpwbHVnaW5Db250ZXh0Q29udHJvbGxlcgot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZnJhbWU6d3JhcHBlcigqdG9JbXBsKGZyYW1lKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlOnJlc291cmNlSWRlbnRpZmllcgot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJl
cXVlc3Q6d3JhcHBlcigqdG9JbXBsKHJlcXVlc3QpKV07CisgICAgaWYgKFtsb2FkRGVsZWdhdGUg
cmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcih3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRl
eHRDb250cm9sbGVyOmZyYW1lOmRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlOnJlcXVlc3Q6cGFn
ZUlzUHJvdmlzaW9uYWxseUxvYWRpbmc6KV0pIHsKKyAgICAgICAgW2xvYWREZWxlZ2F0ZSB3ZWJQ
cm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOnBsdWdpbkNvbnRleHRDb250cm9s
bGVyIGZyYW1lOndyYXBwZXIoKnRvSW1wbChmcmFtZSkpIGRpZEluaXRpYXRlTG9hZEZvclJlc291
cmNlOnJlc291cmNlSWRlbnRpZmllciByZXF1ZXN0OndyYXBwZXIoKnRvSW1wbChyZXF1ZXN0KSkK
KyAgICAgICAgICAgIHBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nOnBhZ2VJc1Byb3Zpc2lvbmFs
bHlMb2FkaW5nXTsKKyAgICB9IGVsc2UgaWYgKFtsb2FkRGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVj
dG9yOkBzZWxlY3Rvcih3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOmZy
YW1lOmRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlOnJlcXVlc3Q6KV0pIHsKKyAgICAgICAgW2xv
YWREZWxlZ2F0ZSB3ZWJQcm9jZXNzUGx1Z0luQnJvd3NlckNvbnRleHRDb250cm9sbGVyOnBsdWdp
bkNvbnRleHRDb250cm9sbGVyIGZyYW1lOndyYXBwZXIoKnRvSW1wbChmcmFtZSkpIGRpZEluaXRp
YXRlTG9hZEZvclJlc291cmNlOnJlc291cmNlSWRlbnRpZmllciByZXF1ZXN0OndyYXBwZXIoKnRv
SW1wbChyZXF1ZXN0KSldOwogICAgIH0KIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>