<?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>222999</bug_id>
          
          <creation_ts>2021-03-09 15:00:42 -0800</creation_ts>
          <short_desc>Need to rationalize preference like settings on the WKWebViewConfiguration that use the WebPreferences infrastructure</short_desc>
          <delta_ts>2021-03-16 16:01:26 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>kkinnunen</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1737788</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-09 15:00:42 -0800</bug_when>
    <thetext>There is an issue with all the preference like settings on the WKWebViewConfiguration that use the WebPreferences infrastructure to communicate their state. The issue stems from the configuration values updating the value of the shared WebPreferences object, when their intention was really only to affect the one WKWebView they were being used with. As an example:

    WKWebViewConfiguration *configurationA = [[WKWebViewConfiguration alloc] init];
    configuration._colorFilterEnabled = NO;

    WKWebView *webViewA = [[WKWebView alloc] initWithFrame:NSMakeRect(0, 0, 100, 100) configuration:configuration];
    
    // At this point, color filter is disable for webViewA.
    
    WKWebViewConfiguration *configurationCopy = webViewA.configuration;
    configurationCopy._colorFilterEnabled = YES;

    WKWebView *webViewB = [[WKWebView alloc] initWithFrame:NSMakeRect(0, 0, 100, 100) configuration:configurationCopy];

    // At this point, color filter is now enabled for webViewA and webViewB.

I think we need to stop updating the shared preferences entirely from [WKWebView _setupPageConfiguration:] and treat each configuration value as immutable for that WKWebView. This will require a bit of reworking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737791</commentid>
    <comment_count>1</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-09 15:15:27 -0800</bug_when>
    <thetext>There are really two problems here.

1) Configuration values can contaminate shared preferences.
2) The semantics of preferences that are exposed both as a configuration property and preferences property are unclear.

Not sure if they can be fixed independently yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737813</commentid>
    <comment_count>2</comment_count>
      <attachid>422769</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-09 15:48:48 -0800</bug_when>
    <thetext>Created attachment 422769
Analysis of the calls in _setupPageConfiguration:</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1740289</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-16 16:01:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/75499036&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>422769</attachid>
            <date>2021-03-09 15:48:48 -0800</date>
            <delta_ts>2021-03-09 15:48:48 -0800</delta_ts>
            <desc>Analysis of the calls in _setupPageConfiguration:</desc>
            <filename>analysis of calls.txt</filename>
            <type>text/plain</type>
            <size>10779</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">ICAgIHBhZ2VDb25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRTdXBwcmVzc2VzSW5jcmVt
ZW50YWxSZW5kZXJpbmcoISFbX2NvbmZpZ3VyYXRpb24gc3VwcHJlc3Nlc0luY3JlbWVudGFsUmVu
ZGVyaW5nXSk7CiAgICAgICAgZXhwb3NlZCBhcyBfc3VwcHJlc3Nlc0luY3JlbWVudGFsUmVuZGVy
aW5nIC8gV0tQcmVmZXJlbmNlc0dldFN1cHByZXNzZXNJbmNyZW1lbnRhbFJlbmRlcmluZyAvIFdL
UHJlZmVyZW5jZXNTZXRTdXBwcmVzc2VzSW5jcmVtZW50YWxSZW5kZXJpbmcKICAgIAogICAgcGFn
ZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldFNob3VsZFJlc3BlY3RJbWFnZU9yaWVu
dGF0aW9uKCEhW19jb25maWd1cmF0aW9uIF9yZXNwZWN0c0ltYWdlT3JpZW50YXRpb25dKTsKICAg
ICAgICBleHBvc2VkIGFzIFdLUHJlZmVyZW5jZXNHZXRTaG91bGRSZXNwZWN0SW1hZ2VPcmllbnRh
dGlvbi9XS1ByZWZlcmVuY2VzU2V0U2hvdWxkUmVzcGVjdEltYWdlT3JpZW50YXRpb24KCiAgICBw
YWdlQ29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZXMoKS0+c2V0U2hvdWxkUHJpbnRCYWNrZ3JvdW5k
cyghIVtfY29uZmlndXJhdGlvbiBfcHJpbnRzQmFja2dyb3VuZHNdKTsKICAgICAgICBleHBvc2Vk
IGFzIF9zaG91bGRQcmludEJhY2tncm91bmRzIC8gV0tQcmVmZXJlbmNlc0dldFNob3VsZFByaW50
QmFja2dyb3VuZHMgLyBXS1ByZWZlcmVuY2VzU2V0U2hvdWxkUHJpbnRCYWNrZ3JvdW5kcwoKICAg
IHBhZ2VDb25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRJbmNyZW1lbnRhbFJlbmRlcmlu
Z1N1cHByZXNzaW9uVGltZW91dChbX2NvbmZpZ3VyYXRpb24gX2luY3JlbWVudGFsUmVuZGVyaW5n
U3VwcHJlc3Npb25UaW1lb3V0XSk7CiAgICAgICAgZXhwb3NlZCBhcyBXS1ByZWZlcmVuY2VzR2V0
SW5jcmVtZW50YWxSZW5kZXJpbmdTdXBwcmVzc2lvblRpbWVvdXQgLyBXS1ByZWZlcmVuY2VzU2V0
SW5jcmVtZW50YWxSZW5kZXJpbmdTdXBwcmVzc2lvblRpbWVvdXQKICAgIAogICAgcGFnZUNvbmZp
Z3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldEphdmFTY3JpcHRNYXJrdXBFbmFibGVkKCEhW19j
b25maWd1cmF0aW9uIF9hbGxvd3NKYXZhU2NyaXB0TWFya3VwXSk7CiAgICAgICAgZXhwb3NlZCBh
cyBXS1ByZWZlcmVuY2VzR2V0SmF2YVNjcmlwdE1hcmt1cEVuYWJsZWQgLyBXS1ByZWZlcmVuY2Vz
U2V0SmF2YVNjcmlwdE1hcmt1cEVuYWJsZWQKCiAgICBwYWdlQ29uZmlndXJhdGlvbi0+cHJlZmVy
ZW5jZXMoKS0+c2V0U2hvdWxkQ29udmVydFBvc2l0aW9uU3R5bGVPbkNvcHkoISFbX2NvbmZpZ3Vy
YXRpb24gX2NvbnZlcnRzUG9zaXRpb25TdHlsZU9uQ29weV0pOwogICAgICAgIGV4cG9zZWQgYXMg
V0tQcmVmZXJlbmNlc0dldFNob3VsZENvbnZlcnRQb3NpdGlvblN0eWxlT25Db3B5IC8gV0tQcmVm
ZXJlbmNlc1NldFNob3VsZENvbnZlcnRQb3NpdGlvblN0eWxlT25Db3B5CgogICAgcGFnZUNvbmZp
Z3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldEhUVFBFcXVpdkVuYWJsZWQoISFbX2NvbmZpZ3Vy
YXRpb24gX2FsbG93c01ldGFSZWZyZXNoXSk7CiAgICAgICAgZXhwb3NlZCBhcyBXS1ByZWZlcmVu
Y2VzR2V0SFRUUEVxdWl2RW5hYmxlZCAvIFdLUHJlZmVyZW5jZXNTZXRIVFRQRXF1aXZFbmFibGVk
IC8gV0tQcmVmZXJlbmNlc0dldE1ldGFSZWZyZXNoRW5hYmxlZCAvIFdLUHJlZmVyZW5jZXNTZXRN
ZXRhUmVmcmVzaEVuYWJsZWQKCiAgICBwYWdlQ29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZXMoKS0+
c2V0QWxsb3dVbml2ZXJzYWxBY2Nlc3NGcm9tRmlsZVVSTHMoISFbX2NvbmZpZ3VyYXRpb24gX2Fs
bG93VW5pdmVyc2FsQWNjZXNzRnJvbUZpbGVVUkxzXSk7CiAgICAgICAgZXhwb3NlZCBhcyBXS1By
ZWZlcmVuY2VzR2V0VW5pdmVyc2FsQWNjZXNzRnJvbUZpbGVVUkxzQWxsb3dlZCAvIFdLUHJlZmVy
ZW5jZXNTZXRVbml2ZXJzYWxBY2Nlc3NGcm9tRmlsZVVSTHNBbGxvd2VkCgogICAgcGFnZUNvbmZp
Z3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldEFsbG93VG9wTmF2aWdhdGlvblRvRGF0YVVSTHMo
ISFbX2NvbmZpZ3VyYXRpb24gX2FsbG93VG9wTmF2aWdhdGlvblRvRGF0YVVSTHNdKTsKICAgICAg
ICBleHBvc2VkIGFzIFdLUHJlZmVyZW5jZXNHZXRUb3BOYXZpZ2F0aW9uVG9EYXRhVVJMc0FsbG93
ZWQgLyBXS1ByZWZlcmVuY2VzU2V0VG9wTmF2aWdhdGlvblRvRGF0YVVSTHNBbGxvd2VkCgogICAg
cGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldEluY29tcGxldGVJbWFnZUJvcmRl
ckVuYWJsZWQoISFbX2NvbmZpZ3VyYXRpb24gX2luY29tcGxldGVJbWFnZUJvcmRlckVuYWJsZWRd
KTsKICAgICAgICBvbmx5IGV4cG9zZWQgdmlhIHRlc3RpbmcgaW50ZXJmYWNlcwoKICAgIHBhZ2VD
b25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRTaG91bGREZWZlckFzeW5jaHJvbm91c1Nj
cmlwdHNVbnRpbEFmdGVyRG9jdW1lbnRMb2FkT3JGaXJzdFBhaW50KCEhW19jb25maWd1cmF0aW9u
IF9zaG91bGREZWZlckFzeW5jaHJvbm91c1NjcmlwdHNVbnRpbEFmdGVyRG9jdW1lbnRMb2FkXSk7
CiAgICAgICAgZXhwb3NlZCBhcyBhbiBleHBlcmltZW50YWwgZmVhdHVyZQogICAgCiAgICBwYWdl
Q29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZXMoKS0+c2V0U2hvdWxkUmVzdHJpY3RCYXNlVVJMU2No
ZW1lcyhzaG91bGRSZXN0cmljdEJhc2VVUkxTY2hlbWVzKCkpOwogICAgICAgIG9ubHkgZXhwb3Nl
ZCB2aWEgdGVzdGluZyBpbnRlcmZhY2VzCgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVu
Y2VzKCktPnNldFNob3dzVVJMc0luVG9vbFRpcHNFbmFibGVkKCEhW19jb25maWd1cmF0aW9uIF9z
aG93c1VSTHNJblRvb2xUaXBzXSk7CiAgICAgICAgZXhwb3NlZCBhcyBXS1ByZWZlcmVuY2VzR2V0
U2hvd3NVUkxzSW5Ub29sVGlwc0VuYWJsZWQgLyBXS1ByZWZlcmVuY2VzU2V0U2hvd3NVUkxzSW5U
b29sVGlwc0VuYWJsZWQKCiAgICBwYWdlQ29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZXMoKS0+c2V0
U2VydmljZUNvbnRyb2xzRW5hYmxlZCghIVtfY29uZmlndXJhdGlvbiBfc2VydmljZUNvbnRyb2xz
RW5hYmxlZF0pOwogICAgICAgIGV4cG9zZWQgYXMgX3NlcnZpY2VDb250cm9sc0VuYWJsZWQgLyBX
S1ByZWZlcmVuY2VzR2V0U2VydmljZUNvbnRyb2xzRW5hYmxlZCAvIFdLUHJlZmVyZW5jZXNTZXRT
ZXJ2aWNlQ29udHJvbHNFbmFibGVkCgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2Vz
KCktPnNldFVzZXJJbnRlcmZhY2VEaXJlY3Rpb25Qb2xpY3koY29udmVydFVzZXJJbnRlcmZhY2VE
aXJlY3Rpb25Qb2xpY3koW19jb25maWd1cmF0aW9uIHVzZXJJbnRlcmZhY2VEaXJlY3Rpb25Qb2xp
Y3ldKSk7CiAgICAgICAgZXhwb3NlZCBhcyBXS1ByZWZlcmVuY2VzR2V0VXNlckludGVyZmFjZURp
cmVjdGlvblBvbGljeSAvIFdLUHJlZmVyZW5jZXNTZXRVc2VySW50ZXJmYWNlRGlyZWN0aW9uUG9s
aWN5CgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldFN5c3RlbUxheW91
dERpcmVjdGlvbihjb252ZXJ0U3lzdGVtTGF5b3V0RGlyZWN0aW9uKHNlbGYudXNlckludGVyZmFj
ZUxheW91dERpcmVjdGlvbikpOwogICAgICAgIG9ubHkgZXhwb3NlZCB2aWEgdGVzdGluZyBpbnRl
cmZhY2VzCgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldEFsbG93c0lu
bGluZU1lZGlhUGxheWJhY2soISFbX2NvbmZpZ3VyYXRpb24gYWxsb3dzSW5saW5lTWVkaWFQbGF5
YmFja10pOwogICAgICAgIGV4cG9zZWQgYXMgX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2sgLyBX
S1ByZWZlcmVuY2VzR2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZSAvIFdLUHJlZmVyZW5jZXNT
ZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lCgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZl
cmVuY2VzKCktPnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4oISFb
X2NvbmZpZ3VyYXRpb24gX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW5d
KTsKICAgICAgICBvbmx5IGV4cG9zZWQgdmlhIHRlc3RpbmcgaW50ZXJmYWNlcwoKICAgIHBhZ2VD
b25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWly
ZXNQbGF5c0lubGluZUF0dHJpYnV0ZSghIVtfY29uZmlndXJhdGlvbiBfaW5saW5lTWVkaWFQbGF5
YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGVdKTsKICAgICAgICBleHBvc2VkIGFzIF9p
bmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSAvIFdLUHJlZmVy
ZW5jZXNHZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSAv
IFdLUHJlZmVyZW5jZXNTZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0
dHJpYnV0ZQoKICAgIHBhZ2VDb25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRBbGxvd3NQ
aWN0dXJlSW5QaWN0dXJlTWVkaWFQbGF5YmFjayghIVtfY29uZmlndXJhdGlvbiBhbGxvd3NQaWN0
dXJlSW5QaWN0dXJlTWVkaWFQbGF5YmFja10gJiYgc2hvdWxkQWxsb3dQaWN0dXJlSW5QaWN0dXJl
TWVkaWFQbGF5YmFjaygpKTsKICAgICAgICBleHBvc2VkIGFzIF9hbGxvd3NQaWN0dXJlSW5QaWN0
dXJlTWVkaWFQbGF5YmFjayAvIFdLUHJlZmVyZW5jZXNHZXRBbGxvd3NQaWN0dXJlSW5QaWN0dXJl
TWVkaWFQbGF5YmFjayAvIFdLUHJlZmVyZW5jZXNTZXRBbGxvd3NQaWN0dXJlSW5QaWN0dXJlTWVk
aWFQbGF5YmFjawoKICAgIHBhZ2VDb25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRBbGxv
d1NldHRpbmdBbnlYSFJIZWFkZXJGcm9tRmlsZVVSTHMoc2hvdWxkQWxsb3dTZXR0aW5nQW55WEhS
SGVhZGVyRnJvbUZpbGVVUkxzKCkpOwogICAgICAgIG9ubHkgZXhwb3NlZCB2aWEgdGVzdGluZyBp
bnRlcmZhY2VzCgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldFNob3Vs
ZERlY2lkZVBvbGljeUJlZm9yZUxvYWRpbmdRdWlja0xvb2tQcmV2aWV3KCEhW19jb25maWd1cmF0
aW9uIF9zaG91bGREZWNpZGVQb2xpY3lCZWZvcmVMb2FkaW5nUXVpY2tMb29rUHJldmlld10pOwog
ICAgICAgIG9ubHkgZXhwb3NlZCB2aWEgdGVzdGluZyBpbnRlcmZhY2VzCgogICAgcGFnZUNvbmZp
Z3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldERldmljZU9yaWVudGF0aW9uUGVybWlzc2lvbkFQ
SUVuYWJsZWQobGlua2VkT25PckFmdGVyKFdlYkNvcmU6OlNES1ZlcnNpb246OkZpcnN0V2l0aERl
dmljZU9yaWVudGF0aW9uQW5kTW90aW9uUGVybWlzc2lvbkFQSSkpOwogICAgICAgIG9ubHkgZXhw
b3NlZCB2aWEgdGVzdGluZyBpbnRlcmZhY2VzCgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZl
cmVuY2VzKCktPnNldFN5c3RlbVByZXZpZXdFbmFibGVkKCEhW19jb25maWd1cmF0aW9uIF9zeXN0
ZW1QcmV2aWV3RW5hYmxlZF0pOwogICAgICAgIG9ubHkgZXhwb3NlZCB2aWEgdGVzdGluZyBpbnRl
cmZhY2VzCgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldFJlcXVpcmVz
VXNlckdlc3R1cmVGb3JWaWRlb1BsYXliYWNrKChbX2NvbmZpZ3VyYXRpb24gbWVkaWFUeXBlc1Jl
cXVpcmluZ1VzZXJBY3Rpb25Gb3JQbGF5YmFja10gJiBXS0F1ZGlvdmlzdWFsTWVkaWFUeXBlVmlk
ZW8pID09IFdLQXVkaW92aXN1YWxNZWRpYVR5cGVWaWRlbyk7CiAgICAgICAgZXhwb3NlZCBhcyBX
S1ByZWZlcmVuY2VzR2V0VmlkZW9QbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgLyBXS1ByZWZl
cmVuY2VzU2V0VmlkZW9QbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUKCiAgICBwYWdlQ29uZmln
dXJhdGlvbi0+cHJlZmVyZW5jZXMoKS0+c2V0UmVxdWlyZXNVc2VyR2VzdHVyZUZvckF1ZGlvUGxh
eWJhY2soKChbX2NvbmZpZ3VyYXRpb24gbWVkaWFUeXBlc1JlcXVpcmluZ1VzZXJBY3Rpb25Gb3JQ
bGF5YmFja10gJiBXS0F1ZGlvdmlzdWFsTWVkaWFUeXBlQXVkaW8pID09IFdLQXVkaW92aXN1YWxN
ZWRpYVR5cGVBdWRpbykpOwogICAgICAgIGV4cG9zZWQgYXMgV0tQcmVmZXJlbmNlc0dldEF1ZGlv
UGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlIC8gV0tQcmVmZXJlbmNlc1NldEF1ZGlvUGxheWJh
Y2tSZXF1aXJlc1VzZXJHZXN0dXJlCgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2Vz
KCktPnNldFJlcXVpcmVzVXNlckdlc3R1cmVUb0xvYWRWaWRlbyhzaG91bGRSZXF1aXJlVXNlckdl
c3R1cmVUb0xvYWRWaWRlbygpKTsKICAgICAgICBvbmx5IGV4cG9zZWQgdmlhIHRlc3RpbmcgaW50
ZXJmYWNlcwoKICAgIHBhZ2VDb25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRNYWluQ29u
dGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkKCEhW19jb25maWd1cmF0aW9uIF9tYWluQ29u
dGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkXSk7CiAgICAgICAgZXhwb3NlZCBhcyBfbWFp
bkNvbnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5hYmxlZCAvIFdLUHJlZmVyZW5jZXNHZXRNYWlu
Q29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkIC8gV0tQcmVmZXJlbmNlc1NldE1haW5D
b250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVuYWJsZWQKCiAgICBwYWdlQ29uZmlndXJhdGlvbi0+
cHJlZmVyZW5jZXMoKS0+c2V0SW52aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0ZWQoISFbX2NvbmZp
Z3VyYXRpb24gX2ludmlzaWJsZUF1dG9wbGF5Tm90UGVybWl0dGVkXSk7CiAgICAgICAgZXhwb3Nl
ZCBhcyBXS1ByZWZlcmVuY2VzR2V0SW52aXNpYmxlTWVkaWFBdXRvcGxheVBlcm1pdHRlZCAvIFdL
UHJlZmVyZW5jZXNTZXRJbnZpc2libGVNZWRpYUF1dG9wbGF5UGVybWl0dGVkCgogICAgcGFnZUNv
bmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldE1lZGlhRGF0YUxvYWRzQXV0b21hdGljYWxs
eSghIVtfY29uZmlndXJhdGlvbiBfbWVkaWFEYXRhTG9hZHNBdXRvbWF0aWNhbGx5XSk7CiAgICAg
ICAgb25seSBleHBvc2VkIHZpYSB0ZXN0aW5nIGludGVyZmFjZXMKCiAgICBwYWdlQ29uZmlndXJh
dGlvbi0+cHJlZmVyZW5jZXMoKS0+c2V0QXR0YWNobWVudEVsZW1lbnRFbmFibGVkKCEhW19jb25m
aWd1cmF0aW9uIF9hdHRhY2htZW50RWxlbWVudEVuYWJsZWRdKTsKICAgICAgICBleHBvc2VkIGFz
IFdLUHJlZmVyZW5jZXNHZXRBdHRhY2htZW50RWxlbWVudEVuYWJsZWQgLyBXS1ByZWZlcmVuY2Vz
U2V0QXR0YWNobWVudEVsZW1lbnRFbmFibGVkCgogICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZl
cmVuY2VzKCktPnNldERhdGFEZXRlY3RvclR5cGVzKHN0YXRpY19jYXN0PHVpbnQzMl90Pihmcm9t
V0tEYXRhRGV0ZWN0b3JUeXBlcyhbX2NvbmZpZ3VyYXRpb24gZGF0YURldGVjdG9yVHlwZXNdKSkp
OwogICAgICAgIG9ubHkgZXhwb3NlZCB2aWEgdGVzdGluZyBpbnRlcmZhY2VzCgogICAgcGFnZUNv
bmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNldEFsbG93c0FpclBsYXlGb3JNZWRpYVBsYXli
YWNrKCEhW19jb25maWd1cmF0aW9uIGFsbG93c0FpclBsYXlGb3JNZWRpYVBsYXliYWNrXSk7CiAg
ICAgICAgZXhwb3NlZCBhcyBXS1ByZWZlcmVuY2VzR2V0QWxsb3dzQWlyUGxheUZvck1lZGlhUGxh
eWJhY2sgLyBXS1ByZWZlcmVuY2VzU2V0QWxsb3dzQWlyUGxheUZvck1lZGlhUGxheWJhY2sKCiAg
ICBwYWdlQ29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZXMoKS0+c2V0QXBwbGVQYXlFbmFibGVkKCEh
W19jb25maWd1cmF0aW9uIF9hcHBsZVBheUVuYWJsZWRdKTsKICAgICAgICBleHBvc2VkIGFzIF9h
cHBsZVBheUVuYWJsZWQgLyBXS1ByZWZlcmVuY2VzR2V0QXBwbGVQYXlFbmFibGVkIC8gV0tQcmVm
ZXJlbmNlc1NldEFwcGxlUGF5RW5hYmxlZAoKICAgIHBhZ2VDb25maWd1cmF0aW9uLT5wcmVmZXJl
bmNlcygpLT5zZXROZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyayghIVtfY29uZmln
dXJhdGlvbiBfbmVlZHNTdG9yYWdlQWNjZXNzRnJvbUZpbGVVUkxzUXVpcmtdKTsKICAgICAgICBl
eHBvc2VkIGFzIF9uZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyayAvIFdLUHJlZmVy
ZW5jZXNHZXROZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyayAvIFdLUHJlZmVyZW5j
ZXNTZXROZWVkc1N0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyawoKICAgIHBhZ2VDb25maWd1
cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRNZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3
YXJlU3VwcG9ydChTdHJpbmcoW19jb25maWd1cmF0aW9uIF9tZWRpYUNvbnRlbnRUeXBlc1JlcXVp
cmluZ0hhcmR3YXJlU3VwcG9ydF0pKTsKICAgICAgICBleHBvc2VkIGFzIFdLUHJlZmVyZW5jZXNH
ZXRNZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJlU3VwcG9ydCAvIFdLUHJlZmVyZW5j
ZXNTZXRNZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJlU3VwcG9ydAoKICAgIHBhZ2VD
b25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRBbGxvd01lZGlhQ29udGVudFR5cGVzUmVx
dWlyaW5nSGFyZHdhcmVTdXBwb3J0QXNGYWxsYmFjayghIVtfY29uZmlndXJhdGlvbiBfYWxsb3dN
ZWRpYUNvbnRlbnRUeXBlc1JlcXVpcmluZ0hhcmR3YXJlU3VwcG9ydEFzRmFsbGJhY2tdKTsKICAg
ICAgICBleHBvc2VkIGFzIFdLUHJlZmVyZW5jZXNHZXRBbGxvd01lZGlhQ29udGVudFR5cGVzUmVx
dWlyaW5nSGFyZHdhcmVTdXBwb3J0QXNGYWxsYmFjayAvIFdLUHJlZmVyZW5jZXNTZXRBbGxvd01l
ZGlhQ29udGVudFR5cGVzUmVxdWlyaW5nSGFyZHdhcmVTdXBwb3J0QXNGYWxsYmFjawoKICAgIHBh
Z2VDb25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRDb2xvckZpbHRlckVuYWJsZWQoISFb
X2NvbmZpZ3VyYXRpb24gX2NvbG9yRmlsdGVyRW5hYmxlZF0pOwogICAgICAgIGV4cG9zZWQgYXMg
X2NvbG9yRmlsdGVyRW5hYmxlZCAvIFdLUHJlZmVyZW5jZXNHZXRDb2xvckZpbHRlckVuYWJsZWQg
LyBXS1ByZWZlcmVuY2VzU2V0Q29sb3JGaWx0ZXJFbmFibGVkCgogICAgcGFnZUNvbmZpZ3VyYXRp
b24tPnByZWZlcmVuY2VzKCktPnNldFVuZG9NYW5hZ2VyQVBJRW5hYmxlZCghIVtfY29uZmlndXJh
dGlvbiBfdW5kb01hbmFnZXJBUElFbmFibGVkXSk7CiAgICAgICAgb25seSBleHBvc2VkIHZpYSB0
ZXN0aW5nIGludGVyZmFjZXMKCiAgICBwYWdlQ29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZXMoKS0+
c2V0TGVnYWN5RW5jcnlwdGVkTWVkaWFBUElFbmFibGVkKCEhW19jb25maWd1cmF0aW9uIF9sZWdh
Y3lFbmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWRdKTsKICAgICAgICBleHBvc2VkIGFzIF9sZWdhY3lF
bmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWQgLyBXS1ByZWZlcmVuY2VzR2V0TGVnYWN5RW5jcnlwdGVk
TWVkaWFBUElFbmFibGVkIC8gV0tQcmVmZXJlbmNlc1NldExlZ2FjeUVuY3J5cHRlZE1lZGlhQVBJ
RW5hYmxlZAoKICAgIGlmICghcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPm1lZGlh
RGV2aWNlc0VuYWJsZWQoKSkKICAgICAgICBwYWdlQ29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZXMo
KS0+c2V0TWVkaWFEZXZpY2VzRW5hYmxlZCghIVtfY29uZmlndXJhdGlvbiBfbWVkaWFDYXB0dXJl
RW5hYmxlZF0pOwogICAgICAgIAogICAgICAgIGV4cG9zZWQgYXMgX21lZGlhRGV2aWNlc0VuYWJs
ZWQgLyBXS1ByZWZlcmVuY2VzR2V0TWVkaWFEZXZpY2VzRW5hYmxlZCAvIFdLUHJlZmVyZW5jZXNT
ZXRNZWRpYURldmljZXNFbmFibGVkCgoKICAgIGJvb2wgaGFzU2VydmljZVdvcmtlckVudGl0bGVt
ZW50ID0gKFdURjo6cHJvY2Vzc0hhc0VudGl0bGVtZW50KCJjb20uYXBwbGUuZGV2ZWxvcGVyLldl
YktpdC5TZXJ2aWNlV29ya2VycyIpIHx8IFdURjo6cHJvY2Vzc0hhc0VudGl0bGVtZW50KCJjb20u
YXBwbGUuZGV2ZWxvcGVyLndlYi1icm93c2VyIikpICYmICFbX2NvbmZpZ3VyYXRpb24gcHJlZmVy
ZW5jZXNdLl9zZXJ2aWNlV29ya2VyRW50aXRsZW1lbnREaXNhYmxlZEZvclRlc3Rpbmc7CiAgICBp
ZiAoIWhhc1NlcnZpY2VXb3JrZXJFbnRpdGxlbWVudCAmJiAhW19jb25maWd1cmF0aW9uIGxpbWl0
c05hdmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnNdKQogICAgICAgIHBhZ2VDb25maWd1cmF0aW9u
LT5wcmVmZXJlbmNlcygpLT5zZXRTZXJ2aWNlV29ya2Vyc0VuYWJsZWQoZmFsc2UpOwoKICAgICAg
ICBvbmx5IGV4cG9zZWQgdmlhIHRlc3RpbmcgaW50ZXJmYWNlcwoKICAgIHBhZ2VDb25maWd1cmF0
aW9uLT5wcmVmZXJlbmNlcygpLT5zZXRTZXJ2aWNlV29ya2VyRW50aXRsZW1lbnREaXNhYmxlZEZv
clRlc3RpbmcoISFbX2NvbmZpZ3VyYXRpb24gcHJlZmVyZW5jZXNdLl9zZXJ2aWNlV29ya2VyRW50
aXRsZW1lbnREaXNhYmxlZEZvclRlc3RpbmcpOwogICAgICAgIGV4cG9zZWQgdmlhIF9zZXJ2aWNl
V29ya2VyRW50aXRsZW1lbnREaXNhYmxlZEZvclRlc3RpbmcKCgogICAgaWYgKCFsaW5rZWRPbk9y
QWZ0ZXIoV2ViQ29yZTo6U0RLVmVyc2lvbjo6Rmlyc3RXaGVyZVNpdGVTcGVjaWZpY1F1aXJrc0Fy
ZUVuYWJsZWRCeURlZmF1bHQpKQogICAgICAgIHBhZ2VDb25maWd1cmF0aW9uLT5wcmVmZXJlbmNl
cygpLT5zZXROZWVkc1NpdGVTcGVjaWZpY1F1aXJrcyhmYWxzZSk7CiAgICAgICAgCiAgICAgICAg
ZXhwb3NlZCB2aWEgX25lZWRzU2l0ZVNwZWNpZmljUXVpcmtzIC8gV0tQcmVmZXJlbmNlc0dldE5l
ZWRzU2l0ZVNwZWNpZmljUXVpcmtzIC8gV0tQcmVmZXJlbmNlc1NldE5lZWRzU2l0ZVNwZWNpZmlj
UXVpcmtz
</data>

          </attachment>
      

    </bug>

</bugzilla>