<?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>72020</bug_id>
          
          <creation_ts>2011-11-10 06:11:45 -0800</creation_ts>
          <short_desc>Web Inspector: [chromium] list dedicated workers in case inspector opened post-worker creation.</short_desc>
          <delta_ts>2011-11-14 04:01:40 -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>Web Inspector (Deprecated)</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>72163</dependson>
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Yury Semikhatsky">yurys</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>cc-bugs</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>ojan</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>tonyg</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>499842</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-11-10 06:11:45 -0800</bug_when>
    <thetext>Otherwise, I think there are no workers listed!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500606</commentid>
    <comment_count>1</comment_count>
      <attachid>114656</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-11-11 02:22:30 -0800</bug_when>
    <thetext>Created attachment 114656
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500701</commentid>
    <comment_count>2</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-11-11 05:20:54 -0800</bug_when>
    <thetext>Committed r99953: &lt;http://trac.webkit.org/changeset/99953&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500916</commentid>
    <comment_count>3</comment_count>
      <attachid>114730</attachid>
    <who name="Jonathan Backer">backer</who>
    <bug_when>2011-11-11 10:51:47 -0800</bug_when>
    <thetext>Created attachment 114730
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500919</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-11 10:54:45 -0800</bug_when>
    <thetext>Please wait for approval from fishd@chromium.org before submitting because this patch contains changes to the Chromium public API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500921</commentid>
    <comment_count>5</comment_count>
      <attachid>114730</attachid>
    <who name="Jonathan Backer">backer</who>
    <bug_when>2011-11-11 10:55:47 -0800</bug_when>
    <thetext>Comment on attachment 114730
Patch

Ooops. Accidentally attached a patch to the wrong bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>501146</commentid>
    <comment_count>6</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2011-11-11 15:12:15 -0800</bug_when>
    <thetext>This was rolled out in http://trac.webkit.org/changeset/100028.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>501702</commentid>
    <comment_count>7</comment_count>
      <attachid>114896</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-11-14 00:54:13 -0800</bug_when>
    <thetext>Created attachment 114896
Patch with failing assertion removed

Removed the ASSERT. Worker context termination notification may arrive after the page along with InspectorWorkerAgent has already been destroyed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>501703</commentid>
    <comment_count>8</comment_count>
      <attachid>114896</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-11-14 00:56:37 -0800</bug_when>
    <thetext>Comment on attachment 114896
Patch with failing assertion removed

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

&gt; LayoutTests/platform/chromium/test_expectations.txt:3887
&gt; +BUGWK72133 MAC : http/tests/inspector-enabled/dedicated-workers-list.html = PASS CRASH TIMEOUT

SKIP ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>501704</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-14 00:57:26 -0800</bug_when>
    <thetext>Attachment 114896 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/http...&quot; exit_code: 1

Last 3072 characters of output:
ctations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3855:  Path does not exist. svg/zoom/page/relative-sized-document-scrollbars.svg  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3857:  Path does not exist. storage/indexeddb/key-type-array.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3859:  Path does not exist. storage/indexeddb/factory-deletedatabase-interactions.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3861:  Path does not exist. fast/js/array-functions-non-arrays.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3862:  Path does not exist. fast/js/eval-cross-window.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3863:  Path does not exist. fast/js/regexp-caching.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3864:  Path does not exist. fast/js/toString-overrides.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3865:  Path does not exist. fast/js/toString-recursion.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3866:  Path does not exist. http/tests/security/xss-eval.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3868:  Path does not exist. fast/dom/javascript-url-exception-isolation.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3869:  Path does not exist. fast/borders/inline-mask-overlay-image-outset-vertical-rl.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3871:  Path does not exist. fast/dom/rtl-scroll-to-leftmost-and-resize.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3873:  Path does not exist. http/tests/inspector/resource-tree/appcache-iframe-manifests.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3875:  Path does not exist. accessibility/adjacent-continuations-cause-assertion-failure.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3877:  Path does not exist. inspector/debugger/script-formatter.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3880:  Path does not exist. fast/js/mozilla/strict/15.4.5.1.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3882:  Path does not exist. fast/canvas/canvas-transforms-fillRect-shadow.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3884:  Path does not exist. media/track/tracklist-is-reachable.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3886:  Path does not exist. http/tests/inspector-enabled/dedicated-workers-list.html  [test/expectations] [2]
LayoutTests/platform/chromium/test_expectations.txt:3887:  Path does not exist. http/tests/inspector-enabled/dedicated-workers-list.html  [test/expectations] [2]
Total errors found: 2136 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>501706</commentid>
    <comment_count>10</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-11-14 01:06:31 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 114896 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=114896&amp;action=review
&gt; 
&gt; &gt; LayoutTests/platform/chromium/test_expectations.txt:3887
&gt; &gt; +BUGWK72133 MAC : http/tests/inspector-enabled/dedicated-workers-list.html = PASS CRASH TIMEOUT
&gt; 
&gt; SKIP ?

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>501711</commentid>
    <comment_count>11</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-11-14 01:16:32 -0800</bug_when>
    <thetext>Committed r100110: &lt;http://trac.webkit.org/changeset/100110&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>501747</commentid>
    <comment_count>12</comment_count>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2011-11-14 02:23:48 -0800</bug_when>
    <thetext>Reopening as this was rolled out in https://bugs.webkit.org/show_bug.cgi?id=72163</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>501778</commentid>
    <comment_count>13</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-11-14 03:49:29 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; Reopening as this was rolled out in https://bugs.webkit.org/show_bug.cgi?id=72163

The problem was fixed after rolling out and committed again, so there was no mistake in marking the bug as resolved.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>501781</commentid>
    <comment_count>14</comment_count>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2011-11-14 04:01:40 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; (In reply to comment #12)
&gt; &gt; Reopening as this was rolled out in https://bugs.webkit.org/show_bug.cgi?id=72163
&gt; 
&gt; The problem was fixed after rolling out and committed again, so there was no mistake in marking the bug as resolved.

Oops, sorry. Thanks.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114656</attachid>
            <date>2011-11-11 02:22:30 -0800</date>
            <delta_ts>2011-11-14 00:54:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72020-20111111142227.patch</filename>
            <type>text/plain</type>
            <size>12622</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTk5MzAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1NzFkYTYwNDkxZWFkNDU4
MDkwYmFkYWY3MzkyOTI5NzVlMmU4YzU5Li5hMjFlZDAxYzBkNTM2ZGQ3NGEwZGRkOTBhODYyMTY3
OWM3ZDU5NzcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTEtMTEtMTEgIFl1cnkg
U2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogW2Nocm9taXVtXSBsaXN0IGRlZGljYXRlZCB3b3JrZXJzIGluIGNhc2UgaW5zcGVjdG9yIG9w
ZW5lZCBwb3N0LXdvcmtlciBjcmVhdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTcyMDIwCisKKyAgICAgICAgQ29sbGVjdCBpbmZvcm1hdGlvbiBh
Ym91dCBkZWRpY2F0ZWQgd29ya2VycyBldmVuIHdoZW4gaW5zcGVjdG9yIGlzIGNsb3NlZC4gVGhp
cworICAgICAgICB3YXkgd2UgY2FuIGxpc3QgYWxsIGRlZGljYXRlZCB3b3JrZXJzIGlmIHRoZSBm
cm9udC1lbmQgb3BlbnMgbGF0ZXIuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgVGVzdDogaHR0cC90ZXN0cy9pbnNwZWN0b3ItZW5hYmxlZC9kZWRpY2F0
ZWQtd29ya2Vycy1saXN0Lmh0bWwKKworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0
cnVtZW50YXRpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6ZGlkU3RhcnRXb3JrZXJDb250ZXh0KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9y
V29ya2VyQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yV29ya2VyQWdlbnQ6
Okluc3BlY3RvcldvcmtlckFnZW50KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvcldvcmtl
ckFnZW50Ojp+SW5zcGVjdG9yV29ya2VyQWdlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yV29ya2VyQWdlbnQ6OnNldEZyb250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
cldvcmtlckFnZW50OjpyZXN0b3JlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvcldvcmtl
ckFnZW50OjpjbGVhckZyb250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvcldvcmtl
ckFnZW50OjpzZXRXb3JrZXJJbnNwZWN0aW9uRW5hYmxlZCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JXb3JrZXJBZ2VudDo6ZGlkU3RhcnRXb3JrZXJDb250ZXh0KToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvcldvcmtlckFnZW50Ojp3b3JrZXJDb250ZXh0VGVybWluYXRlZCk6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JXb3JrZXJBZ2VudDo6Y3JlYXRlV29ya2VyRnJvbnRl
bmRDaGFubmVsc0ZvckV4aXN0aW5nV29ya2Vycyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JXb3JrZXJBZ2VudDo6ZGVzdHJveVdvcmtlckZyb250ZW5kQ2hhbm5lbHMpOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yV29ya2VyQWdlbnQ6OmNyZWF0ZVdvcmtlckZyb250ZW5kQ2hhbm5l
bCk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvcldvcmtlckFnZW50Lmg6CisKIDIwMTEt
MTEtMTAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYktpdENT
U1NoYWRlclZhbHVlLmggaXMgbm90IGEgbWVtYmVyIG9mIHRoZSBXZWJDb3JlIHRhcmdldApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5o
CmluZGV4IGI5NjE4NmJmYWI0OGQ1OGEyMjA2M2YyMzM4YTVlNTVlZjE0YjZkMGYuLmE2MjAyN2Rj
NjM4Mzg4MGUwYzhkNzhiOWYzNGEwZTMxZGI2MmJkMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKQEAgLTk1OSw3ICs5NTks
NiBAQCBpbmxpbmUgYm9vbCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnNob3VsZFBhdXNlRGVk
aWNhdGVkV29ya2VyT25TdGFydChTY3JpcHRFeAogaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjpkaWRTdGFydFdvcmtlckNvbnRleHQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCog
Y29udGV4dCwgV29ya2VyQ29udGV4dFByb3h5KiBwcm94eSwgY29uc3QgS1VSTCYgdXJsKQogewog
I2lmIEVOQUJMRShJTlNQRUNUT1IpCi0gICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZv
aWQoKSk7CiAgICAgaWYgKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMg
PSBpbnN0cnVtZW50aW5nQWdlbnRzRm9yQ29udGV4dChjb250ZXh0KSkKICAgICAgICAgZGlkU3Rh
cnRXb3JrZXJDb250ZXh0SW1wbChpbnN0cnVtZW50aW5nQWdlbnRzLCBwcm94eSwgdXJsKTsKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvcldvcmtl
ckFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JXb3JrZXJBZ2Vu
dC5jcHAKaW5kZXggZDgxNGM3NjZkZTgwZTkyNTFiYTYxYTY3OThjNjBiYjI3Mzc5MzI3OS4uMThj
ZjUwMzdlNmFmMDlmNmYzN2YwYjMwOTM2YzdkNjRjNDBhZDBmNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvcldvcmtlckFnZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yV29ya2VyQWdlbnQuY3BwCkBAIC0xMTUsMzQgKzEx
NSwzMSBAQCBJbnNwZWN0b3JXb3JrZXJBZ2VudDo6SW5zcGVjdG9yV29ya2VyQWdlbnQoSW5zdHJ1
bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGluZ0FnZQogICAgICwgbV9pbnNwZWN0b3JGcm9udGVu
ZCgwKQogICAgICwgbV9pbnNwZWN0b3JTdGF0ZShpbnNwZWN0b3JTdGF0ZSkKIHsKKyAgICBtX2lu
c3RydW1lbnRpbmdBZ2VudHMtPnNldEluc3BlY3RvcldvcmtlckFnZW50KHRoaXMpOwogfQogCiBJ
bnNwZWN0b3JXb3JrZXJBZ2VudDo6fkluc3BlY3RvcldvcmtlckFnZW50KCkKIHsKKyAgICBtX2lu
c3RydW1lbnRpbmdBZ2VudHMtPnNldEluc3BlY3RvcldvcmtlckFnZW50KDApOworICAgIEFTU0VS
VChtX2RlZGljYXRlZFdvcmtlcnMuaXNFbXB0eSgpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JXb3Jr
ZXJBZ2VudDo6c2V0RnJvbnRlbmQoSW5zcGVjdG9yRnJvbnRlbmQqIGZyb250ZW5kKQogewogICAg
IG1faW5zcGVjdG9yRnJvbnRlbmQgPSBmcm9udGVuZDsKLSAgICByZXN0b3JlKCk7CiB9CiAKIHZv
aWQgSW5zcGVjdG9yV29ya2VyQWdlbnQ6OnJlc3RvcmUoKQogewogICAgIGlmIChtX2luc3BlY3Rv
clN0YXRlLT5nZXRCb29sZWFuKFdvcmtlckFnZW50U3RhdGU6Ondvcmtlckluc3BlY3Rpb25FbmFi
bGVkKSkKLSAgICAgICAgbV9pbnN0cnVtZW50aW5nQWdlbnRzLT5zZXRJbnNwZWN0b3JXb3JrZXJB
Z2VudCh0aGlzKTsKKyAgICAgICAgY3JlYXRlV29ya2VyRnJvbnRlbmRDaGFubmVsc0ZvckV4aXN0
aW5nV29ya2VycygpOwogfQogCiB2b2lkIEluc3BlY3RvcldvcmtlckFnZW50OjpjbGVhckZyb250
ZW5kKCkKIHsKICAgICBtX2luc3BlY3RvckZyb250ZW5kID0gMDsKLSAgICBtX2luc3RydW1lbnRp
bmdBZ2VudHMtPnNldEluc3BlY3RvcldvcmtlckFnZW50KDApOwogICAgIG1faW5zcGVjdG9yU3Rh
dGUtPnNldEJvb2xlYW4oV29ya2VyQWdlbnRTdGF0ZTo6YXV0b2Nvbm5lY3RUb1dvcmtlcnMsIGZh
bHNlKTsKLSAgICBmb3IgKFdvcmtlckNoYW5uZWxzOjppdGVyYXRvciBpdCA9IG1faWRUb0NoYW5u
ZWwuYmVnaW4oKTsgaXQgIT0gbV9pZFRvQ2hhbm5lbC5lbmQoKTsgKytpdCkgewotICAgICAgICBp
dC0+c2Vjb25kLT5kaXNjb25uZWN0RnJvbVdvcmtlckNvbnRleHQoKTsKLSAgICAgICAgZGVsZXRl
IGl0LT5zZWNvbmQ7Ci0gICAgfQotICAgIG1faWRUb0NoYW5uZWwuY2xlYXIoKTsKKyAgICBkZXN0
cm95V29ya2VyRnJvbnRlbmRDaGFubmVscygpOwogfQogCiB2b2lkIEluc3BlY3RvcldvcmtlckFn
ZW50OjpzZXRXb3JrZXJJbnNwZWN0aW9uRW5hYmxlZChFcnJvclN0cmluZyosIGJvb2wgdmFsdWUp
CkBAIC0xNTEsOSArMTQ4LDkgQEAgdm9pZCBJbnNwZWN0b3JXb3JrZXJBZ2VudDo6c2V0V29ya2Vy
SW5zcGVjdGlvbkVuYWJsZWQoRXJyb3JTdHJpbmcqLCBib29sIHZhbHVlKQogICAgIGlmICghbV9p
bnNwZWN0b3JGcm9udGVuZCkKICAgICAgICAgcmV0dXJuOwogICAgIGlmICh2YWx1ZSkKLSAgICAg
ICAgbV9pbnN0cnVtZW50aW5nQWdlbnRzLT5zZXRJbnNwZWN0b3JXb3JrZXJBZ2VudCh0aGlzKTsK
KyAgICAgICAgY3JlYXRlV29ya2VyRnJvbnRlbmRDaGFubmVsc0ZvckV4aXN0aW5nV29ya2Vycygp
OwogICAgIGVsc2UKLSAgICAgICAgbV9pbnN0cnVtZW50aW5nQWdlbnRzLT5zZXRJbnNwZWN0b3JX
b3JrZXJBZ2VudCgwKTsKKyAgICAgICAgZGVzdHJveVdvcmtlckZyb250ZW5kQ2hhbm5lbHMoKTsK
IH0KIAogdm9pZCBJbnNwZWN0b3JXb3JrZXJBZ2VudDo6Y29ubmVjdFRvV29ya2VyKEVycm9yU3Ry
aW5nKiBlcnJvciwgaW50IHdvcmtlcklkKQpAQCAtMTk1LDE4ICsxOTIsMTQgQEAgYm9vbCBJbnNw
ZWN0b3JXb3JrZXJBZ2VudDo6c2hvdWxkUGF1c2VEZWRpY2F0ZWRXb3JrZXJPblN0YXJ0KCkKIAog
dm9pZCBJbnNwZWN0b3JXb3JrZXJBZ2VudDo6ZGlkU3RhcnRXb3JrZXJDb250ZXh0KFdvcmtlckNv
bnRleHRQcm94eSogd29ya2VyQ29udGV4dFByb3h5LCBjb25zdCBLVVJMJiB1cmwpCiB7Ci0gICAg
V29ya2VyRnJvbnRlbmRDaGFubmVsKiBjaGFubmVsID0gbmV3IFdvcmtlckZyb250ZW5kQ2hhbm5l
bChtX2luc3BlY3RvckZyb250ZW5kLCB3b3JrZXJDb250ZXh0UHJveHkpOwotICAgIG1faWRUb0No
YW5uZWwuc2V0KGNoYW5uZWwtPmlkKCksIGNoYW5uZWwpOwotCi0gICAgQVNTRVJUKG1faW5zcGVj
dG9yRnJvbnRlbmQpOwotICAgIGJvb2wgYXV0b2Nvbm5lY3RUb1dvcmtlcnMgPSBtX2luc3BlY3Rv
clN0YXRlLT5nZXRCb29sZWFuKFdvcmtlckFnZW50U3RhdGU6OmF1dG9jb25uZWN0VG9Xb3JrZXJz
KTsKLSAgICBpZiAoYXV0b2Nvbm5lY3RUb1dvcmtlcnMpCi0gICAgICAgIGNoYW5uZWwtPmNvbm5l
Y3RUb1dvcmtlckNvbnRleHQoKTsKLSAgICBtX2luc3BlY3RvckZyb250ZW5kLT53b3JrZXIoKS0+
d29ya2VyQ3JlYXRlZChjaGFubmVsLT5pZCgpLCB1cmwuc3RyaW5nKCksIGF1dG9jb25uZWN0VG9X
b3JrZXJzKTsKKyAgICBtX2RlZGljYXRlZFdvcmtlcnMuc2V0KHdvcmtlckNvbnRleHRQcm94eSwg
dXJsLnN0cmluZygpKTsKKyAgICBpZiAobV9pbnNwZWN0b3JGcm9udGVuZCAmJiBtX2luc3BlY3Rv
clN0YXRlLT5nZXRCb29sZWFuKFdvcmtlckFnZW50U3RhdGU6Ondvcmtlckluc3BlY3Rpb25FbmFi
bGVkKSkKKyAgICAgICAgY3JlYXRlV29ya2VyRnJvbnRlbmRDaGFubmVsKHdvcmtlckNvbnRleHRQ
cm94eSwgdXJsLnN0cmluZygpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JXb3JrZXJBZ2VudDo6d29y
a2VyQ29udGV4dFRlcm1pbmF0ZWQoV29ya2VyQ29udGV4dFByb3h5KiBwcm94eSkKIHsKKyAgICBt
X2RlZGljYXRlZFdvcmtlcnMucmVtb3ZlKHByb3h5KTsKICAgICBmb3IgKFdvcmtlckNoYW5uZWxz
OjppdGVyYXRvciBpdCA9IG1faWRUb0NoYW5uZWwuYmVnaW4oKTsgaXQgIT0gbV9pZFRvQ2hhbm5l
bC5lbmQoKTsgKytpdCkgewogICAgICAgICBpZiAocHJveHkgPT0gaXQtPnNlY29uZC0+cHJveHko
KSkgewogICAgICAgICAgICAgbV9pbnNwZWN0b3JGcm9udGVuZC0+d29ya2VyKCktPndvcmtlclRl
cm1pbmF0ZWQoaXQtPmZpcnN0KTsKQEAgLTIxNyw2ICsyMTAsMzMgQEAgdm9pZCBJbnNwZWN0b3JX
b3JrZXJBZ2VudDo6d29ya2VyQ29udGV4dFRlcm1pbmF0ZWQoV29ya2VyQ29udGV4dFByb3h5KiBw
cm94eSkKICAgICB9CiB9CiAKK3ZvaWQgSW5zcGVjdG9yV29ya2VyQWdlbnQ6OmNyZWF0ZVdvcmtl
ckZyb250ZW5kQ2hhbm5lbHNGb3JFeGlzdGluZ1dvcmtlcnMoKQoreworICAgIGZvciAoRGVkaWNh
dGVkV29ya2Vyczo6aXRlcmF0b3IgaXQgPSBtX2RlZGljYXRlZFdvcmtlcnMuYmVnaW4oKTsgaXQg
IT0gbV9kZWRpY2F0ZWRXb3JrZXJzLmVuZCgpOyArK2l0KQorICAgICAgICBjcmVhdGVXb3JrZXJG
cm9udGVuZENoYW5uZWwoaXQtPmZpcnN0LCBpdC0+c2Vjb25kKTsKK30KKwordm9pZCBJbnNwZWN0
b3JXb3JrZXJBZ2VudDo6ZGVzdHJveVdvcmtlckZyb250ZW5kQ2hhbm5lbHMoKQoreworICAgIGZv
ciAoV29ya2VyQ2hhbm5lbHM6Oml0ZXJhdG9yIGl0ID0gbV9pZFRvQ2hhbm5lbC5iZWdpbigpOyBp
dCAhPSBtX2lkVG9DaGFubmVsLmVuZCgpOyArK2l0KSB7CisgICAgICAgIGl0LT5zZWNvbmQtPmRp
c2Nvbm5lY3RGcm9tV29ya2VyQ29udGV4dCgpOworICAgICAgICBkZWxldGUgaXQtPnNlY29uZDsK
KyAgICB9CisgICAgbV9pZFRvQ2hhbm5lbC5jbGVhcigpOworfQorCit2b2lkIEluc3BlY3Rvcldv
cmtlckFnZW50OjpjcmVhdGVXb3JrZXJGcm9udGVuZENoYW5uZWwoV29ya2VyQ29udGV4dFByb3h5
KiB3b3JrZXJDb250ZXh0UHJveHksIGNvbnN0IFN0cmluZyYgdXJsKQoreworICAgIFdvcmtlckZy
b250ZW5kQ2hhbm5lbCogY2hhbm5lbCA9IG5ldyBXb3JrZXJGcm9udGVuZENoYW5uZWwobV9pbnNw
ZWN0b3JGcm9udGVuZCwgd29ya2VyQ29udGV4dFByb3h5KTsKKyAgICBtX2lkVG9DaGFubmVsLnNl
dChjaGFubmVsLT5pZCgpLCBjaGFubmVsKTsKKworICAgIEFTU0VSVChtX2luc3BlY3RvckZyb250
ZW5kKTsKKyAgICBib29sIGF1dG9jb25uZWN0VG9Xb3JrZXJzID0gbV9pbnNwZWN0b3JTdGF0ZS0+
Z2V0Qm9vbGVhbihXb3JrZXJBZ2VudFN0YXRlOjphdXRvY29ubmVjdFRvV29ya2Vycyk7CisgICAg
aWYgKGF1dG9jb25uZWN0VG9Xb3JrZXJzKQorICAgICAgICBjaGFubmVsLT5jb25uZWN0VG9Xb3Jr
ZXJDb250ZXh0KCk7CisgICAgbV9pbnNwZWN0b3JGcm9udGVuZC0+d29ya2VyKCktPndvcmtlckNy
ZWF0ZWQoY2hhbm5lbC0+aWQoKSwgdXJsLCBhdXRvY29ubmVjdFRvV29ya2Vycyk7Cit9CisKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShXT1JLRVJTKSAmJiBFTkFC
TEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvcldvcmtlckFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yV29y
a2VyQWdlbnQuaAppbmRleCA1YTUyZTcwODk4Zjc4MDc4ZGM0ZjA4ZDhlZWUzY2ZlYzkyMTA4ZmY0
Li5iOTRkYThjNmFhNDhiMDA1MmMyNDQ5MzQwMjM1ZjU1Y2E5OGFmZjQ1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yV29ya2VyQWdlbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yV29ya2VyQWdlbnQuaApAQCAtNjksNiArNjks
OSBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgSW5zcGVjdG9yV29ya2VyQWdlbnQoSW5zdHJ1
bWVudGluZ0FnZW50cyosIEluc3BlY3RvclN0YXRlKik7CisgICAgdm9pZCBjcmVhdGVXb3JrZXJG
cm9udGVuZENoYW5uZWxzRm9yRXhpc3RpbmdXb3JrZXJzKCk7CisgICAgdm9pZCBjcmVhdGVXb3Jr
ZXJGcm9udGVuZENoYW5uZWwoV29ya2VyQ29udGV4dFByb3h5KiwgY29uc3QgU3RyaW5nJiB1cmwp
OworICAgIHZvaWQgZGVzdHJveVdvcmtlckZyb250ZW5kQ2hhbm5lbHMoKTsKIAogICAgIEluc3Ry
dW1lbnRpbmdBZ2VudHMqIG1faW5zdHJ1bWVudGluZ0FnZW50czsKICAgICBJbnNwZWN0b3JGcm9u
dGVuZCogbV9pbnNwZWN0b3JGcm9udGVuZDsKQEAgLTc3LDYgKzgwLDggQEAgcHJpdmF0ZToKICAg
ICBjbGFzcyBXb3JrZXJGcm9udGVuZENoYW5uZWw7CiAgICAgdHlwZWRlZiBIYXNoTWFwPGludCwg
V29ya2VyRnJvbnRlbmRDaGFubmVsKj4gV29ya2VyQ2hhbm5lbHM7CiAgICAgV29ya2VyQ2hhbm5l
bHMgbV9pZFRvQ2hhbm5lbDsKKyAgICB0eXBlZGVmIEhhc2hNYXA8V29ya2VyQ29udGV4dFByb3h5
KiwgU3RyaW5nPiBEZWRpY2F0ZWRXb3JrZXJzOworICAgIERlZGljYXRlZFdvcmtlcnMgbV9kZWRp
Y2F0ZWRXb3JrZXJzOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM4NDlj
YzllZGY3MTZlOWI5M2E0MzQyMjQ3ZDU1NzAwNTk1NjFkZTYuLjlkNWRkMTU5YWY2OGY5N2I1NDc2
M2Y5MDAxMDM4ZjA4YjIwYjg2ZWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMS0xMS0xMSAg
WXVyeSBTZW1pa2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBbY2hyb21pdW1dIGxpc3QgZGVkaWNhdGVkIHdvcmtlcnMgaW4gY2FzZSBpbnNwZWN0
b3Igb3BlbmVkIHBvc3Qtd29ya2VyIGNyZWF0aW9uLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzIwMjAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvdGVzdHMvaW5zcGVjdG9yLWVuYWJsZWQvZGVk
aWNhdGVkLXdvcmtlcnMtbGlzdC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvaW5zcGVjdG9yLWVuYWJsZWQvZGVkaWNhdGVkLXdvcmtlcnMtbGlzdC5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL3Jlc291cmNlcy9kZWRp
Y2F0ZWQtd29ya2VyLmpzOiBBZGRlZC4KKyAgICAgICAgKGRvV29yayk6CisKIDIwMTEtMTEtMTAg
IFl1dGEgS2l0YW11cmEgIDx5dXRha0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVt
XSBVbnJldmlld2VkLCByZWJhc2VsaW5lIFNWRyB0ZXN0IHJlc3VsdHMgY2hhbmdlZCBhZnRlciBy
OTk1MzkuIChwYXJ0IDcsIHRoZSBmaW5hbCkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW5zcGVjdG9yLWVuYWJsZWQvZGVkaWNhdGVkLXdvcmtlcnMtbGlzdC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL2RlZGljYXRlZC13
b3JrZXJzLWxpc3QtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVhYjU5NDg3NWM5ODRlZTg1Yjg3
NWRjNTJjZDBiNmQ0MjAzMWUzOTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL2RlZGljYXRlZC13b3JrZXJzLWxpc3QtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsOSBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDIwOiBSZWNlaXZlZCBt
ZXNzYWdlIGZyb20gd29ya2VyIDEKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyMDogUmVjZWl2ZWQg
bWVzc2FnZSBmcm9tIHdvcmtlciAyCitUZXN0cyB0aGF0IGRlZGljYXRlZCB3b3JrZXJzIGNyZWF0
ZWQgYmVmb3JlIHdvcmtlciBpbnNwZWN0aW9uIHdhcyBlbmFibGVkIHdpbGwgYmUgcmVwb3J0ZWQg
dG8gdGhlIGZyb250LWVuZC4gQnVnIDcyMDIwCisKK1dvcmtlciBpbnNwZWN0aW9uIGVuYWJsZWQK
K0FkZGVkIHdvcmtlcjogMQorQWRkZWQgd29ya2VyOiAyCitEb25lLgorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL2RlZGljYXRlZC13b3JrZXJz
LWxpc3QuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yLWVuYWJsZWQvZGVk
aWNhdGVkLXdvcmtlcnMtbGlzdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyYWE4MWJkMWUxZDEyMDBlNjZk
YTdlZTJiZWVhMzE2NzY5MTYwODIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL2RlZGljYXRlZC13b3JrZXJzLWxpc3QuaHRtbApAQCAt
MCwwICsxLDYzIEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uL2luc3BlY3Rvci9p
bnNwZWN0b3ItdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vaW5zcGVjdG9yL2Rl
YnVnZ2VyLXRlc3QuanMiPjwvc2NyaXB0PgorCis8c2NyaXB0PgorZnVuY3Rpb24gaGFuZGxlTG9h
ZCgpCit7CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworCisgICAgdmFyIHdvcmtlcjEgPSBu
ZXcgV29ya2VyKCJyZXNvdXJjZXMvZGVkaWNhdGVkLXdvcmtlci5qcz9pZD0xIik7CisgICAgd29y
a2VyMS5vbm1lc3NhZ2UgPSBoYW5kbGVNZXNzYWdlRnJvbVdvcmtlcjsKKyAgICB2YXIgd29ya2Vy
MiA9IG5ldyBXb3JrZXIoInJlc291cmNlcy9kZWRpY2F0ZWQtd29ya2VyLmpzP2lkPTIiKTsKKyAg
ICB3b3JrZXIyLm9ubWVzc2FnZSA9IGhhbmRsZU1lc3NhZ2VGcm9tV29ya2VyOworICAgIHZhciBt
ZXNzYWdlQ291bnQgPSAwOworICAgIGZ1bmN0aW9uIGhhbmRsZU1lc3NhZ2VGcm9tV29ya2VyKGV2
ZW50KQorICAgIHsKKyAgICAgICAgbWVzc2FnZUNvdW50Kys7CisgICAgICAgIGNvbnNvbGUubG9n
KCJSZWNlaXZlZCBtZXNzYWdlIGZyb20gd29ya2VyICIgKyBtZXNzYWdlQ291bnQpOworICAgICAg
ICBpZiAobWVzc2FnZUNvdW50ID09PSAyKSB7CisgICAgICAgICAgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKQorICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLnNo
b3dXZWJJbnNwZWN0b3IoKTsKKyAgICAgICAgICAgIHJ1blRlc3QoKTsKKyAgICAgICAgfQorICAg
IH0KK30KKworCitmdW5jdGlvbiB0ZXN0KCkKK3sKKyAgICBXb3JrZXJBZ2VudC5zZXRXb3JrZXJJ
bnNwZWN0aW9uRW5hYmxlZChmYWxzZSwgZGlkRGlzYWJsZVdvcmtlckluc3BlY3Rpb24pOworCisg
ICAgZnVuY3Rpb24gZGlkRGlzYWJsZVdvcmtlckluc3BlY3Rpb24oKQorICAgIHsKKyAgICAgICAg
V2ViSW5zcGVjdG9yLndvcmtlck1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3Iu
V29ya2VyTWFuYWdlci5FdmVudHMuV29ya2VyQWRkZWQsIHdvcmtlckFkZGVkLCB0aGlzKTsKKyAg
ICAgICAgV29ya2VyQWdlbnQuc2V0V29ya2VySW5zcGVjdGlvbkVuYWJsZWQodHJ1ZSk7CisgICAg
ICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJXb3JrZXIgaW5zcGVjdGlvbiBlbmFibGVkIik7
CisgICAgfQorCisgICAgdmFyIHdvcmtlckNvdW50ID0gMDsKKyAgICBmdW5jdGlvbiB3b3JrZXJB
ZGRlZCgpCisgICAgeworICAgICAgICB3b3JrZXJDb3VudCsrOworICAgICAgICBJbnNwZWN0b3JU
ZXN0LmFkZFJlc3VsdCgiQWRkZWQgd29ya2VyOiAiICsgd29ya2VyQ291bnQpOworICAgICAgICBp
ZiAod29ya2VyQ291bnQgPT09IDIpIHsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVz
dWx0KCJEb25lLiIpOworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5jb21wbGV0ZVRlc3QoKTsK
KyAgICAgICAgfQorICAgIH0KK307CisKKzwvc2NyaXB0PgorCis8L2hlYWQ+CisKKzxib2R5IG9u
bG9hZD0iaGFuZGxlTG9hZCgpIj4KKzxwPlRlc3RzIHRoYXQgZGVkaWNhdGVkIHdvcmtlcnMgY3Jl
YXRlZCBiZWZvcmUgd29ya2VyIGluc3BlY3Rpb24gd2FzIGVuYWJsZWQgd2lsbCBiZSByZXBvcnRl
ZCB0byB0aGUgZnJvbnQtZW5kLgorPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTcyMDIwIj5CdWcgNzIwMjA8L2E+Cis8L3A+CisKKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yLWVuYWJsZWQv
cmVzb3VyY2VzL2RlZGljYXRlZC13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2lu
c3BlY3Rvci1lbmFibGVkL3Jlc291cmNlcy9kZWRpY2F0ZWQtd29ya2VyLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
Ljg2MTc0OTYxNDNjMTljY2QyZjFjZjlkZWY1MDFmYTdiNjY3OGE2ZTgKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL3Jlc291cmNlcy9k
ZWRpY2F0ZWQtd29ya2VyLmpzCkBAIC0wLDAgKzEsNyBAQAordmFyIHdvcmtlcklkID0gbG9jYXRp
b24uc2VhcmNoLnN1YnN0cmluZyg0KTsKK3Bvc3RNZXNzYWdlKCJXb3JrZXIgIiArIHdvcmtlcklk
ICsgIiBzdGFydGVkLiIpOworZG9Xb3JrKCk7CitzZXRJbnRlcnZhbChkb1dvcmssIDEwMDApOwor
ZnVuY3Rpb24gZG9Xb3JrKCkgeworfQorCg==
</data>
<flag name="review"
          id="113362"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114730</attachid>
            <date>2011-11-11 10:51:47 -0800</date>
            <delta_ts>2011-11-11 10:55:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72020-20111111135145.patch</filename>
            <type>text/plain</type>
            <size>8816</size>
            <attacher name="Jonathan Backer">backer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTk5NTYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBhNzM4YjJkY2YyYTMyM2Ex
OGJjY2E2NGU5MzljYTZhOWYwZDRlNDkwLi4yNWJhNDljZmZkMDEzNjkzZDk2YzllOGExZTI5MjM3
ZmVjYzMzMTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMTEtMTEgIEpvbmF0
aGFuIEJhY2tlciAgPGJhY2tlckBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBQ
bHVtYiB0aHJvdWdoIHBhcnRpYWwgc3dhcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIChPT1BTISkKKworICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9taXVtLmg6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkxheWVyUmVuZGVyZXJDaHJvbWl1bTo6aW5pdGlhbGl6ZSk6CisgICAg
ICAgIChXZWJDb3JlOjpMYXllclJlbmRlcmVyQ2hyb21pdW06OnN3YXBCdWZmZXJzKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkxheWVyUmVuZGVyZXJDYXBhYmlsaXRpZXM6OkxheWVyUmVuZGVyZXJD
YXBhYmlsaXRpZXMpOgorCiAyMDExLTExLTExICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFtjaHJvbWl1bV0gbGlzdCBkZWRp
Y2F0ZWQgd29ya2VycyBpbiBjYXNlIGluc3BlY3RvciBvcGVuZWQgcG9zdC13b3JrZXIgY3JlYXRp
b24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDczNDIzYTU3OWYxMDZlMWYyODE5ODY2
Y2FiNDU5YTY5OGE1ZTFjOWYuLjk5Yjk4MDdmYTkyODIwNWQyNDFmMzIzZGY0ODYzMGJmNmNmYTJj
OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTEtMTEt
MTEgIEpvbmF0aGFuIEJhY2tlciAgPGJhY2tlckBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2No
cm9taXVtXSBQbHVtYiB0aHJvdWdoIHBhcnRpYWwgc3dhcAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHB1YmxpYy9XZWJHcmFwaGljc0NvbnRleHQzRC5o
OgorICAgICAgICAqIHNyYy9FeHRlbnNpb25zM0RDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFeHRlbnNpb25zM0RDaHJvbWl1bTo6cG9zdFN1YkJ1ZmZlckNIUk9NSVVNKToKKyAgICAg
ICAgKiBzcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHA6CisgICAgICAgICogc3JjL0dy
YXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5oOgorICAgICAgICAqIHRlc3RzL01vY2tXZWJHcmFwaGlj
c0NvbnRleHQzRC5oOgorICAgICAgICAoV2ViS2l0OjpNb2NrV2ViR3JhcGhpY3NDb250ZXh0M0Q6
OnBvc3RTdWJCdWZmZXJDSFJPTUlVTSk6CisKIDIwMTEtMTEtMTEgIEphbWVzIFJvYmluc29uICA8
amFtZXNyQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbY2hyb21pdW1dIEZpeCBDQ0xheWVyVHJl
ZUhvc3QgbGVhayBpbiB3ZWJraXRfdW5pdF90ZXN0cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0uaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0V4dGVuc2lvbnMzRENocm9t
aXVtLmgKaW5kZXggODZlYmNiZTdjNDY3ZThmZDM2Y2VkNjU3ZTdlMzc5ZGNjZGNhNGMxMC4uOTZj
N2YxMDc5M2UyYjg5ZjE2ZDMyYWQ3ZDViYjBjYTg4ZGU3N2I3MSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vRXh0ZW5zaW9uczNEQ2hyb21pdW0u
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9FeHRlbnNp
b25zM0RDaHJvbWl1bS5oCkBAIC00MCw2ICs0MCw3IEBAIHB1YmxpYzoKICAgICAvLyBTdXBwb3J0
ZWQgZXh0ZW5zaW9uczoKICAgICAvLyAgIEdMX0NIUk9NSVVNX3Jlc291cmNlX3NhZmUgIDogaW5k
aWNhdGluZyB0aGF0IHRleHR1cmVzL3JlbmRlcmJ1ZmZlcnMgYXJlIGFsd2F5cyBpbml0aWFsaXpl
ZCBiZWZvcmUgcmVhZC93cml0ZS4KICAgICAvLyAgIEdMX0NIUk9NSVVNX3N0cmljdF9hdHRyaWJz
IDogaW5kaWNhdGluZyBhIEdMIGVycm9yIGlzIGdlbmVyYXRlZCBmb3Igb3V0LW9mLWJvdW5kcyBi
dWZmZXIgYWNjZXNzZXMuCisgICAgLy8gICBHTF9DSFJPTUlVTV9wb3N0X3N1Yl9idWZmZXIKICAg
ICAvLyAgIEdMX0NIUk9NSVVNX21hcF9zdWIKICAgICAvLyAgIEdMX0NIUk9NSVVNX3N3YXBidWZm
ZXJzX2NvbXBsZXRlX2NhbGxiYWNrCiAgICAgLy8gICBHTF9DSFJPTUlVTV9yYXRlX2xpbWl0X29m
ZnNjcmVlbl9jb250ZXh0CkBAIC02NCw2ICs2NSw5IEBAIHB1YmxpYzoKICAgICAgICAgV1JJVEVf
T05MWSA9IDB4ODhCOQogICAgIH07CiAKKyAgICAvLyBHTF9DSFJPTUlVTV9wb3N0X3N1Yl9idWZm
ZXIKKyAgICB2b2lkIHBvc3RTdWJCdWZmZXJDSFJPTUlVTShpbnQgeCwgaW50IHksIGludCB3aWR0
aCwgaW50IGhlaWdodCk7CisKICAgICAvLyBHTF9DSFJPTUlVTV9tYXBfc3ViCiAgICAgdm9pZCog
bWFwQnVmZmVyU3ViRGF0YUNIUk9NSVVNKHVuc2lnbmVkIHRhcmdldCwgaW50IG9mZnNldCwgaW50
IHNpemUsIHVuc2lnbmVkIGFjY2Vzcyk7CiAgICAgdm9pZCB1bm1hcEJ1ZmZlclN1YkRhdGFDSFJP
TUlVTShjb25zdCB2b2lkKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jaHJvbWl1bS9MYXllclJlbmRlcmVyQ2hyb21pdW0uY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmNwcApp
bmRleCA2NTZhMjg2ZThmN2MzMTE1ZWU2YjliZjAwMzZiYWE3ZGE5NzI3ZGNjLi41ZGNhMGExMDNl
YmEzM2IyNjkwYjc0NmI2YTgxYTk3ZmViMzBjYWM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllclJlbmRlcmVyQ2hyb21pdW0uY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyUmVuZGVy
ZXJDaHJvbWl1bS5jcHAKQEAgLTE4NSw2ICsxODUsMTAgQEAgYm9vbCBMYXllclJlbmRlcmVyQ2hy
b21pdW06OmluaXRpYWxpemUoKQogICAgICAgICBtX2NhcGFiaWxpdGllcy51c2luZ0FjY2VsZXJh
dGVkUGFpbnRpbmcgPSB0cnVlOwogCiAgICAgV2ViQ29yZTo6RXh0ZW5zaW9uczNEKiBleHRlbnNp
b25zID0gbV9jb250ZXh0LT5nZXRFeHRlbnNpb25zKCk7CisgICAgbV9jYXBhYmlsaXRpZXMudXNp
bmdQb3N0U3ViQnVmZmVyID0gZXh0ZW5zaW9ucy0+c3VwcG9ydHMoIkdMX0NIUk9NSVVNX3Bvc3Rf
c3ViX2J1ZmZlciIpOworICAgIGlmIChtX2NhcGFiaWxpdGllcy51c2luZ1Bvc3RTdWJCdWZmZXIp
CisgICAgICAgIGV4dGVuc2lvbnMtPmVuc3VyZUVuYWJsZWQoIkdMX0NIUk9NSVVNX3Bvc3Rfc3Vi
X2J1ZmZlciIpOworCiAgICAgbV9jYXBhYmlsaXRpZXMudXNpbmdNYXBTdWIgPSBleHRlbnNpb25z
LT5zdXBwb3J0cygiR0xfQ0hST01JVU1fbWFwX3N1YiIpOwogICAgIGlmIChtX2NhcGFiaWxpdGll
cy51c2luZ01hcFN1YikKICAgICAgICAgZXh0ZW5zaW9ucy0+ZW5zdXJlRW5hYmxlZCgiR0xfQ0hS
T01JVU1fbWFwX3N1YiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaAppbmRleCA2ZDQ1Yzg1
NTliNjg4YTU1OGM0ZjcyMGUxYjhkNThhZDY5ZTc2NDFiLi4wNTU4NTk3NjBjYTg1MmFmYjE1OTEx
ZWMzNWU0YzAwNjZlYTliMDdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaApAQCAtODUs
NiArODUsNyBAQCBzdHJ1Y3QgQ0NTZXR0aW5ncyB7CiBzdHJ1Y3QgTGF5ZXJSZW5kZXJlckNhcGFi
aWxpdGllcyB7CiAgICAgTGF5ZXJSZW5kZXJlckNhcGFiaWxpdGllcygpCiAgICAgICAgIDogYmVz
dFRleHR1cmVGb3JtYXQoMCkKKyAgICAgICAgLCB1c2luZ1Bvc3RTdWJCdWZmZXIoZmFsc2UpCiAg
ICAgICAgICwgdXNpbmdNYXBTdWIoZmFsc2UpCiAgICAgICAgICwgdXNpbmdBY2NlbGVyYXRlZFBh
aW50aW5nKGZhbHNlKQogICAgICAgICAsIHVzaW5nU2V0VmlzaWJpbGl0eShmYWxzZSkKQEAgLTky
LDYgKzkzLDcgQEAgc3RydWN0IExheWVyUmVuZGVyZXJDYXBhYmlsaXRpZXMgewogICAgICAgICAs
IG1heFRleHR1cmVTaXplKDApIHsgfQogCiAgICAgR0MzRGVudW0gYmVzdFRleHR1cmVGb3JtYXQ7
CisgICAgYm9vbCB1c2luZ1Bvc3RTdWJCdWZmZXI7CiAgICAgYm9vbCB1c2luZ01hcFN1YjsKICAg
ICBib29sIHVzaW5nQWNjZWxlcmF0ZWRQYWludGluZzsKICAgICBib29sIHVzaW5nU2V0VmlzaWJp
bGl0eTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdyYXBo
aWNzQ29udGV4dDNELmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJHcmFwaGlj
c0NvbnRleHQzRC5oCmluZGV4IDQyYzNkMGRjMTYwNDUzMjMzZjhkNWY3YmQ1Y2RjNjM4MzVhYWY3
NDQuLjQ1MDc1OTg4MzI0NjE3NTg0ZGI5NDBhNjMxNjYzMmVjYzBiMTI5MDkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdyYXBoaWNzQ29udGV4dDNELmgKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViR3JhcGhpY3NDb250ZXh0M0QuaApA
QCAtMTYzLDYgKzE2Myw5IEBAIHB1YmxpYzoKICAgICAvLyBjb250ZXh0IHRvIHRoZSBjb3JyZXNw
b25kaW5nIHRleHR1cmUgdXNlZCBieSB0aGUgY29tcG9zaXRvci4KICAgICB2aXJ0dWFsIHZvaWQg
cHJlcGFyZVRleHR1cmUoKSA9IDA7CiAKKyAgICAvLyBHTF9DSFJPTUlVTV9wb3N0X3N1Yl9idWZm
ZXIgLSBDb3BpZXMgcGFydCBvZiB0aGUgYmFjayBidWZmZXIgdG8gdGhlIGZyb250IGJ1ZmZlci4K
KyAgICB2aXJ0dWFsIHZvaWQgcG9zdFN1YkJ1ZmZlckNIUk9NSVVNKGludCB4LCBpbnQgeSwgaW50
IHdpZHRoLCBpbnQgaGVpZ2h0KSA9IDA7CisKICAgICAvLyBTeW50aGVzaXplcyBhbiBPcGVuR0wg
ZXJyb3Igd2hpY2ggd2lsbCBiZSByZXR1cm5lZCBmcm9tIGEKICAgICAvLyBsYXRlciBjYWxsIHRv
IGdldEVycm9yLiBUaGlzIGlzIHVzZWQgdG8gZW11bGF0ZSBPcGVuR0wgRVMKICAgICAvLyAyLjAg
YmVoYXZpb3Igb24gdGhlIGRlc2t0b3AgYW5kIHRvIGVuZm9yY2UgYWRkaXRpb25hbCBlcnJvcgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRXh0ZW5zaW9uczNEQ2hyb21p
dW0uY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRXh0ZW5zaW9uczNEQ2hyb21pdW0u
Y3BwCmluZGV4IGYwNjEwN2MzZmU2NDNhODFlOGI2Yzk4NDNiMTM0Yjc4ZTkyOWRmZDguLjczN2Q3
M2Y0MGY5NmY2ZjZiMjgxZDA5YjdmZDQxMDI2ZmIyMGFkNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL0V4dGVuc2lvbnMzRENocm9taXVtLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9FeHRlbnNpb25zM0RDaHJvbWl1bS5jcHAKQEAgLTc3LDYgKzc3
LDExIEBAIHZvaWQgRXh0ZW5zaW9uczNEQ2hyb21pdW06OnJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0
aXNhbXBsZSh1bnNpZ25lZCBsb25nIHRhcmdldCwKICAgICBtX3ByaXZhdGUtPnJlbmRlcmJ1ZmZl
clN0b3JhZ2VNdWx0aXNhbXBsZUNIUk9NSVVNKHRhcmdldCwgc2FtcGxlcywgaW50ZXJuYWxmb3Jt
YXQsIHdpZHRoLCBoZWlnaHQpOwogfQogCit2b2lkIEV4dGVuc2lvbnMzRENocm9taXVtOjpwb3N0
U3ViQnVmZmVyQ0hST01JVU0oaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCit7
CisgICAgbV9wcml2YXRlLT5wb3N0U3ViQnVmZmVyQ0hST01JVU0oeCwgeSwgd2lkdGgsIGhlaWdo
dCk7Cit9CisKIHZvaWQqIEV4dGVuc2lvbnMzRENocm9taXVtOjptYXBCdWZmZXJTdWJEYXRhQ0hS
T01JVU0odW5zaWduZWQgdGFyZ2V0LCBpbnQgb2Zmc2V0LCBpbnQgc2l6ZSwgdW5zaWduZWQgYWNj
ZXNzKQogewogICAgIHJldHVybiBtX3ByaXZhdGUtPm1hcEJ1ZmZlclN1YkRhdGFDSFJPTUlVTSh0
YXJnZXQsIG9mZnNldCwgc2l6ZSwgYWNjZXNzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEQ2hyb21pdW0uY3BwIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAKaW5kZXggYTUxZmFk
MTk2Y2M4NDk3ODQ2ZWM5ZTQzNjU2ZDU3Njk4MGZkMGY3MC4uZGFmZjAzM2EzMmE0Mzk0YzY1MjJl
OWQwNjE5MjA1ZDZlYjc4OGU3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvR3JhcGhpY3NDb250ZXh0M0RDaHJvbWl1bS5jcHAKQEAgLTg3Niw2ICs4NzYsOCBA
QCBib29sIEdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6aXNFeHRlbnNpb25FbmFibGVkKGNvbnN0
IFN0cmluZyYgbmFtZSkKICAgICByZXR1cm4gbV9lbmFibGVkRXh0ZW5zaW9ucy5jb250YWlucyht
YXBwZWROYW1lKTsKIH0KIAorREVMRUdBVEVfVE9fSU1QTF80KHBvc3RTdWJCdWZmZXJDSFJPTUlV
TSwgaW50LCBpbnQsIGludCwgaW50KQorCiBERUxFR0FURV9UT19JTVBMXzRSKG1hcEJ1ZmZlclN1
YkRhdGFDSFJPTUlVTSwgR0MzRGVudW0sIEdDM0RzaXplaXB0ciwgR0MzRHNpemVpLCBHQzNEZW51
bSwgdm9pZCopCiBERUxFR0FURV9UT19JTVBMXzEodW5tYXBCdWZmZXJTdWJEYXRhQ0hST01JVU0s
IGNvbnN0IHZvaWQqKQogREVMRUdBVEVfVE9fSU1QTF85UihtYXBUZXhTdWJJbWFnZTJEQ0hST01J
VU0sIEdDM0RlbnVtLCBHQzNEaW50LCBHQzNEaW50LCBHQzNEaW50LCBHQzNEc2l6ZWksIEdDM0Rz
aXplaSwgR0MzRGVudW0sIEdDM0RlbnVtLCBHQzNEZW51bSwgdm9pZCopCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9HcmFwaGljc0NvbnRleHQzRFByaXZhdGUuaCBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5oCmluZGV4
IDAzZTNhNGVlM2U3MmY0MDQ4NjlhNTEyYWQ0M2VhMWY2Y2M3NzZhMTMuLmI3OWJmZDlmYzAzNjNh
MmRlMjRhNWYwYmFhZTMyYTUwZDc0ZjExMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL0dyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5oCkBAIC0xMDMsNiArMTAzLDkg
QEAgcHVibGljOgogCiAgICAgdm9pZCBwcmVwYXJlVGV4dHVyZSgpOwogCisgICAgLy8gQ0hST01J
VU1fcG9zdF9zdWJfYnVmZmVyCisgICAgdm9pZCBwb3N0U3ViQnVmZmVyQ0hST01JVU0oaW50IHgs
IGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NP
TVBPU0lUSU5HKQogICAgIFdlYkdMTGF5ZXJDaHJvbWl1bSogcGxhdGZvcm1MYXllcigpOwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL01vY2tXZWJHcmFw
aGljc0NvbnRleHQzRC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9Nb2NrV2ViR3Jh
cGhpY3NDb250ZXh0M0QuaAppbmRleCA4NzI2NWJjYjcxNDg3ZGJjYTc0NGNmMWMzZWFlMTcyOWJl
YzVjYWY1Li5jMTQwMTBmNzczMzBjNzYzNjg3MTE2ZGM3MjBjODBmMGMwNWY2NmRiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL01vY2tXZWJHcmFwaGljc0NvbnRleHQz
RC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvTW9ja1dlYkdyYXBoaWNzQ29u
dGV4dDNELmgKQEAgLTUyLDYgKzUyLDggQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHBy
ZXBhcmVUZXh0dXJlKCkgeyB9CiAKKyAgICB2aXJ0dWFsIHZvaWQgcG9zdFN1YkJ1ZmZlckNIUk9N
SVVNKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KSB7IH0KKwogICAgIHZpcnR1
YWwgdm9pZCBzeW50aGVzaXplR0xFcnJvcihXR0MzRGVudW0pIHsgfQogCiAgICAgdmlydHVhbCBi
b29sIGlzQ29udGV4dExvc3QoKSB7IHJldHVybiBmYWxzZTsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114896</attachid>
            <date>2011-11-14 00:54:13 -0800</date>
            <delta_ts>2011-11-14 00:56:36 -0800</delta_ts>
            <desc>Patch with failing assertion removed</desc>
            <filename>worker-list.patch</filename>
            <type>text/plain</type>
            <size>12751</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5OTAwM2NhLi41MjE4ODRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTEtMTEt
MTQgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2Vi
IEluc3BlY3RvcjogW2Nocm9taXVtXSBsaXN0IGRlZGljYXRlZCB3b3JrZXJzIGluIGNhc2UgaW5z
cGVjdG9yIG9wZW5lZCBwb3N0LXdvcmtlciBjcmVhdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMDIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
UGF2ZWwgRmVsZG1hbi4KKworICAgICAgICAqIGh0dHAvdGVzdHMvaW5zcGVjdG9yLWVuYWJsZWQv
ZGVkaWNhdGVkLXdvcmtlcnMtbGlzdC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0
dHAvdGVzdHMvaW5zcGVjdG9yLWVuYWJsZWQvZGVkaWNhdGVkLXdvcmtlcnMtbGlzdC5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL3Jlc291cmNlcy9k
ZWRpY2F0ZWQtd29ya2VyLmpzOiBBZGRlZC4KKyAgICAgICAgKGRvV29yayk6CisKIDIwMTEtMTEt
MTMgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4QHdlYmtpdC5vcmc+CiAKICAgICAgICAg
UkVHUkVTU0lPTig5OTg0OSk6IE5VTEwtZGVyZWYgaW4gdXBkYXRlTGFzdE1lZGlhTGluZSB3aGVu
IHBhcnNpbmcgc29tZSBtZWRpYS1xdWVyaWVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL2RlZGljYXRlZC13b3JrZXJzLWxpc3QtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3ItZW5hYmxlZC9kZWRpY2F0ZWQt
d29ya2Vycy1saXN0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5lYWI1OTQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9p
bnNwZWN0b3ItZW5hYmxlZC9kZWRpY2F0ZWQtd29ya2Vycy1saXN0LWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDkgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyMDogUmVjZWl2ZWQgbWVzc2FnZSBm
cm9tIHdvcmtlciAxCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjA6IFJlY2VpdmVkIG1lc3NhZ2Ug
ZnJvbSB3b3JrZXIgMgorVGVzdHMgdGhhdCBkZWRpY2F0ZWQgd29ya2VycyBjcmVhdGVkIGJlZm9y
ZSB3b3JrZXIgaW5zcGVjdGlvbiB3YXMgZW5hYmxlZCB3aWxsIGJlIHJlcG9ydGVkIHRvIHRoZSBm
cm9udC1lbmQuIEJ1ZyA3MjAyMAorCitXb3JrZXIgaW5zcGVjdGlvbiBlbmFibGVkCitBZGRlZCB3
b3JrZXI6IDEKK0FkZGVkIHdvcmtlcjogMgorRG9uZS4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9pbnNwZWN0b3ItZW5hYmxlZC9kZWRpY2F0ZWQtd29ya2Vycy1saXN0Lmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL2RlZGljYXRlZC13
b3JrZXJzLWxpc3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMmFh
ODFiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3It
ZW5hYmxlZC9kZWRpY2F0ZWQtd29ya2Vycy1saXN0Lmh0bWwKQEAgLTAsMCArMSw2MyBAQAorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9pbnNwZWN0b3IvaW5zcGVjdG9yLXRlc3QuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL2luc3BlY3Rvci9kZWJ1Z2dlci10ZXN0LmpzIj48
L3NjcmlwdD4KKworPHNjcmlwdD4KK2Z1bmN0aW9uIGhhbmRsZUxvYWQoKQoreworICAgIGlmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVy
LndhaXRVbnRpbERvbmUoKTsKKworICAgIHZhciB3b3JrZXIxID0gbmV3IFdvcmtlcigicmVzb3Vy
Y2VzL2RlZGljYXRlZC13b3JrZXIuanM/aWQ9MSIpOworICAgIHdvcmtlcjEub25tZXNzYWdlID0g
aGFuZGxlTWVzc2FnZUZyb21Xb3JrZXI7CisgICAgdmFyIHdvcmtlcjIgPSBuZXcgV29ya2VyKCJy
ZXNvdXJjZXMvZGVkaWNhdGVkLXdvcmtlci5qcz9pZD0yIik7CisgICAgd29ya2VyMi5vbm1lc3Nh
Z2UgPSBoYW5kbGVNZXNzYWdlRnJvbVdvcmtlcjsKKyAgICB2YXIgbWVzc2FnZUNvdW50ID0gMDsK
KyAgICBmdW5jdGlvbiBoYW5kbGVNZXNzYWdlRnJvbVdvcmtlcihldmVudCkKKyAgICB7CisgICAg
ICAgIG1lc3NhZ2VDb3VudCsrOworICAgICAgICBjb25zb2xlLmxvZygiUmVjZWl2ZWQgbWVzc2Fn
ZSBmcm9tIHdvcmtlciAiICsgbWVzc2FnZUNvdW50KTsKKyAgICAgICAgaWYgKG1lc3NhZ2VDb3Vu
dCA9PT0gMikgeworICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
KyAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zaG93V2ViSW5zcGVjdG9yKCk7
CisgICAgICAgICAgICBydW5UZXN0KCk7CisgICAgICAgIH0KKyAgICB9Cit9CisKKworZnVuY3Rp
b24gdGVzdCgpCit7CisgICAgV29ya2VyQWdlbnQuc2V0V29ya2VySW5zcGVjdGlvbkVuYWJsZWQo
ZmFsc2UsIGRpZERpc2FibGVXb3JrZXJJbnNwZWN0aW9uKTsKKworICAgIGZ1bmN0aW9uIGRpZERp
c2FibGVXb3JrZXJJbnNwZWN0aW9uKCkKKyAgICB7CisgICAgICAgIFdlYkluc3BlY3Rvci53b3Jr
ZXJNYW5hZ2VyLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLldvcmtlck1hbmFnZXIuRXZl
bnRzLldvcmtlckFkZGVkLCB3b3JrZXJBZGRlZCwgdGhpcyk7CisgICAgICAgIFdvcmtlckFnZW50
LnNldFdvcmtlckluc3BlY3Rpb25FbmFibGVkKHRydWUpOworICAgICAgICBJbnNwZWN0b3JUZXN0
LmFkZFJlc3VsdCgiV29ya2VyIGluc3BlY3Rpb24gZW5hYmxlZCIpOworICAgIH0KKworICAgIHZh
ciB3b3JrZXJDb3VudCA9IDA7CisgICAgZnVuY3Rpb24gd29ya2VyQWRkZWQoKQorICAgIHsKKyAg
ICAgICAgd29ya2VyQ291bnQrKzsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIkFk
ZGVkIHdvcmtlcjogIiArIHdvcmtlckNvdW50KTsKKyAgICAgICAgaWYgKHdvcmtlckNvdW50ID09
PSAyKSB7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiRG9uZS4iKTsKKyAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuY29tcGxldGVUZXN0KCk7CisgICAgICAgIH0KKyAgICB9
Cit9OworCis8L3NjcmlwdD4KKworPC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9ImhhbmRsZUxvYWQo
KSI+Cis8cD5UZXN0cyB0aGF0IGRlZGljYXRlZCB3b3JrZXJzIGNyZWF0ZWQgYmVmb3JlIHdvcmtl
ciBpbnNwZWN0aW9uIHdhcyBlbmFibGVkIHdpbGwgYmUgcmVwb3J0ZWQgdG8gdGhlIGZyb250LWVu
ZC4KKzxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MjAy
MCI+QnVnIDcyMDIwPC9hPgorPC9wPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL3Jlc291cmNlcy9kZWRpY2F0
ZWQtd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3ItZW5hYmxlZC9y
ZXNvdXJjZXMvZGVkaWNhdGVkLXdvcmtlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi44NjE3NDk2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9pbnNwZWN0b3ItZW5hYmxlZC9yZXNvdXJjZXMvZGVkaWNhdGVkLXdvcmtlci5qcwpAQCAtMCww
ICsxLDcgQEAKK3ZhciB3b3JrZXJJZCA9IGxvY2F0aW9uLnNlYXJjaC5zdWJzdHJpbmcoNCk7Citw
b3N0TWVzc2FnZSgiV29ya2VyICIgKyB3b3JrZXJJZCArICIgc3RhcnRlZC4iKTsKK2RvV29yaygp
Oworc2V0SW50ZXJ2YWwoZG9Xb3JrLCAxMDAwKTsKK2Z1bmN0aW9uIGRvV29yaygpIHsKK30KKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlv
bnMudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMu
dHh0CmluZGV4IDkyNjkyZjcuLmQ2MzhiNjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKQEAgLTM4ODIsMyArMzg4Miw2IEBA
IEJVR01TVEFSWklOR0VSIDogZmFzdC9qcy9tb3ppbGxhL3N0cmljdC8xNS40LjUuMS5odG1sID0g
VEVYVAogQlVHX1NFTk9SQkxBTkNPIE1BQyBMSU5VWCBHUFUgOiBmYXN0L2NhbnZhcy9jYW52YXMt
dHJhbnNmb3Jtcy1maWxsUmVjdC1zaGFkb3cuaHRtbCA9IFRFWFQKIAogQlVHV0s3MjE0OSA6IG1l
ZGlhL3RyYWNrL3RyYWNrbGlzdC1pcy1yZWFjaGFibGUuaHRtbCA9IFRFWFQKKworQlVHVjhfMTgy
MSBXSU4gTElOVVggOiBodHRwL3Rlc3RzL2luc3BlY3Rvci1lbmFibGVkL2RlZGljYXRlZC13b3Jr
ZXJzLWxpc3QuaHRtbCA9IFBBU1MgQ1JBU0gKK0JVR1dLNzIxMzMgTUFDIDogaHR0cC90ZXN0cy9p
bnNwZWN0b3ItZW5hYmxlZC9kZWRpY2F0ZWQtd29ya2Vycy1saXN0Lmh0bWwgPSBQQVNTIENSQVNI
IFRJTUVPVVQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCA5OTIwNzkwLi4zMDM1NWE2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMzEgQEAKKzIwMTEtMTEtMTQgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogW2Nocm9taXVtXSBsaXN0IGRlZGljYXRl
ZCB3b3JrZXJzIGluIGNhc2UgaW5zcGVjdG9yIG9wZW5lZCBwb3N0LXdvcmtlciBjcmVhdGlvbi4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMDIwCisK
KyAgICAgICAgQ29sbGVjdCBpbmZvcm1hdGlvbiBhYm91dCBkZWRpY2F0ZWQgd29ya2VycyBldmVu
IHdoZW4gaW5zcGVjdG9yIGlzIGNsb3NlZC4gVGhpcworICAgICAgICB3YXkgd2UgY2FuIGxpc3Qg
YWxsIGRlZGljYXRlZCB3b3JrZXJzIGlmIHRoZSBmcm9udC1lbmQgb3BlbnMgbGF0ZXIuCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgUGF2ZWwgRmVsZG1hbi4KKworICAgICAgICBUZXN0OiBodHRwL3Rl
c3RzL2luc3BlY3Rvci1lbmFibGVkL2RlZGljYXRlZC13b3JrZXJzLWxpc3QuaHRtbAorCisgICAg
ICAgICogaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRTdGFydFdvcmtlckNvbnRleHQpOgor
ICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JXb3JrZXJBZ2VudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JXb3JrZXJBZ2VudDo6SW5zcGVjdG9yV29ya2VyQWdlbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yV29ya2VyQWdlbnQ6On5JbnNwZWN0b3JXb3JrZXJBZ2Vu
dCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JXb3JrZXJBZ2VudDo6c2V0RnJvbnRlbmQp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yV29ya2VyQWdlbnQ6OnJlc3RvcmUpOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yV29ya2VyQWdlbnQ6OmNsZWFyRnJvbnRlbmQpOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yV29ya2VyQWdlbnQ6OnNldFdvcmtlckluc3BlY3Rpb25F
bmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvcldvcmtlckFnZW50OjpkaWRTdGFy
dFdvcmtlckNvbnRleHQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yV29ya2VyQWdlbnQ6
OndvcmtlckNvbnRleHRUZXJtaW5hdGVkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvcldv
cmtlckFnZW50OjpjcmVhdGVXb3JrZXJGcm9udGVuZENoYW5uZWxzRm9yRXhpc3RpbmdXb3JrZXJz
KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvcldvcmtlckFnZW50OjpkZXN0cm95V29ya2Vy
RnJvbnRlbmRDaGFubmVscyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JXb3JrZXJBZ2Vu
dDo6Y3JlYXRlV29ya2VyRnJvbnRlbmRDaGFubmVsKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5z
cGVjdG9yV29ya2VyQWdlbnQuaDoKKwogMjAxMS0xMS0xMyAgTmF0IER1Y2EgIDxuZHVjYUBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBMYXllclJlbmRlcmVyQ2hyb21pdW06Omlu
aXRpYWxpemUgc2hvdWxkIGZhaWwgd2hlbiBHYXBoaWNzQ29udGV4dDNEOjptYWtlQ3VycmVudCBm
YWlscwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1l
bnRhdGlvbi5oCmluZGV4IGI5NjE4NmIuLmE2MjAyN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKQEAgLTk1OSw3ICs5NTks
NiBAQCBpbmxpbmUgYm9vbCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnNob3VsZFBhdXNlRGVk
aWNhdGVkV29ya2VyT25TdGFydChTY3JpcHRFeAogaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjpkaWRTdGFydFdvcmtlckNvbnRleHQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCog
Y29udGV4dCwgV29ya2VyQ29udGV4dFByb3h5KiBwcm94eSwgY29uc3QgS1VSTCYgdXJsKQogewog
I2lmIEVOQUJMRShJTlNQRUNUT1IpCi0gICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZv
aWQoKSk7CiAgICAgaWYgKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMg
PSBpbnN0cnVtZW50aW5nQWdlbnRzRm9yQ29udGV4dChjb250ZXh0KSkKICAgICAgICAgZGlkU3Rh
cnRXb3JrZXJDb250ZXh0SW1wbChpbnN0cnVtZW50aW5nQWdlbnRzLCBwcm94eSwgdXJsKTsKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvcldvcmtl
ckFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JXb3JrZXJBZ2Vu
dC5jcHAKaW5kZXggZDgxNGM3Ni4uYWY5ZjUwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvcldvcmtlckFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yV29ya2VyQWdlbnQuY3BwCkBAIC0xMTUsMzQgKzExNSwzMCBAQCBJ
bnNwZWN0b3JXb3JrZXJBZ2VudDo6SW5zcGVjdG9yV29ya2VyQWdlbnQoSW5zdHJ1bWVudGluZ0Fn
ZW50cyogaW5zdHJ1bWVudGluZ0FnZQogICAgICwgbV9pbnNwZWN0b3JGcm9udGVuZCgwKQogICAg
ICwgbV9pbnNwZWN0b3JTdGF0ZShpbnNwZWN0b3JTdGF0ZSkKIHsKKyAgICBtX2luc3RydW1lbnRp
bmdBZ2VudHMtPnNldEluc3BlY3RvcldvcmtlckFnZW50KHRoaXMpOwogfQogCiBJbnNwZWN0b3JX
b3JrZXJBZ2VudDo6fkluc3BlY3RvcldvcmtlckFnZW50KCkKIHsKKyAgICBtX2luc3RydW1lbnRp
bmdBZ2VudHMtPnNldEluc3BlY3RvcldvcmtlckFnZW50KDApOwogfQogCiB2b2lkIEluc3BlY3Rv
cldvcmtlckFnZW50OjpzZXRGcm9udGVuZChJbnNwZWN0b3JGcm9udGVuZCogZnJvbnRlbmQpCiB7
CiAgICAgbV9pbnNwZWN0b3JGcm9udGVuZCA9IGZyb250ZW5kOwotICAgIHJlc3RvcmUoKTsKIH0K
IAogdm9pZCBJbnNwZWN0b3JXb3JrZXJBZ2VudDo6cmVzdG9yZSgpCiB7CiAgICAgaWYgKG1faW5z
cGVjdG9yU3RhdGUtPmdldEJvb2xlYW4oV29ya2VyQWdlbnRTdGF0ZTo6d29ya2VySW5zcGVjdGlv
bkVuYWJsZWQpKQotICAgICAgICBtX2luc3RydW1lbnRpbmdBZ2VudHMtPnNldEluc3BlY3Rvcldv
cmtlckFnZW50KHRoaXMpOworICAgICAgICBjcmVhdGVXb3JrZXJGcm9udGVuZENoYW5uZWxzRm9y
RXhpc3RpbmdXb3JrZXJzKCk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yV29ya2VyQWdlbnQ6OmNsZWFy
RnJvbnRlbmQoKQogewogICAgIG1faW5zcGVjdG9yRnJvbnRlbmQgPSAwOwotICAgIG1faW5zdHJ1
bWVudGluZ0FnZW50cy0+c2V0SW5zcGVjdG9yV29ya2VyQWdlbnQoMCk7CiAgICAgbV9pbnNwZWN0
b3JTdGF0ZS0+c2V0Qm9vbGVhbihXb3JrZXJBZ2VudFN0YXRlOjphdXRvY29ubmVjdFRvV29ya2Vy
cywgZmFsc2UpOwotICAgIGZvciAoV29ya2VyQ2hhbm5lbHM6Oml0ZXJhdG9yIGl0ID0gbV9pZFRv
Q2hhbm5lbC5iZWdpbigpOyBpdCAhPSBtX2lkVG9DaGFubmVsLmVuZCgpOyArK2l0KSB7Ci0gICAg
ICAgIGl0LT5zZWNvbmQtPmRpc2Nvbm5lY3RGcm9tV29ya2VyQ29udGV4dCgpOwotICAgICAgICBk
ZWxldGUgaXQtPnNlY29uZDsKLSAgICB9Ci0gICAgbV9pZFRvQ2hhbm5lbC5jbGVhcigpOworICAg
IGRlc3Ryb3lXb3JrZXJGcm9udGVuZENoYW5uZWxzKCk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yV29y
a2VyQWdlbnQ6OnNldFdvcmtlckluc3BlY3Rpb25FbmFibGVkKEVycm9yU3RyaW5nKiwgYm9vbCB2
YWx1ZSkKQEAgLTE1MSw5ICsxNDcsOSBAQCB2b2lkIEluc3BlY3RvcldvcmtlckFnZW50OjpzZXRX
b3JrZXJJbnNwZWN0aW9uRW5hYmxlZChFcnJvclN0cmluZyosIGJvb2wgdmFsdWUpCiAgICAgaWYg
KCFtX2luc3BlY3RvckZyb250ZW5kKQogICAgICAgICByZXR1cm47CiAgICAgaWYgKHZhbHVlKQot
ICAgICAgICBtX2luc3RydW1lbnRpbmdBZ2VudHMtPnNldEluc3BlY3RvcldvcmtlckFnZW50KHRo
aXMpOworICAgICAgICBjcmVhdGVXb3JrZXJGcm9udGVuZENoYW5uZWxzRm9yRXhpc3RpbmdXb3Jr
ZXJzKCk7CiAgICAgZWxzZQotICAgICAgICBtX2luc3RydW1lbnRpbmdBZ2VudHMtPnNldEluc3Bl
Y3RvcldvcmtlckFnZW50KDApOworICAgICAgICBkZXN0cm95V29ya2VyRnJvbnRlbmRDaGFubmVs
cygpOwogfQogCiB2b2lkIEluc3BlY3RvcldvcmtlckFnZW50Ojpjb25uZWN0VG9Xb3JrZXIoRXJy
b3JTdHJpbmcqIGVycm9yLCBpbnQgd29ya2VySWQpCkBAIC0xOTUsMTggKzE5MSwxNCBAQCBib29s
IEluc3BlY3RvcldvcmtlckFnZW50OjpzaG91bGRQYXVzZURlZGljYXRlZFdvcmtlck9uU3RhcnQo
KQogCiB2b2lkIEluc3BlY3RvcldvcmtlckFnZW50OjpkaWRTdGFydFdvcmtlckNvbnRleHQoV29y
a2VyQ29udGV4dFByb3h5KiB3b3JrZXJDb250ZXh0UHJveHksIGNvbnN0IEtVUkwmIHVybCkKIHsK
LSAgICBXb3JrZXJGcm9udGVuZENoYW5uZWwqIGNoYW5uZWwgPSBuZXcgV29ya2VyRnJvbnRlbmRD
aGFubmVsKG1faW5zcGVjdG9yRnJvbnRlbmQsIHdvcmtlckNvbnRleHRQcm94eSk7Ci0gICAgbV9p
ZFRvQ2hhbm5lbC5zZXQoY2hhbm5lbC0+aWQoKSwgY2hhbm5lbCk7Ci0KLSAgICBBU1NFUlQobV9p
bnNwZWN0b3JGcm9udGVuZCk7Ci0gICAgYm9vbCBhdXRvY29ubmVjdFRvV29ya2VycyA9IG1faW5z
cGVjdG9yU3RhdGUtPmdldEJvb2xlYW4oV29ya2VyQWdlbnRTdGF0ZTo6YXV0b2Nvbm5lY3RUb1dv
cmtlcnMpOwotICAgIGlmIChhdXRvY29ubmVjdFRvV29ya2VycykKLSAgICAgICAgY2hhbm5lbC0+
Y29ubmVjdFRvV29ya2VyQ29udGV4dCgpOwotICAgIG1faW5zcGVjdG9yRnJvbnRlbmQtPndvcmtl
cigpLT53b3JrZXJDcmVhdGVkKGNoYW5uZWwtPmlkKCksIHVybC5zdHJpbmcoKSwgYXV0b2Nvbm5l
Y3RUb1dvcmtlcnMpOworICAgIG1fZGVkaWNhdGVkV29ya2Vycy5zZXQod29ya2VyQ29udGV4dFBy
b3h5LCB1cmwuc3RyaW5nKCkpOworICAgIGlmIChtX2luc3BlY3RvckZyb250ZW5kICYmIG1faW5z
cGVjdG9yU3RhdGUtPmdldEJvb2xlYW4oV29ya2VyQWdlbnRTdGF0ZTo6d29ya2VySW5zcGVjdGlv
bkVuYWJsZWQpKQorICAgICAgICBjcmVhdGVXb3JrZXJGcm9udGVuZENoYW5uZWwod29ya2VyQ29u
dGV4dFByb3h5LCB1cmwuc3RyaW5nKCkpOwogfQogCiB2b2lkIEluc3BlY3RvcldvcmtlckFnZW50
Ojp3b3JrZXJDb250ZXh0VGVybWluYXRlZChXb3JrZXJDb250ZXh0UHJveHkqIHByb3h5KQogewor
ICAgIG1fZGVkaWNhdGVkV29ya2Vycy5yZW1vdmUocHJveHkpOwogICAgIGZvciAoV29ya2VyQ2hh
bm5lbHM6Oml0ZXJhdG9yIGl0ID0gbV9pZFRvQ2hhbm5lbC5iZWdpbigpOyBpdCAhPSBtX2lkVG9D
aGFubmVsLmVuZCgpOyArK2l0KSB7CiAgICAgICAgIGlmIChwcm94eSA9PSBpdC0+c2Vjb25kLT5w
cm94eSgpKSB7CiAgICAgICAgICAgICBtX2luc3BlY3RvckZyb250ZW5kLT53b3JrZXIoKS0+d29y
a2VyVGVybWluYXRlZChpdC0+Zmlyc3QpOwpAQCAtMjE3LDYgKzIwOSwzMyBAQCB2b2lkIEluc3Bl
Y3RvcldvcmtlckFnZW50Ojp3b3JrZXJDb250ZXh0VGVybWluYXRlZChXb3JrZXJDb250ZXh0UHJv
eHkqIHByb3h5KQogICAgIH0KIH0KIAordm9pZCBJbnNwZWN0b3JXb3JrZXJBZ2VudDo6Y3JlYXRl
V29ya2VyRnJvbnRlbmRDaGFubmVsc0ZvckV4aXN0aW5nV29ya2VycygpCit7CisgICAgZm9yIChE
ZWRpY2F0ZWRXb3JrZXJzOjppdGVyYXRvciBpdCA9IG1fZGVkaWNhdGVkV29ya2Vycy5iZWdpbigp
OyBpdCAhPSBtX2RlZGljYXRlZFdvcmtlcnMuZW5kKCk7ICsraXQpCisgICAgICAgIGNyZWF0ZVdv
cmtlckZyb250ZW5kQ2hhbm5lbChpdC0+Zmlyc3QsIGl0LT5zZWNvbmQpOworfQorCit2b2lkIElu
c3BlY3RvcldvcmtlckFnZW50OjpkZXN0cm95V29ya2VyRnJvbnRlbmRDaGFubmVscygpCit7Cisg
ICAgZm9yIChXb3JrZXJDaGFubmVsczo6aXRlcmF0b3IgaXQgPSBtX2lkVG9DaGFubmVsLmJlZ2lu
KCk7IGl0ICE9IG1faWRUb0NoYW5uZWwuZW5kKCk7ICsraXQpIHsKKyAgICAgICAgaXQtPnNlY29u
ZC0+ZGlzY29ubmVjdEZyb21Xb3JrZXJDb250ZXh0KCk7CisgICAgICAgIGRlbGV0ZSBpdC0+c2Vj
b25kOworICAgIH0KKyAgICBtX2lkVG9DaGFubmVsLmNsZWFyKCk7Cit9CisKK3ZvaWQgSW5zcGVj
dG9yV29ya2VyQWdlbnQ6OmNyZWF0ZVdvcmtlckZyb250ZW5kQ2hhbm5lbChXb3JrZXJDb250ZXh0
UHJveHkqIHdvcmtlckNvbnRleHRQcm94eSwgY29uc3QgU3RyaW5nJiB1cmwpCit7CisgICAgV29y
a2VyRnJvbnRlbmRDaGFubmVsKiBjaGFubmVsID0gbmV3IFdvcmtlckZyb250ZW5kQ2hhbm5lbCht
X2luc3BlY3RvckZyb250ZW5kLCB3b3JrZXJDb250ZXh0UHJveHkpOworICAgIG1faWRUb0NoYW5u
ZWwuc2V0KGNoYW5uZWwtPmlkKCksIGNoYW5uZWwpOworCisgICAgQVNTRVJUKG1faW5zcGVjdG9y
RnJvbnRlbmQpOworICAgIGJvb2wgYXV0b2Nvbm5lY3RUb1dvcmtlcnMgPSBtX2luc3BlY3RvclN0
YXRlLT5nZXRCb29sZWFuKFdvcmtlckFnZW50U3RhdGU6OmF1dG9jb25uZWN0VG9Xb3JrZXJzKTsK
KyAgICBpZiAoYXV0b2Nvbm5lY3RUb1dvcmtlcnMpCisgICAgICAgIGNoYW5uZWwtPmNvbm5lY3RU
b1dvcmtlckNvbnRleHQoKTsKKyAgICBtX2luc3BlY3RvckZyb250ZW5kLT53b3JrZXIoKS0+d29y
a2VyQ3JlYXRlZChjaGFubmVsLT5pZCgpLCB1cmwsIGF1dG9jb25uZWN0VG9Xb3JrZXJzKTsKK30K
KwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFdPUktFUlMpICYm
IEVOQUJMRShJTlNQRUNUT1IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yV29ya2VyQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JXb3JrZXJBZ2VudC5oCmluZGV4IDVhNTJlNzAuLmI5NGRhOGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JXb3JrZXJBZ2VudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JXb3JrZXJBZ2VudC5oCkBAIC02OSw2ICs2OSw5IEBA
IHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBJbnNwZWN0b3JXb3JrZXJBZ2VudChJbnN0cnVtZW50
aW5nQWdlbnRzKiwgSW5zcGVjdG9yU3RhdGUqKTsKKyAgICB2b2lkIGNyZWF0ZVdvcmtlckZyb250
ZW5kQ2hhbm5lbHNGb3JFeGlzdGluZ1dvcmtlcnMoKTsKKyAgICB2b2lkIGNyZWF0ZVdvcmtlckZy
b250ZW5kQ2hhbm5lbChXb3JrZXJDb250ZXh0UHJveHkqLCBjb25zdCBTdHJpbmcmIHVybCk7Cisg
ICAgdm9pZCBkZXN0cm95V29ya2VyRnJvbnRlbmRDaGFubmVscygpOwogCiAgICAgSW5zdHJ1bWVu
dGluZ0FnZW50cyogbV9pbnN0cnVtZW50aW5nQWdlbnRzOwogICAgIEluc3BlY3RvckZyb250ZW5k
KiBtX2luc3BlY3RvckZyb250ZW5kOwpAQCAtNzcsNiArODAsOCBAQCBwcml2YXRlOgogICAgIGNs
YXNzIFdvcmtlckZyb250ZW5kQ2hhbm5lbDsKICAgICB0eXBlZGVmIEhhc2hNYXA8aW50LCBXb3Jr
ZXJGcm9udGVuZENoYW5uZWwqPiBXb3JrZXJDaGFubmVsczsKICAgICBXb3JrZXJDaGFubmVscyBt
X2lkVG9DaGFubmVsOworICAgIHR5cGVkZWYgSGFzaE1hcDxXb3JrZXJDb250ZXh0UHJveHkqLCBT
dHJpbmc+IERlZGljYXRlZFdvcmtlcnM7CisgICAgRGVkaWNhdGVkV29ya2VycyBtX2RlZGljYXRl
ZFdvcmtlcnM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>
<flag name="review"
          id="113668"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>