<?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>183048</bug_id>
          
          <creation_ts>2018-02-22 11:26:57 -0800</creation_ts>
          <short_desc>The WebContent process should not use NSScreen in the screenDepth implementation.</short_desc>
          <delta_ts>2018-02-22 16:17:44 -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>WebKit Misc.</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>182747</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Per Arne Vollan">pvollan</reporter>
          <assigned_to name="Per Arne Vollan">pvollan</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1401480</commentid>
    <comment_count>0</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-02-22 11:26:57 -0800</bug_when>
    <thetext>NSScreen method calls should be done in the UIProcess, since these calls will communicate with the WindowServer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401481</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-02-22 11:27:57 -0800</bug_when>
    <thetext>&lt;rdar://problem/37795231&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401490</commentid>
    <comment_count>2</comment_count>
      <attachid>334461</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-02-22 11:48:13 -0800</bug_when>
    <thetext>Created attachment 334461
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401501</commentid>
    <comment_count>3</comment_count>
      <attachid>334464</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-02-22 12:17:21 -0800</bug_when>
    <thetext>Created attachment 334464
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401504</commentid>
    <comment_count>4</comment_count>
      <attachid>334464</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2018-02-22 12:20:43 -0800</bug_when>
    <thetext>Comment on attachment 334464
Patch

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

This patch looks good, but I think it would be better if you got rid of the duplicated code. Can you please revise that?

&gt; Source/WebCore/platform/mac/PlatformScreenMac.mm:140
&gt; +        return screenProperties().get(iter-&gt;key).screenDepth;

This snippet of logic is also in &apos;screenRect&apos; and &apos;screenAvailableRect&apos;, (and perhaps others?). Can you encapsulate it in a common function that returns the appropriate screenProperties, then each of these methods can just return the member we are interested in?

Also: Should we ASSERT if the depth is zero, just in case the IPC didn&apos;t happen for some reason?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401519</commentid>
    <comment_count>5</comment_count>
      <attachid>334469</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-02-22 12:51:51 -0800</bug_when>
    <thetext>Created attachment 334469
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401521</commentid>
    <comment_count>6</comment_count>
      <attachid>334470</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-02-22 12:58:00 -0800</bug_when>
    <thetext>Created attachment 334470
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401525</commentid>
    <comment_count>7</comment_count>
      <attachid>334470</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2018-02-22 13:22:24 -0800</bug_when>
    <thetext>Comment on attachment 334470
Patch

Looks great! r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401539</commentid>
    <comment_count>8</comment_count>
      <attachid>334470</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-02-22 13:51:27 -0800</bug_when>
    <thetext>Comment on attachment 334470
Patch

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401587</commentid>
    <comment_count>9</comment_count>
      <attachid>334470</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-22 16:17:43 -0800</bug_when>
    <thetext>Comment on attachment 334470
Patch

Clearing flags on attachment: 334470

Committed r228940: &lt;https://trac.webkit.org/changeset/228940&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1401588</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-22 16:17:44 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>334461</attachid>
            <date>2018-02-22 11:48:13 -0800</date>
            <delta_ts>2018-02-22 12:17:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183048-20180222114812.patch</filename>
            <type>text/plain</type>
            <size>4531</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyODkyNikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI0IEBACisyMDE4LTAyLTIyICBQZXIgQXJu
ZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBUaGUgV2ViQ29udGVudCBw
cm9jZXNzIHNob3VsZCBub3QgdXNlIE5TU2NyZWVuIGluIHRoZSBzY3JlZW5EZXB0aCBpbXBsZW1l
bnRhdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4MzA0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE5TU2NyZWVuIG1ldGhvZCBjYWxscyBzaG91bGQgYmUgZG9uZSBpbiB0aGUgVUlQcm9jZXNzLCBz
aW5jZSB0aGVzZSBjYWxscyB3aWxsIGNvbW11bmljYXRlIHdpdGgKKyAgICAgICAgdGhlIFdpbmRv
d1NlcnZlci4gVGhlIHNjcmVlbiBkZXB0aCBwcm9wZXJ0eSBjYW4gYmUgcmV0cmlldmVkIGluIHRo
ZSBVSVByb2Nlc3MsIGFuZCBzZW50IHRvIHRoZQorICAgICAgICBXZWJDb250ZW50IHByb2Nlc3Ms
IHdoZXJlIGl0IGlzIGNhY2hlZC4gV2hlbmV2ZXIgc2NyZWVuIHByb3BlcnRpZXMgY2hhbmdlLCB0
aGUgVUlQcm9jZXNzIHdpbGwKKyAgICAgICAgc2VuZCB0aGUgbmV3IHNjcmVlbiBwcm9wZXJ0aWVz
IHRvIHRoZSBXZWJQcm9jZXNzLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgY292ZXJlZCBieSBl
eGlzdGluZyB0ZXN0cy4gCisKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JlZW5Qcm9wZXJ0aWVzLmg6
CisgICAgICAgIChXZWJDb3JlOjpTY3JlZW5Qcm9wZXJ0aWVzOjplbmNvZGUgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6U2NyZWVuUHJvcGVydGllczo6ZGVjb2RlKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMubW06CisgICAgICAgIChXZWJDb3JlOjpnZXRTY3Jl
ZW5Qcm9wZXJ0aWVzKToKKyAgICAgICAgKFdlYkNvcmU6OnNjcmVlbkRlcHRoKToKKwogMjAxOC0w
Mi0yMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgV29ya2Vy
Q2FjaGVTdG9yYWdlQ29ubmVjdGlvbjo6ZG9SZW1vdmUgY2FuIGFzc2VydCBpbiBjYXNlIHR3byBm
cmFtZXMgdHJ5IHRvIGRlbGV0ZSB0aGUgc2FtZSBjYWNoZSBhdCB0aGUgc2FtZSB0aW1lCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JlZW5Qcm9wZXJ0aWVzLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2NyZWVuUHJvcGVydGllcy5oCShyZXZpc2lvbiAy
Mjg5MjYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JlZW5Qcm9wZXJ0aWVzLmgJKHdv
cmtpbmcgY29weSkKQEAgLTMyLDYgKzMyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogc3RydWN0
IFNjcmVlblByb3BlcnRpZXMgewogICAgIEZsb2F0UmVjdCBzY3JlZW5BdmFpbGFibGVSZWN0Owog
ICAgIEZsb2F0UmVjdCBzY3JlZW5SZWN0OworICAgIGludCBzY3JlZW5EZXB0aCB7IDAgfTsKIAog
ICAgIHRlbXBsYXRlPGNsYXNzIEVuY29kZXI+IHZvaWQgZW5jb2RlKEVuY29kZXImKSBjb25zdDsK
ICAgICB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBzdGF0aWMgc3RkOjpvcHRpb25hbDxTY3JlZW5Q
cm9wZXJ0aWVzPiBkZWNvZGUoRGVjb2RlciYpOwpAQCAtNDAsNyArNDEsNyBAQCBzdHJ1Y3QgU2Ny
ZWVuUHJvcGVydGllcyB7CiB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPgogdm9pZCBTY3JlZW5Qcm9w
ZXJ0aWVzOjplbmNvZGUoRW5jb2RlciYgZW5jb2RlcikgY29uc3QKIHsKLSAgICBlbmNvZGVyIDw8
IHNjcmVlbkF2YWlsYWJsZVJlY3QgPDwgc2NyZWVuUmVjdDsKKyAgICBlbmNvZGVyIDw8IHNjcmVl
bkF2YWlsYWJsZVJlY3QgPDwgc2NyZWVuUmVjdCA8PCBzY3JlZW5EZXB0aDsKIH0KIAogdGVtcGxh
dGU8Y2xhc3MgRGVjb2Rlcj4KQEAgLTU2LDcgKzU3LDEzIEBAIHN0ZDo6b3B0aW9uYWw8U2NyZWVu
UHJvcGVydGllcz4gU2NyZWVuUHIKICAgICBpZiAoIXNjcmVlblJlY3QpCiAgICAgICAgIHJldHVy
biBzdGQ6Om51bGxvcHQ7CiAKLSAgICByZXR1cm4geyB7IFdURk1vdmUoKnNjcmVlbkF2YWlsYWJs
ZVJlY3QpLCBXVEZNb3ZlKCpzY3JlZW5SZWN0KSB9IH07CisgICAgc3RkOjpvcHRpb25hbDxpbnQ+
IHNjcmVlbkRlcHRoOworICAgIGRlY29kZXIgPj4gc2NyZWVuRGVwdGg7CisgICAgaWYgKCFzY3Jl
ZW5EZXB0aCkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKworICAgIHJldHVybiB7IHsg
V1RGTW92ZSgqc2NyZWVuQXZhaWxhYmxlUmVjdCksIFdURk1vdmUoKnNjcmVlblJlY3QpLCBXVEZN
b3ZlKCpzY3JlZW5EZXB0aCkgfSB9OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMu
bW0JKHJldmlzaW9uIDIyODkyNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0
Zm9ybVNjcmVlbk1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtOTEsMTEgKzkxLDYgQEAgc3RhdGlj
IE5TU2NyZWVuICpzY3JlZW4oV2lkZ2V0KiB3aWRnZXQpCiAgICAgcmV0dXJuIHNjcmVlbihkaXNw
bGF5SUQod2lkZ2V0KSk7CiB9CiAKLWludCBzY3JlZW5EZXB0aChXaWRnZXQqIHdpZGdldCkKLXsK
LSAgICByZXR1cm4gTlNCaXRzUGVyUGl4ZWxGcm9tRGVwdGgoc2NyZWVuKHdpZGdldCkuZGVwdGgp
OwotfQotCiBpbnQgc2NyZWVuRGVwdGhQZXJDb21wb25lbnQoV2lkZ2V0KiB3aWRnZXQpCiB7CiAg
ICAgcmV0dXJuIE5TQml0c1BlclNhbXBsZUZyb21EZXB0aChzY3JlZW4od2lkZ2V0KS5kZXB0aCk7
CkBAIC0xMjAsNyArMTE1LDggQEAgdm9pZCBnZXRTY3JlZW5Qcm9wZXJ0aWVzKEhhc2hNYXA8UGxh
dGZvcgogICAgICAgICBGbG9hdFJlY3Qgc2NyZWVuQXZhaWxhYmxlUmVjdCA9IFtzY3JlZW4gdmlz
aWJsZUZyYW1lXTsKICAgICAgICAgc2NyZWVuQXZhaWxhYmxlUmVjdC5zZXRZKE5TTWF4WShbc2Ny
ZWVuIGZyYW1lXSkgLSAoc2NyZWVuQXZhaWxhYmxlUmVjdC55KCkgKyBzY3JlZW5BdmFpbGFibGVS
ZWN0LmhlaWdodCgpKSk7IC8vIGZsaXAKICAgICAgICAgRmxvYXRSZWN0IHNjcmVlblJlY3QgPSBb
c2NyZWVuIGZyYW1lXTsKLSAgICAgICAgc2NyZWVuUHJvcGVydGllcy5zZXQoV2ViQ29yZTo6ZGlz
cGxheUlEKHNjcmVlbiksIFNjcmVlblByb3BlcnRpZXMgeyBzY3JlZW5BdmFpbGFibGVSZWN0LCBz
Y3JlZW5SZWN0fSk7CisgICAgICAgIGludCBzY3JlZW5EZXB0aCA9IE5TQml0c1BlclBpeGVsRnJv
bURlcHRoKHNjcmVlbi5kZXB0aCk7CisgICAgICAgIHNjcmVlblByb3BlcnRpZXMuc2V0KFdlYkNv
cmU6OmRpc3BsYXlJRChzY3JlZW4pLCBTY3JlZW5Qcm9wZXJ0aWVzIHsgc2NyZWVuQXZhaWxhYmxl
UmVjdCwgc2NyZWVuUmVjdCwgc2NyZWVuRGVwdGggfSk7CiAgICAgfQogfQogCkBAIC0xMzYsNiAr
MTMyLDIxIEBAIHZvaWQgc2V0U2NyZWVuUHJvcGVydGllcyhjb25zdCBIYXNoTWFwPFAKIH0KICNl
bmRpZgogCitpbnQgc2NyZWVuRGVwdGgoV2lkZ2V0KiB3aWRnZXQpCit7CisjaWYgX19NQUNfT1Nf
WF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDAKKyAgICBpZiAoIXNjcmVlblByb3BlcnRp
ZXMoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgYXV0byBkaXNwbGF5SURGb3JXaWRnZXQgPSBkaXNw
bGF5SUQod2lkZ2V0KTsKKyAgICAgICAgaWYgKGRpc3BsYXlJREZvcldpZGdldCAmJiBzY3JlZW5Q
cm9wZXJ0aWVzKCkuY29udGFpbnMoZGlzcGxheUlERm9yV2lkZ2V0KSkKKyAgICAgICAgICAgIHJl
dHVybiBzY3JlZW5Qcm9wZXJ0aWVzKCkuZ2V0KGRpc3BsYXlJREZvcldpZGdldCkuc2NyZWVuRGVw
dGg7CisgICAgICAgIC8vIFJldHVybiBwcm9wZXJ0eSBvZiB0aGUgZmlyc3Qgc2NyZWVuIGlmIHRo
ZSBzY3JlZW4gaXMgbm90IGZvdW5kIGluIHRoZSBtYXAuCisgICAgICAgIGF1dG8gaXRlciA9IHNj
cmVlblByb3BlcnRpZXMoKS5iZWdpbigpOworICAgICAgICByZXR1cm4gc2NyZWVuUHJvcGVydGll
cygpLmdldChpdGVyLT5rZXkpLnNjcmVlbkRlcHRoOworICAgIH0KKyNlbmRpZgorICAgIHJldHVy
biBOU0JpdHNQZXJQaXhlbEZyb21EZXB0aChzY3JlZW4od2lkZ2V0KS5kZXB0aCk7Cit9CisKIEZs
b2F0UmVjdCBzY3JlZW5SZWN0KFdpZGdldCogd2lkZ2V0KQogewogI2lmIF9fTUFDX09TX1hfVkVS
U0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>334464</attachid>
            <date>2018-02-22 12:17:21 -0800</date>
            <delta_ts>2018-02-22 12:51:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183048-20180222121720.patch</filename>
            <type>text/plain</type>
            <size>5674</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyODkyNikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI0IEBACisyMDE4LTAyLTIyICBQZXIgQXJu
ZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBUaGUgV2ViQ29udGVudCBw
cm9jZXNzIHNob3VsZCBub3QgdXNlIE5TU2NyZWVuIGluIHRoZSBzY3JlZW5EZXB0aCBpbXBsZW1l
bnRhdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4MzA0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE5TU2NyZWVuIG1ldGhvZCBjYWxscyBzaG91bGQgYmUgZG9uZSBpbiB0aGUgVUlQcm9jZXNzLCBz
aW5jZSB0aGVzZSBjYWxscyB3aWxsIGNvbW11bmljYXRlIHdpdGgKKyAgICAgICAgdGhlIFdpbmRv
d1NlcnZlci4gVGhlIHNjcmVlbiBkZXB0aCBwcm9wZXJ0eSBjYW4gYmUgcmV0cmlldmVkIGluIHRo
ZSBVSVByb2Nlc3MsIGFuZCBzZW50IHRvIHRoZQorICAgICAgICBXZWJDb250ZW50IHByb2Nlc3Ms
IHdoZXJlIGl0IGlzIGNhY2hlZC4gV2hlbmV2ZXIgc2NyZWVuIHByb3BlcnRpZXMgY2hhbmdlLCB0
aGUgVUlQcm9jZXNzIHdpbGwKKyAgICAgICAgc2VuZCB0aGUgbmV3IHNjcmVlbiBwcm9wZXJ0aWVz
IHRvIHRoZSBXZWJQcm9jZXNzLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgY292ZXJlZCBieSBl
eGlzdGluZyB0ZXN0cy4gCisKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JlZW5Qcm9wZXJ0aWVzLmg6
CisgICAgICAgIChXZWJDb3JlOjpTY3JlZW5Qcm9wZXJ0aWVzOjplbmNvZGUgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6U2NyZWVuUHJvcGVydGllczo6ZGVjb2RlKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMubW06CisgICAgICAgIChXZWJDb3JlOjpnZXRTY3Jl
ZW5Qcm9wZXJ0aWVzKToKKyAgICAgICAgKFdlYkNvcmU6OnNjcmVlbkRlcHRoKToKKwogMjAxOC0w
Mi0yMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgV29ya2Vy
Q2FjaGVTdG9yYWdlQ29ubmVjdGlvbjo6ZG9SZW1vdmUgY2FuIGFzc2VydCBpbiBjYXNlIHR3byBm
cmFtZXMgdHJ5IHRvIGRlbGV0ZSB0aGUgc2FtZSBjYWNoZSBhdCB0aGUgc2FtZSB0aW1lCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JlZW5Qcm9wZXJ0aWVzLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2NyZWVuUHJvcGVydGllcy5oCShyZXZpc2lvbiAy
Mjg5MjYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JlZW5Qcm9wZXJ0aWVzLmgJKHdv
cmtpbmcgY29weSkKQEAgLTMyLDYgKzMyLDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogc3RydWN0
IFNjcmVlblByb3BlcnRpZXMgewogICAgIEZsb2F0UmVjdCBzY3JlZW5BdmFpbGFibGVSZWN0Owog
ICAgIEZsb2F0UmVjdCBzY3JlZW5SZWN0OworICAgIGludCBzY3JlZW5EZXB0aCB7IDAgfTsKKyAg
ICBpbnQgc2NyZWVuRGVwdGhQZXJDb21wb25lbnQgeyAwIH07CiAKICAgICB0ZW1wbGF0ZTxjbGFz
cyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29uc3Q7CiAgICAgdGVtcGxhdGU8Y2xh
c3MgRGVjb2Rlcj4gc3RhdGljIHN0ZDo6b3B0aW9uYWw8U2NyZWVuUHJvcGVydGllcz4gZGVjb2Rl
KERlY29kZXImKTsKQEAgLTQwLDcgKzQyLDcgQEAgc3RydWN0IFNjcmVlblByb3BlcnRpZXMgewog
dGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4KIHZvaWQgU2NyZWVuUHJvcGVydGllczo6ZW5jb2RlKEVu
Y29kZXImIGVuY29kZXIpIGNvbnN0CiB7Ci0gICAgZW5jb2RlciA8PCBzY3JlZW5BdmFpbGFibGVS
ZWN0IDw8IHNjcmVlblJlY3Q7CisgICAgZW5jb2RlciA8PCBzY3JlZW5BdmFpbGFibGVSZWN0IDw8
IHNjcmVlblJlY3QgPDwgc2NyZWVuRGVwdGggPDwgc2NyZWVuRGVwdGhQZXJDb21wb25lbnQ7CiB9
CiAKIHRlbXBsYXRlPGNsYXNzIERlY29kZXI+CkBAIC01Niw3ICs1OCwxOCBAQCBzdGQ6Om9wdGlv
bmFsPFNjcmVlblByb3BlcnRpZXM+IFNjcmVlblByCiAgICAgaWYgKCFzY3JlZW5SZWN0KQogICAg
ICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogCi0gICAgcmV0dXJuIHsgeyBXVEZNb3ZlKCpzY3Jl
ZW5BdmFpbGFibGVSZWN0KSwgV1RGTW92ZSgqc2NyZWVuUmVjdCkgfSB9OworICAgIHN0ZDo6b3B0
aW9uYWw8aW50PiBzY3JlZW5EZXB0aDsKKyAgICBkZWNvZGVyID4+IHNjcmVlbkRlcHRoOworICAg
IGlmICghc2NyZWVuRGVwdGgpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisKKyAgICBz
dGQ6Om9wdGlvbmFsPGludD4gc2NyZWVuRGVwdGhQZXJDb21wb25lbnQ7CisgICAgZGVjb2RlciA+
PiBzY3JlZW5EZXB0aFBlckNvbXBvbmVudDsKKyAgICBpZiAoIXNjcmVlbkRlcHRoUGVyQ29tcG9u
ZW50KQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgIAorICAgIHJldHVybiB7IHsg
V1RGTW92ZSgqc2NyZWVuQXZhaWxhYmxlUmVjdCksIFdURk1vdmUoKnNjcmVlblJlY3QpLCBXVEZN
b3ZlKCpzY3JlZW5EZXB0aCksIFdURk1vdmUoKnNjcmVlbkRlcHRoUGVyQ29tcG9uZW50KSB9IH07
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQkocmV2aXNpb24gMjI4OTI2KQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tCSh3b3Jr
aW5nIGNvcHkpCkBAIC05MSwxNiArOTEsNiBAQCBzdGF0aWMgTlNTY3JlZW4gKnNjcmVlbihXaWRn
ZXQqIHdpZGdldCkKICAgICByZXR1cm4gc2NyZWVuKGRpc3BsYXlJRCh3aWRnZXQpKTsKIH0KIAot
aW50IHNjcmVlbkRlcHRoKFdpZGdldCogd2lkZ2V0KQotewotICAgIHJldHVybiBOU0JpdHNQZXJQ
aXhlbEZyb21EZXB0aChzY3JlZW4od2lkZ2V0KS5kZXB0aCk7Ci19Ci0KLWludCBzY3JlZW5EZXB0
aFBlckNvbXBvbmVudChXaWRnZXQqIHdpZGdldCkKLXsKLSAgICByZXR1cm4gTlNCaXRzUGVyU2Ft
cGxlRnJvbURlcHRoKHNjcmVlbih3aWRnZXQpLmRlcHRoKTsKLX0KLQogYm9vbCBzY3JlZW5Jc01v
bm9jaHJvbWUoV2lkZ2V0KikKIHsKICAgICAvLyBUaGlzIGlzIGEgc3lzdGVtLXdpZGUgYWNjZXNz
aWJpbGl0eSBzZXR0aW5nLCBzYW1lIG9uIGFsbCBzY3JlZW5zLgpAQCAtMTIwLDcgKzExMCw5IEBA
IHZvaWQgZ2V0U2NyZWVuUHJvcGVydGllcyhIYXNoTWFwPFBsYXRmb3IKICAgICAgICAgRmxvYXRS
ZWN0IHNjcmVlbkF2YWlsYWJsZVJlY3QgPSBbc2NyZWVuIHZpc2libGVGcmFtZV07CiAgICAgICAg
IHNjcmVlbkF2YWlsYWJsZVJlY3Quc2V0WShOU01heFkoW3NjcmVlbiBmcmFtZV0pIC0gKHNjcmVl
bkF2YWlsYWJsZVJlY3QueSgpICsgc2NyZWVuQXZhaWxhYmxlUmVjdC5oZWlnaHQoKSkpOyAvLyBm
bGlwCiAgICAgICAgIEZsb2F0UmVjdCBzY3JlZW5SZWN0ID0gW3NjcmVlbiBmcmFtZV07Ci0gICAg
ICAgIHNjcmVlblByb3BlcnRpZXMuc2V0KFdlYkNvcmU6OmRpc3BsYXlJRChzY3JlZW4pLCBTY3Jl
ZW5Qcm9wZXJ0aWVzIHsgc2NyZWVuQXZhaWxhYmxlUmVjdCwgc2NyZWVuUmVjdH0pOworICAgICAg
ICBpbnQgc2NyZWVuRGVwdGggPSBOU0JpdHNQZXJQaXhlbEZyb21EZXB0aChzY3JlZW4uZGVwdGgp
OworICAgICAgICBpbnQgc2NyZWVuRGVwdGhQZXJDb21wb25lbnQgPSBOU0JpdHNQZXJTYW1wbGVG
cm9tRGVwdGgoc2NyZWVuLmRlcHRoKTsKKyAgICAgICAgc2NyZWVuUHJvcGVydGllcy5zZXQoV2Vi
Q29yZTo6ZGlzcGxheUlEKHNjcmVlbiksIFNjcmVlblByb3BlcnRpZXMgeyBzY3JlZW5BdmFpbGFi
bGVSZWN0LCBzY3JlZW5SZWN0LCBzY3JlZW5EZXB0aCwgc2NyZWVuRGVwdGhQZXJDb21wb25lbnQg
fSk7CiAgICAgfQogfQogCkBAIC0xMzYsNiArMTI4LDM3IEBAIHZvaWQgc2V0U2NyZWVuUHJvcGVy
dGllcyhjb25zdCBIYXNoTWFwPFAKIH0KICNlbmRpZgogCitpbnQgc2NyZWVuRGVwdGgoV2lkZ2V0
KiB3aWRnZXQpCit7CisjaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0
MDAKKyAgICBpZiAoIXNjcmVlblByb3BlcnRpZXMoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgYXV0
byBkaXNwbGF5SURGb3JXaWRnZXQgPSBkaXNwbGF5SUQod2lkZ2V0KTsKKyAgICAgICAgaWYgKGRp
c3BsYXlJREZvcldpZGdldCAmJiBzY3JlZW5Qcm9wZXJ0aWVzKCkuY29udGFpbnMoZGlzcGxheUlE
Rm9yV2lkZ2V0KSkKKyAgICAgICAgICAgIHJldHVybiBzY3JlZW5Qcm9wZXJ0aWVzKCkuZ2V0KGRp
c3BsYXlJREZvcldpZGdldCkuc2NyZWVuRGVwdGg7CisgICAgICAgIC8vIFJldHVybiBwcm9wZXJ0
eSBvZiB0aGUgZmlyc3Qgc2NyZWVuIGlmIHRoZSBzY3JlZW4gaXMgbm90IGZvdW5kIGluIHRoZSBt
YXAuCisgICAgICAgIGF1dG8gaXRlciA9IHNjcmVlblByb3BlcnRpZXMoKS5iZWdpbigpOworICAg
ICAgICByZXR1cm4gc2NyZWVuUHJvcGVydGllcygpLmdldChpdGVyLT5rZXkpLnNjcmVlbkRlcHRo
OworICAgIH0KKyNlbmRpZgorICAgIHJldHVybiBOU0JpdHNQZXJQaXhlbEZyb21EZXB0aChzY3Jl
ZW4od2lkZ2V0KS5kZXB0aCk7Cit9CisKK2ludCBzY3JlZW5EZXB0aFBlckNvbXBvbmVudChXaWRn
ZXQqIHdpZGdldCkKK3sKKyNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEw
MTQwMAorICAgIGlmICghc2NyZWVuUHJvcGVydGllcygpLmlzRW1wdHkoKSkgeworICAgICAgICBh
dXRvIGRpc3BsYXlJREZvcldpZGdldCA9IGRpc3BsYXlJRCh3aWRnZXQpOworICAgICAgICBpZiAo
ZGlzcGxheUlERm9yV2lkZ2V0ICYmIHNjcmVlblByb3BlcnRpZXMoKS5jb250YWlucyhkaXNwbGF5
SURGb3JXaWRnZXQpKQorICAgICAgICAgICAgcmV0dXJuIHNjcmVlblByb3BlcnRpZXMoKS5nZXQo
ZGlzcGxheUlERm9yV2lkZ2V0KS5zY3JlZW5EZXB0aFBlckNvbXBvbmVudDsKKyAgICAgICAgLy8g
UmV0dXJuIHByb3BlcnR5IG9mIHRoZSBmaXJzdCBzY3JlZW4gaWYgdGhlIHNjcmVlbiBpcyBub3Qg
Zm91bmQgaW4gdGhlIG1hcC4KKyAgICAgICAgYXV0byBpdGVyID0gc2NyZWVuUHJvcGVydGllcygp
LmJlZ2luKCk7CisgICAgICAgIHJldHVybiBzY3JlZW5Qcm9wZXJ0aWVzKCkuZ2V0KGl0ZXItPmtl
eSkuc2NyZWVuRGVwdGhQZXJDb21wb25lbnQ7CisgICAgfQorI2VuZGlmCisgICAgcmV0dXJuIE5T
Qml0c1BlclNhbXBsZUZyb21EZXB0aChzY3JlZW4od2lkZ2V0KS5kZXB0aCk7Cit9CisgICAgCisK
IEZsb2F0UmVjdCBzY3JlZW5SZWN0KFdpZGdldCogd2lkZ2V0KQogewogI2lmIF9fTUFDX09TX1hf
VkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>334469</attachid>
            <date>2018-02-22 12:51:51 -0800</date>
            <delta_ts>2018-02-22 12:57:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183048-20180222125150.patch</filename>
            <type>text/plain</type>
            <size>6888</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyODkzMCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDE4LTAyLTIyICBQZXIgQXJu
ZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBUaGUgV2ViQ29udGVudCBw
cm9jZXNzIHNob3VsZCBub3QgdXNlIE5TU2NyZWVuIGluIHRoZSBzY3JlZW5EZXB0aCBpbXBsZW1l
bnRhdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4MzA0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE5TU2NyZWVuIG1ldGhvZCBjYWxscyBzaG91bGQgYmUgZG9uZSBpbiB0aGUgVUlQcm9jZXNzLCBz
aW5jZSB0aGVzZSBjYWxscyB3aWxsIGNvbW11bmljYXRlIHdpdGgKKyAgICAgICAgdGhlIFdpbmRv
d1NlcnZlci4gVGhlIHNjcmVlbiBkZXB0aCBwcm9wZXJ0eSBjYW4gYmUgcmV0cmlldmVkIGluIHRo
ZSBVSVByb2Nlc3MsIGFuZCBzZW50IHRvIHRoZQorICAgICAgICBXZWJDb250ZW50IHByb2Nlc3Ms
IHdoZXJlIGl0IGlzIGNhY2hlZC4gV2hlbmV2ZXIgc2NyZWVuIHByb3BlcnRpZXMgY2hhbmdlLCB0
aGUgVUlQcm9jZXNzIHdpbGwKKyAgICAgICAgc2VuZCB0aGUgbmV3IHNjcmVlbiBwcm9wZXJ0aWVz
IHRvIHRoZSBXZWJQcm9jZXNzLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgY292ZXJlZCBieSBl
eGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL1NjcmVlblByb3BlcnRpZXMuaDoK
KyAgICAgICAgKFdlYkNvcmU6OlNjcmVlblByb3BlcnRpZXM6OmVuY29kZSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpTY3JlZW5Qcm9wZXJ0aWVzOjpkZWNvZGUpOgorICAgICAgICAqIHBsYXRm
b3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OmdldFNjcmVl
blByb3BlcnRpZXMpOgorICAgICAgICAoV2ViQ29yZTo6c2NyZWVuRGVwdGgpOgorICAgICAgICAo
V2ViQ29yZTo6c2NyZWVuRGVwdGhQZXJDb21wb25lbnQpOgorICAgICAgICAoV2ViQ29yZTo6c2Ny
ZWVuUmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpzY3JlZW5BdmFpbGFibGVSZWN0KToKKwogMjAx
OC0wMi0yMiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFNlcnZp
Y2VXb3JrZXJDb250YWluZXI6OnNjaGVkdWxlSm9iKCkgZmFpbHMgdG8gaXNvbGF0ZSBjb3B5IHRo
ZSBqb2JEYXRhIGJlZm9yZSBwYXNzaW5nIGl0IHRvIHRoZSBtYWluIHRocmVhZApJbmRleDogU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2NyZWVuUHJvcGVydGllcy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1NjcmVlblByb3BlcnRpZXMuaAkocmV2aXNpb24gMjI4OTI2
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2NyZWVuUHJvcGVydGllcy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0zMiw2ICszMiw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHN0cnVjdCBTY3Jl
ZW5Qcm9wZXJ0aWVzIHsKICAgICBGbG9hdFJlY3Qgc2NyZWVuQXZhaWxhYmxlUmVjdDsKICAgICBG
bG9hdFJlY3Qgc2NyZWVuUmVjdDsKKyAgICBpbnQgc2NyZWVuRGVwdGggeyAwIH07CisgICAgaW50
IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50IHsgMCB9OwogCiAgICAgdGVtcGxhdGU8Y2xhc3MgRW5j
b2Rlcj4gdm9pZCBlbmNvZGUoRW5jb2RlciYpIGNvbnN0OwogICAgIHRlbXBsYXRlPGNsYXNzIERl
Y29kZXI+IHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFNjcmVlblByb3BlcnRpZXM+IGRlY29kZShEZWNv
ZGVyJik7CkBAIC00MCw3ICs0Miw3IEBAIHN0cnVjdCBTY3JlZW5Qcm9wZXJ0aWVzIHsKIHRlbXBs
YXRlPGNsYXNzIEVuY29kZXI+CiB2b2lkIFNjcmVlblByb3BlcnRpZXM6OmVuY29kZShFbmNvZGVy
JiBlbmNvZGVyKSBjb25zdAogewotICAgIGVuY29kZXIgPDwgc2NyZWVuQXZhaWxhYmxlUmVjdCA8
PCBzY3JlZW5SZWN0OworICAgIGVuY29kZXIgPDwgc2NyZWVuQXZhaWxhYmxlUmVjdCA8PCBzY3Jl
ZW5SZWN0IDw8IHNjcmVlbkRlcHRoIDw8IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50OwogfQogCiB0
ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPgpAQCAtNTYsNyArNTgsMTggQEAgc3RkOjpvcHRpb25hbDxT
Y3JlZW5Qcm9wZXJ0aWVzPiBTY3JlZW5QcgogICAgIGlmICghc2NyZWVuUmVjdCkKICAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKIAotICAgIHJldHVybiB7IHsgV1RGTW92ZSgqc2NyZWVuQXZh
aWxhYmxlUmVjdCksIFdURk1vdmUoKnNjcmVlblJlY3QpIH0gfTsKKyAgICBzdGQ6Om9wdGlvbmFs
PGludD4gc2NyZWVuRGVwdGg7CisgICAgZGVjb2RlciA+PiBzY3JlZW5EZXB0aDsKKyAgICBpZiAo
IXNjcmVlbkRlcHRoKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgc3RkOjpv
cHRpb25hbDxpbnQ+IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50OworICAgIGRlY29kZXIgPj4gc2Ny
ZWVuRGVwdGhQZXJDb21wb25lbnQ7CisgICAgaWYgKCFzY3JlZW5EZXB0aFBlckNvbXBvbmVudCkK
KyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAKKyAgICByZXR1cm4geyB7IFdURk1v
dmUoKnNjcmVlbkF2YWlsYWJsZVJlY3QpLCBXVEZNb3ZlKCpzY3JlZW5SZWN0KSwgV1RGTW92ZSgq
c2NyZWVuRGVwdGgpLCBXVEZNb3ZlKCpzY3JlZW5EZXB0aFBlckNvbXBvbmVudCkgfSB9OwogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMubW0JKHJldmlzaW9uIDIyODkyNikKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQkod29ya2luZyBj
b3B5KQpAQCAtOTEsMTYgKzkxLDYgQEAgc3RhdGljIE5TU2NyZWVuICpzY3JlZW4oV2lkZ2V0KiB3
aWRnZXQpCiAgICAgcmV0dXJuIHNjcmVlbihkaXNwbGF5SUQod2lkZ2V0KSk7CiB9CiAKLWludCBz
Y3JlZW5EZXB0aChXaWRnZXQqIHdpZGdldCkKLXsKLSAgICByZXR1cm4gTlNCaXRzUGVyUGl4ZWxG
cm9tRGVwdGgoc2NyZWVuKHdpZGdldCkuZGVwdGgpOwotfQotCi1pbnQgc2NyZWVuRGVwdGhQZXJD
b21wb25lbnQoV2lkZ2V0KiB3aWRnZXQpCi17Ci0gICAgcmV0dXJuIE5TQml0c1BlclNhbXBsZUZy
b21EZXB0aChzY3JlZW4od2lkZ2V0KS5kZXB0aCk7Ci19Ci0KIGJvb2wgc2NyZWVuSXNNb25vY2hy
b21lKFdpZGdldCopCiB7CiAgICAgLy8gVGhpcyBpcyBhIHN5c3RlbS13aWRlIGFjY2Vzc2liaWxp
dHkgc2V0dGluZywgc2FtZSBvbiBhbGwgc2NyZWVucy4KQEAgLTEyMCw3ICsxMTAsOSBAQCB2b2lk
IGdldFNjcmVlblByb3BlcnRpZXMoSGFzaE1hcDxQbGF0Zm9yCiAgICAgICAgIEZsb2F0UmVjdCBz
Y3JlZW5BdmFpbGFibGVSZWN0ID0gW3NjcmVlbiB2aXNpYmxlRnJhbWVdOwogICAgICAgICBzY3Jl
ZW5BdmFpbGFibGVSZWN0LnNldFkoTlNNYXhZKFtzY3JlZW4gZnJhbWVdKSAtIChzY3JlZW5BdmFp
bGFibGVSZWN0LnkoKSArIHNjcmVlbkF2YWlsYWJsZVJlY3QuaGVpZ2h0KCkpKTsgLy8gZmxpcAog
ICAgICAgICBGbG9hdFJlY3Qgc2NyZWVuUmVjdCA9IFtzY3JlZW4gZnJhbWVdOwotICAgICAgICBz
Y3JlZW5Qcm9wZXJ0aWVzLnNldChXZWJDb3JlOjpkaXNwbGF5SUQoc2NyZWVuKSwgU2NyZWVuUHJv
cGVydGllcyB7IHNjcmVlbkF2YWlsYWJsZVJlY3QsIHNjcmVlblJlY3R9KTsKKyAgICAgICAgaW50
IHNjcmVlbkRlcHRoID0gTlNCaXRzUGVyUGl4ZWxGcm9tRGVwdGgoc2NyZWVuLmRlcHRoKTsKKyAg
ICAgICAgaW50IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50ID0gTlNCaXRzUGVyU2FtcGxlRnJvbURl
cHRoKHNjcmVlbi5kZXB0aCk7CisgICAgICAgIHNjcmVlblByb3BlcnRpZXMuc2V0KFdlYkNvcmU6
OmRpc3BsYXlJRChzY3JlZW4pLCBTY3JlZW5Qcm9wZXJ0aWVzIHsgc2NyZWVuQXZhaWxhYmxlUmVj
dCwgc2NyZWVuUmVjdCwgc2NyZWVuRGVwdGgsIHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50IH0pOwog
ICAgIH0KIH0KIApAQCAtMTM0LDE5ICsxMjYsNDIgQEAgdm9pZCBzZXRTY3JlZW5Qcm9wZXJ0aWVz
KGNvbnN0IEhhc2hNYXA8UAogewogICAgIHNjcmVlblByb3BlcnRpZXMoKSA9IHByb3BlcnRpZXM7
CiB9CisgICAgCitzdGF0aWMgU2NyZWVuUHJvcGVydGllcyBnZXRTY3JlZW5Qcm9wZXJ0aWVzKFdp
ZGdldCogd2lkZ2V0KQoreworICAgIGF1dG8gZGlzcGxheUlERm9yV2lkZ2V0ID0gZGlzcGxheUlE
KHdpZGdldCk7CisgICAgaWYgKGRpc3BsYXlJREZvcldpZGdldCAmJiBzY3JlZW5Qcm9wZXJ0aWVz
KCkuY29udGFpbnMoZGlzcGxheUlERm9yV2lkZ2V0KSkKKyAgICAgICAgcmV0dXJuIHNjcmVlblBy
b3BlcnRpZXMoKS5nZXQoZGlzcGxheUlERm9yV2lkZ2V0KTsKKyAgICAvLyBSZXR1cm4gcHJvcGVy
dHkgb2YgdGhlIGZpcnN0IHNjcmVlbiBpZiB0aGUgc2NyZWVuIGlzIG5vdCBmb3VuZCBpbiB0aGUg
bWFwLgorICAgIGF1dG8gaXRlciA9IHNjcmVlblByb3BlcnRpZXMoKS5iZWdpbigpOworICAgIHJl
dHVybiBzY3JlZW5Qcm9wZXJ0aWVzKCkuZ2V0KGl0ZXItPmtleSk7Cit9CisjZW5kaWYKKworaW50
IHNjcmVlbkRlcHRoKFdpZGdldCogd2lkZ2V0KQoreworI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9N
SU5fUkVRVUlSRUQgPj0gMTAxNDAwCisgICAgaWYgKCFzY3JlZW5Qcm9wZXJ0aWVzKCkuaXNFbXB0
eSgpKQorICAgICAgICByZXR1cm4gZ2V0U2NyZWVuUHJvcGVydGllcyh3aWRnZXQpLnNjcmVlbkRl
cHRoOworI2VuZGlmCisgICAgcmV0dXJuIE5TQml0c1BlclBpeGVsRnJvbURlcHRoKHNjcmVlbih3
aWRnZXQpLmRlcHRoKTsKK30KKworaW50IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50KFdpZGdldCog
d2lkZ2V0KQoreworI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAw
CisgICAgaWYgKCFzY3JlZW5Qcm9wZXJ0aWVzKCkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4g
Z2V0U2NyZWVuUHJvcGVydGllcyh3aWRnZXQpLnNjcmVlbkRlcHRoUGVyQ29tcG9uZW50OwogI2Vu
ZGlmCisgICAgcmV0dXJuIE5TQml0c1BlclNhbXBsZUZyb21EZXB0aChzY3JlZW4od2lkZ2V0KS5k
ZXB0aCk7Cit9CisgICAgCiAKIEZsb2F0UmVjdCBzY3JlZW5SZWN0KFdpZGdldCogd2lkZ2V0KQog
ewogI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCi0gICAgaWYg
KCFzY3JlZW5Qcm9wZXJ0aWVzKCkuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGF1dG8gZGlzcGxheUlE
Rm9yV2lkZ2V0ID0gZGlzcGxheUlEKHdpZGdldCk7Ci0gICAgICAgIGlmIChkaXNwbGF5SURGb3JX
aWRnZXQgJiYgc2NyZWVuUHJvcGVydGllcygpLmNvbnRhaW5zKGRpc3BsYXlJREZvcldpZGdldCkp
Ci0gICAgICAgICAgICByZXR1cm4gc2NyZWVuUHJvcGVydGllcygpLmdldChkaXNwbGF5SURGb3JX
aWRnZXQpLnNjcmVlblJlY3Q7Ci0gICAgICAgIC8vIFJldHVybiBwcm9wZXJ0eSBvZiB0aGUgZmly
c3Qgc2NyZWVuIGlmIHRoZSBzY3JlZW4gaXMgbm90IGZvdW5kIGluIHRoZSBtYXAuCi0gICAgICAg
IGF1dG8gaXRlciA9IHNjcmVlblByb3BlcnRpZXMoKS5iZWdpbigpOwotICAgICAgICByZXR1cm4g
c2NyZWVuUHJvcGVydGllcygpLmdldChpdGVyLT5rZXkpLnNjcmVlblJlY3Q7Ci0gICAgfQorICAg
IGlmICghc2NyZWVuUHJvcGVydGllcygpLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGdldFNj
cmVlblByb3BlcnRpZXMod2lkZ2V0KS5zY3JlZW5SZWN0OwogI2VuZGlmCiAgICAgcmV0dXJuIHRv
VXNlclNwYWNlKFtzY3JlZW4od2lkZ2V0KSBmcmFtZV0sIHdpbmRvdyh3aWRnZXQpKTsKIH0KQEAg
LTE1NSwxMiArMTcwLDcgQEAgRmxvYXRSZWN0IHNjcmVlbkF2YWlsYWJsZVJlY3QoV2lkZ2V0KiB3
aQogewogI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCiAgICAg
aWYgKCFzY3JlZW5Qcm9wZXJ0aWVzKCkuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGF1dG8gZGlzcGxh
eUlERm9yV2lkZ2V0ID0gZGlzcGxheUlEKHdpZGdldCk7Ci0gICAgICAgIGlmIChkaXNwbGF5SURG
b3JXaWRnZXQgJiYgc2NyZWVuUHJvcGVydGllcygpLmNvbnRhaW5zKGRpc3BsYXlJREZvcldpZGdl
dCkpCi0gICAgICAgICAgICByZXR1cm4gc2NyZWVuUHJvcGVydGllcygpLmdldChkaXNwbGF5SURG
b3JXaWRnZXQpLnNjcmVlbkF2YWlsYWJsZVJlY3Q7Ci0gICAgICAgIC8vIFJldHVybiBwcm9wZXJ0
eSBvZiB0aGUgZmlyc3Qgc2NyZWVuIGlmIHRoZSBzY3JlZW4gaXMgbm90IGZvdW5kIGluIHRoZSBt
YXAuCi0gICAgICAgIGF1dG8gaXRlciA9IHNjcmVlblByb3BlcnRpZXMoKS5iZWdpbigpOwotICAg
ICAgICByZXR1cm4gc2NyZWVuUHJvcGVydGllcygpLmdldChpdGVyLT5rZXkpLnNjcmVlbkF2YWls
YWJsZVJlY3Q7CisgICAgICAgIHJldHVybiBnZXRTY3JlZW5Qcm9wZXJ0aWVzKHdpZGdldCkuc2Ny
ZWVuQXZhaWxhYmxlUmVjdDsKICAgICB9CiAjZW5kaWYKICAgICByZXR1cm4gdG9Vc2VyU3BhY2Uo
W3NjcmVlbih3aWRnZXQpIHZpc2libGVGcmFtZV0sIHdpbmRvdyh3aWRnZXQpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>334470</attachid>
            <date>2018-02-22 12:58:00 -0800</date>
            <delta_ts>2018-02-22 16:17:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183048-20180222125759.patch</filename>
            <type>text/plain</type>
            <size>7019</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyODkzMCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDE4LTAyLTIyICBQZXIgQXJu
ZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBUaGUgV2ViQ29udGVudCBw
cm9jZXNzIHNob3VsZCBub3QgdXNlIE5TU2NyZWVuIGluIHRoZSBzY3JlZW5EZXB0aCBpbXBsZW1l
bnRhdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4MzA0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE5TU2NyZWVuIG1ldGhvZCBjYWxscyBzaG91bGQgYmUgZG9uZSBpbiB0aGUgVUlQcm9jZXNzLCBz
aW5jZSB0aGVzZSBjYWxscyB3aWxsIGNvbW11bmljYXRlIHdpdGgKKyAgICAgICAgdGhlIFdpbmRv
d1NlcnZlci4gVGhlIHNjcmVlbiBkZXB0aCBwcm9wZXJ0eSBjYW4gYmUgcmV0cmlldmVkIGluIHRo
ZSBVSVByb2Nlc3MsIGFuZCBzZW50IHRvIHRoZQorICAgICAgICBXZWJDb250ZW50IHByb2Nlc3Ms
IHdoZXJlIGl0IGlzIGNhY2hlZC4gV2hlbmV2ZXIgc2NyZWVuIHByb3BlcnRpZXMgY2hhbmdlLCB0
aGUgVUlQcm9jZXNzIHdpbGwKKyAgICAgICAgc2VuZCB0aGUgbmV3IHNjcmVlbiBwcm9wZXJ0aWVz
IHRvIHRoZSBXZWJQcm9jZXNzLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgY292ZXJlZCBieSBl
eGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL1NjcmVlblByb3BlcnRpZXMuaDoK
KyAgICAgICAgKFdlYkNvcmU6OlNjcmVlblByb3BlcnRpZXM6OmVuY29kZSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpTY3JlZW5Qcm9wZXJ0aWVzOjpkZWNvZGUpOgorICAgICAgICAqIHBsYXRm
b3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OmdldFNjcmVl
blByb3BlcnRpZXMpOgorICAgICAgICAoV2ViQ29yZTo6c2NyZWVuRGVwdGgpOgorICAgICAgICAo
V2ViQ29yZTo6c2NyZWVuRGVwdGhQZXJDb21wb25lbnQpOgorICAgICAgICAoV2ViQ29yZTo6c2Ny
ZWVuUmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpzY3JlZW5BdmFpbGFibGVSZWN0KToKKwogMjAx
OC0wMi0yMiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFNlcnZp
Y2VXb3JrZXJDb250YWluZXI6OnNjaGVkdWxlSm9iKCkgZmFpbHMgdG8gaXNvbGF0ZSBjb3B5IHRo
ZSBqb2JEYXRhIGJlZm9yZSBwYXNzaW5nIGl0IHRvIHRoZSBtYWluIHRocmVhZApJbmRleDogU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2NyZWVuUHJvcGVydGllcy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1NjcmVlblByb3BlcnRpZXMuaAkocmV2aXNpb24gMjI4OTI2
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2NyZWVuUHJvcGVydGllcy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0zMiw2ICszMiw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHN0cnVjdCBTY3Jl
ZW5Qcm9wZXJ0aWVzIHsKICAgICBGbG9hdFJlY3Qgc2NyZWVuQXZhaWxhYmxlUmVjdDsKICAgICBG
bG9hdFJlY3Qgc2NyZWVuUmVjdDsKKyAgICBpbnQgc2NyZWVuRGVwdGggeyAwIH07CisgICAgaW50
IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50IHsgMCB9OwogCiAgICAgdGVtcGxhdGU8Y2xhc3MgRW5j
b2Rlcj4gdm9pZCBlbmNvZGUoRW5jb2RlciYpIGNvbnN0OwogICAgIHRlbXBsYXRlPGNsYXNzIERl
Y29kZXI+IHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFNjcmVlblByb3BlcnRpZXM+IGRlY29kZShEZWNv
ZGVyJik7CkBAIC00MCw3ICs0Miw3IEBAIHN0cnVjdCBTY3JlZW5Qcm9wZXJ0aWVzIHsKIHRlbXBs
YXRlPGNsYXNzIEVuY29kZXI+CiB2b2lkIFNjcmVlblByb3BlcnRpZXM6OmVuY29kZShFbmNvZGVy
JiBlbmNvZGVyKSBjb25zdAogewotICAgIGVuY29kZXIgPDwgc2NyZWVuQXZhaWxhYmxlUmVjdCA8
PCBzY3JlZW5SZWN0OworICAgIGVuY29kZXIgPDwgc2NyZWVuQXZhaWxhYmxlUmVjdCA8PCBzY3Jl
ZW5SZWN0IDw8IHNjcmVlbkRlcHRoIDw8IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50OwogfQogCiB0
ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPgpAQCAtNTYsNyArNTgsMTggQEAgc3RkOjpvcHRpb25hbDxT
Y3JlZW5Qcm9wZXJ0aWVzPiBTY3JlZW5QcgogICAgIGlmICghc2NyZWVuUmVjdCkKICAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKIAotICAgIHJldHVybiB7IHsgV1RGTW92ZSgqc2NyZWVuQXZh
aWxhYmxlUmVjdCksIFdURk1vdmUoKnNjcmVlblJlY3QpIH0gfTsKKyAgICBzdGQ6Om9wdGlvbmFs
PGludD4gc2NyZWVuRGVwdGg7CisgICAgZGVjb2RlciA+PiBzY3JlZW5EZXB0aDsKKyAgICBpZiAo
IXNjcmVlbkRlcHRoKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgc3RkOjpv
cHRpb25hbDxpbnQ+IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50OworICAgIGRlY29kZXIgPj4gc2Ny
ZWVuRGVwdGhQZXJDb21wb25lbnQ7CisgICAgaWYgKCFzY3JlZW5EZXB0aFBlckNvbXBvbmVudCkK
KyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAKKyAgICByZXR1cm4geyB7IFdURk1v
dmUoKnNjcmVlbkF2YWlsYWJsZVJlY3QpLCBXVEZNb3ZlKCpzY3JlZW5SZWN0KSwgV1RGTW92ZSgq
c2NyZWVuRGVwdGgpLCBXVEZNb3ZlKCpzY3JlZW5EZXB0aFBlckNvbXBvbmVudCkgfSB9OwogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMubW0JKHJldmlzaW9uIDIyODkyNikKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQkod29ya2luZyBj
b3B5KQpAQCAtOTEsMTYgKzkxLDYgQEAgc3RhdGljIE5TU2NyZWVuICpzY3JlZW4oV2lkZ2V0KiB3
aWRnZXQpCiAgICAgcmV0dXJuIHNjcmVlbihkaXNwbGF5SUQod2lkZ2V0KSk7CiB9CiAKLWludCBz
Y3JlZW5EZXB0aChXaWRnZXQqIHdpZGdldCkKLXsKLSAgICByZXR1cm4gTlNCaXRzUGVyUGl4ZWxG
cm9tRGVwdGgoc2NyZWVuKHdpZGdldCkuZGVwdGgpOwotfQotCi1pbnQgc2NyZWVuRGVwdGhQZXJD
b21wb25lbnQoV2lkZ2V0KiB3aWRnZXQpCi17Ci0gICAgcmV0dXJuIE5TQml0c1BlclNhbXBsZUZy
b21EZXB0aChzY3JlZW4od2lkZ2V0KS5kZXB0aCk7Ci19Ci0KIGJvb2wgc2NyZWVuSXNNb25vY2hy
b21lKFdpZGdldCopCiB7CiAgICAgLy8gVGhpcyBpcyBhIHN5c3RlbS13aWRlIGFjY2Vzc2liaWxp
dHkgc2V0dGluZywgc2FtZSBvbiBhbGwgc2NyZWVucy4KQEAgLTEyMCw3ICsxMTAsOSBAQCB2b2lk
IGdldFNjcmVlblByb3BlcnRpZXMoSGFzaE1hcDxQbGF0Zm9yCiAgICAgICAgIEZsb2F0UmVjdCBz
Y3JlZW5BdmFpbGFibGVSZWN0ID0gW3NjcmVlbiB2aXNpYmxlRnJhbWVdOwogICAgICAgICBzY3Jl
ZW5BdmFpbGFibGVSZWN0LnNldFkoTlNNYXhZKFtzY3JlZW4gZnJhbWVdKSAtIChzY3JlZW5BdmFp
bGFibGVSZWN0LnkoKSArIHNjcmVlbkF2YWlsYWJsZVJlY3QuaGVpZ2h0KCkpKTsgLy8gZmxpcAog
ICAgICAgICBGbG9hdFJlY3Qgc2NyZWVuUmVjdCA9IFtzY3JlZW4gZnJhbWVdOwotICAgICAgICBz
Y3JlZW5Qcm9wZXJ0aWVzLnNldChXZWJDb3JlOjpkaXNwbGF5SUQoc2NyZWVuKSwgU2NyZWVuUHJv
cGVydGllcyB7IHNjcmVlbkF2YWlsYWJsZVJlY3QsIHNjcmVlblJlY3R9KTsKKyAgICAgICAgaW50
IHNjcmVlbkRlcHRoID0gTlNCaXRzUGVyUGl4ZWxGcm9tRGVwdGgoc2NyZWVuLmRlcHRoKTsKKyAg
ICAgICAgaW50IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50ID0gTlNCaXRzUGVyU2FtcGxlRnJvbURl
cHRoKHNjcmVlbi5kZXB0aCk7CisgICAgICAgIHNjcmVlblByb3BlcnRpZXMuc2V0KFdlYkNvcmU6
OmRpc3BsYXlJRChzY3JlZW4pLCBTY3JlZW5Qcm9wZXJ0aWVzIHsgc2NyZWVuQXZhaWxhYmxlUmVj
dCwgc2NyZWVuUmVjdCwgc2NyZWVuRGVwdGgsIHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50IH0pOwog
ICAgIH0KIH0KIApAQCAtMTM0LDIwICsxMjYsNDYgQEAgdm9pZCBzZXRTY3JlZW5Qcm9wZXJ0aWVz
KGNvbnN0IEhhc2hNYXA8UAogewogICAgIHNjcmVlblByb3BlcnRpZXMoKSA9IHByb3BlcnRpZXM7
CiB9CisgICAgCitzdGF0aWMgU2NyZWVuUHJvcGVydGllcyBnZXRTY3JlZW5Qcm9wZXJ0aWVzKFdp
ZGdldCogd2lkZ2V0KQoreworICAgIGF1dG8gZGlzcGxheUlERm9yV2lkZ2V0ID0gZGlzcGxheUlE
KHdpZGdldCk7CisgICAgaWYgKGRpc3BsYXlJREZvcldpZGdldCAmJiBzY3JlZW5Qcm9wZXJ0aWVz
KCkuY29udGFpbnMoZGlzcGxheUlERm9yV2lkZ2V0KSkKKyAgICAgICAgcmV0dXJuIHNjcmVlblBy
b3BlcnRpZXMoKS5nZXQoZGlzcGxheUlERm9yV2lkZ2V0KTsKKyAgICAvLyBSZXR1cm4gcHJvcGVy
dHkgb2YgdGhlIGZpcnN0IHNjcmVlbiBpZiB0aGUgc2NyZWVuIGlzIG5vdCBmb3VuZCBpbiB0aGUg
bWFwLgorICAgIGF1dG8gaXRlciA9IHNjcmVlblByb3BlcnRpZXMoKS5iZWdpbigpOworICAgIHJl
dHVybiBzY3JlZW5Qcm9wZXJ0aWVzKCkuZ2V0KGl0ZXItPmtleSk7Cit9CiAjZW5kaWYKIAotRmxv
YXRSZWN0IHNjcmVlblJlY3QoV2lkZ2V0KiB3aWRnZXQpCitpbnQgc2NyZWVuRGVwdGgoV2lkZ2V0
KiB3aWRnZXQpCit7CisjaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0
MDAKKyAgICBpZiAoIXNjcmVlblByb3BlcnRpZXMoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgQVNT
RVJUKGdldFNjcmVlblByb3BlcnRpZXMod2lkZ2V0KS5zY3JlZW5EZXB0aCk7CisgICAgICAgIHJl
dHVybiBnZXRTY3JlZW5Qcm9wZXJ0aWVzKHdpZGdldCkuc2NyZWVuRGVwdGg7CisgICAgfQorI2Vu
ZGlmCisgICAgcmV0dXJuIE5TQml0c1BlclBpeGVsRnJvbURlcHRoKHNjcmVlbih3aWRnZXQpLmRl
cHRoKTsKK30KKworaW50IHNjcmVlbkRlcHRoUGVyQ29tcG9uZW50KFdpZGdldCogd2lkZ2V0KQog
ewogI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNDAwCiAgICAgaWYg
KCFzY3JlZW5Qcm9wZXJ0aWVzKCkuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGF1dG8gZGlzcGxheUlE
Rm9yV2lkZ2V0ID0gZGlzcGxheUlEKHdpZGdldCk7Ci0gICAgICAgIGlmIChkaXNwbGF5SURGb3JX
aWRnZXQgJiYgc2NyZWVuUHJvcGVydGllcygpLmNvbnRhaW5zKGRpc3BsYXlJREZvcldpZGdldCkp
Ci0gICAgICAgICAgICByZXR1cm4gc2NyZWVuUHJvcGVydGllcygpLmdldChkaXNwbGF5SURGb3JX
aWRnZXQpLnNjcmVlblJlY3Q7Ci0gICAgICAgIC8vIFJldHVybiBwcm9wZXJ0eSBvZiB0aGUgZmly
c3Qgc2NyZWVuIGlmIHRoZSBzY3JlZW4gaXMgbm90IGZvdW5kIGluIHRoZSBtYXAuCi0gICAgICAg
IGF1dG8gaXRlciA9IHNjcmVlblByb3BlcnRpZXMoKS5iZWdpbigpOwotICAgICAgICByZXR1cm4g
c2NyZWVuUHJvcGVydGllcygpLmdldChpdGVyLT5rZXkpLnNjcmVlblJlY3Q7CisgICAgICAgIEFT
U0VSVChnZXRTY3JlZW5Qcm9wZXJ0aWVzKHdpZGdldCkuc2NyZWVuRGVwdGhQZXJDb21wb25lbnQp
OworICAgICAgICByZXR1cm4gZ2V0U2NyZWVuUHJvcGVydGllcyh3aWRnZXQpLnNjcmVlbkRlcHRo
UGVyQ29tcG9uZW50OwogICAgIH0KICNlbmRpZgorICAgIHJldHVybiBOU0JpdHNQZXJTYW1wbGVG
cm9tRGVwdGgoc2NyZWVuKHdpZGdldCkuZGVwdGgpOworfQorCitGbG9hdFJlY3Qgc2NyZWVuUmVj
dChXaWRnZXQqIHdpZGdldCkKK3sKKyNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDEwMTQwMAorICAgIGlmICghc2NyZWVuUHJvcGVydGllcygpLmlzRW1wdHkoKSkKKyAgICAg
ICAgcmV0dXJuIGdldFNjcmVlblByb3BlcnRpZXMod2lkZ2V0KS5zY3JlZW5SZWN0OworI2VuZGlm
CiAgICAgcmV0dXJuIHRvVXNlclNwYWNlKFtzY3JlZW4od2lkZ2V0KSBmcmFtZV0sIHdpbmRvdyh3
aWRnZXQpKTsKIH0KIApAQCAtMTU1LDEyICsxNzMsNyBAQCBGbG9hdFJlY3Qgc2NyZWVuQXZhaWxh
YmxlUmVjdChXaWRnZXQqIHdpCiB7CiAjaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxMDE0MDAKICAgICBpZiAoIXNjcmVlblByb3BlcnRpZXMoKS5pc0VtcHR5KCkpIHsKLSAg
ICAgICAgYXV0byBkaXNwbGF5SURGb3JXaWRnZXQgPSBkaXNwbGF5SUQod2lkZ2V0KTsKLSAgICAg
ICAgaWYgKGRpc3BsYXlJREZvcldpZGdldCAmJiBzY3JlZW5Qcm9wZXJ0aWVzKCkuY29udGFpbnMo
ZGlzcGxheUlERm9yV2lkZ2V0KSkKLSAgICAgICAgICAgIHJldHVybiBzY3JlZW5Qcm9wZXJ0aWVz
KCkuZ2V0KGRpc3BsYXlJREZvcldpZGdldCkuc2NyZWVuQXZhaWxhYmxlUmVjdDsKLSAgICAgICAg
Ly8gUmV0dXJuIHByb3BlcnR5IG9mIHRoZSBmaXJzdCBzY3JlZW4gaWYgdGhlIHNjcmVlbiBpcyBu
b3QgZm91bmQgaW4gdGhlIG1hcC4KLSAgICAgICAgYXV0byBpdGVyID0gc2NyZWVuUHJvcGVydGll
cygpLmJlZ2luKCk7Ci0gICAgICAgIHJldHVybiBzY3JlZW5Qcm9wZXJ0aWVzKCkuZ2V0KGl0ZXIt
PmtleSkuc2NyZWVuQXZhaWxhYmxlUmVjdDsKKyAgICAgICAgcmV0dXJuIGdldFNjcmVlblByb3Bl
cnRpZXMod2lkZ2V0KS5zY3JlZW5BdmFpbGFibGVSZWN0OwogICAgIH0KICNlbmRpZgogICAgIHJl
dHVybiB0b1VzZXJTcGFjZShbc2NyZWVuKHdpZGdldCkgdmlzaWJsZUZyYW1lXSwgd2luZG93KHdp
ZGdldCkpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>