<?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>15832</bug_id>
          
          <creation_ts>2007-11-04 10:37:38 -0800</creation_ts>
          <short_desc>fast/dom/gc-10.html crashes when run alone</short_desc>
          <delta_ts>2007-11-04 12:39:21 -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>Tools / Tests</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>60245</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-11-04 10:37:38 -0800</bug_when>
    <thetext>r27424.

run-webkit-tests fast/dom/gc-10.html

BTW, run-webkit-tests doesn&apos;t catch the crash, and reports success. I suppose this happens because DRT crashes on exit, after dumping expected results.

Thread 0 Crashed:
0   DumpRenderTree           	0x00023cc0 LayoutTestController::dumpFrameLoadCallbacks() const + 20 (LayoutTestController.h:93)
1   DumpRenderTree           	0x00012c04 -[FrameLoadDelegate webView:didCancelClientRedirectForFrame:] + 56 (FrameLoadDelegate.mm:324)
2   com.apple.WebKit         	0x004aed24 CallDelegate(objc_object* (*)(objc_object*, objc_selector*, ...), WebView*, objc_object*, objc_selector*, objc_object*) + 368 (WebView.mm:4319)
3   com.apple.WebKit         	0x004afce8 CallFrameLoadDelegate(objc_object* (*)(objc_object*, objc_selector*, ...), WebView*, objc_selector*, objc_object*) + 72 (WebView.mm:4477)
4   com.apple.WebKit         	0x00422474 WebFrameLoaderClient::dispatchDidCancelClientRedirect() + 180 (WebFrameLoaderClient.mm:472)
5   com.apple.WebCore        	0x0119c4dc WebCore::FrameLoader::clientRedirectCancelledOrFinished(bool) + 72 (FrameLoader.cpp:2647)
6   com.apple.WebCore        	0x0119c604 WebCore::FrameLoader::stopRedirectionTimer() + 236 (FrameLoader.cpp:1858)
7   com.apple.WebCore        	0x011a1b74 WebCore::FrameLoader::cancelRedirection(bool) + 48 (FrameLoader.cpp:668)
8   com.apple.WebCore        	0x011af850 WebCore::FrameLoader::stopLoading(bool) + 1128 (FrameLoader.cpp:632)
9   com.apple.WebCore        	0x011af81c WebCore::FrameLoader::stopLoading(bool) + 1076 (FrameLoader.cpp:620)
10  com.apple.WebCore        	0x011af9c0 WebCore::FrameLoader::closeURL() + 44 (FrameLoader.cpp:658)
11  com.apple.WebCore        	0x011afa38 WebCore::FrameLoader::detachFromParent() + 64 (FrameLoader.cpp:3158)
12  com.apple.WebKit         	0x004b3fdc -[WebView(WebPrivate) _close] + 160 (WebView.mm:677)
13  com.apple.WebKit         	0x0049e7b8 -[WebView close] + 60 (WebView.mm:1968)
14  DumpRenderTree           	0x0000a264 dumpRenderTree(int, char const**) + 3136
15  DumpRenderTree           	0x0000a4f4 main + 120
16  DumpRenderTree           	0x00002bfc _start + 760
17  DumpRenderTree           	0x00002900 start + 48</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>60247</commentid>
    <comment_count>1</comment_count>
      <attachid>17035</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-11-04 11:05:59 -0800</bug_when>
    <thetext>Created attachment 17035
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>60249</commentid>
    <comment_count>2</comment_count>
      <attachid>17035</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2007-11-04 12:12:35 -0800</bug_when>
    <thetext>Comment on attachment 17035
proposed fix

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>60250</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-11-04 12:39:21 -0800</bug_when>
    <thetext>Committed revision 27428.

</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17035</attachid>
            <date>2007-11-04 11:05:59 -0800</date>
            <delta_ts>2007-11-04 12:12:35 -0800</delta_ts>
            <desc>proposed fix</desc>
            <filename>15832r1_patch.txt</filename>
            <type>text/plain</type>
            <size>19104</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NDI3KQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNTEgQEAKKzIwMDctMTEtMDQgIEFsZXhleSBQcm9za3VyeWFr
b3YgIDxhcEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODMy
CisgICAgICAgIGZhc3QvZG9tL2djLTEwLmh0bWwgY3Jhc2hlcyB3aGVuIHJ1biBhbG9uZQorCisg
ICAgICAgIENoZWNrIGZvciAhZG9uZSBiZWZvcmUgdXNpbmcgb2JqZWN0cyB0aGF0IGNhbiBiZSBh
bHJlYWR5IGRlYWxsb2NhdGVkLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0VkaXRp
bmdEZWxlZ2F0ZS5tbToKKyAgICAgICAgKC1bRWRpdGluZ0RlbGVnYXRlIHdlYlZpZXc6c2hvdWxk
QmVnaW5FZGl0aW5nSW5ET01SYW5nZTpdKToKKyAgICAgICAgKC1bRWRpdGluZ0RlbGVnYXRlIHdl
YlZpZXc6c2hvdWxkRW5kRWRpdGluZ0luRE9NUmFuZ2U6XSk6CisgICAgICAgICgtW0VkaXRpbmdE
ZWxlZ2F0ZSB3ZWJWaWV3OnNob3VsZEluc2VydE5vZGU6cmVwbGFjaW5nRE9NUmFuZ2U6Z2l2ZW5B
Y3Rpb246XSk6CisgICAgICAgICgtW0VkaXRpbmdEZWxlZ2F0ZSB3ZWJWaWV3OnNob3VsZEluc2Vy
dFRleHQ6cmVwbGFjaW5nRE9NUmFuZ2U6Z2l2ZW5BY3Rpb246XSk6CisgICAgICAgICgtW0VkaXRp
bmdEZWxlZ2F0ZSB3ZWJWaWV3OnNob3VsZERlbGV0ZURPTVJhbmdlOl0pOgorICAgICAgICAoLVtF
ZGl0aW5nRGVsZWdhdGUgd2ViVmlldzpzaG91bGRDaGFuZ2VTZWxlY3RlZERPTVJhbmdlOnRvRE9N
UmFuZ2U6YWZmaW5pdHk6c3RpbGxTZWxlY3Rpbmc6XSk6CisgICAgICAgICgtW0VkaXRpbmdEZWxl
Z2F0ZSB3ZWJWaWV3OnNob3VsZEFwcGx5U3R5bGU6dG9FbGVtZW50c0luRE9NUmFuZ2U6XSk6Cisg
ICAgICAgICgtW0VkaXRpbmdEZWxlZ2F0ZSB3ZWJWaWV3OnNob3VsZENoYW5nZVR5cGluZ1N0eWxl
OnRvU3R5bGU6XSk6CisgICAgICAgICgtW0VkaXRpbmdEZWxlZ2F0ZSB3ZWJWaWV3RGlkQmVnaW5F
ZGl0aW5nOl0pOgorICAgICAgICAoLVtFZGl0aW5nRGVsZWdhdGUgd2ViVmlld0RpZENoYW5nZTpd
KToKKyAgICAgICAgKC1bRWRpdGluZ0RlbGVnYXRlIHdlYlZpZXdEaWRFbmRFZGl0aW5nOl0pOgor
ICAgICAgICAoLVtFZGl0aW5nRGVsZWdhdGUgd2ViVmlld0RpZENoYW5nZVR5cGluZ1N0eWxlOl0p
OgorICAgICAgICAoLVtFZGl0aW5nRGVsZWdhdGUgd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpd
KToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9tYWMvRnJhbWVMb2FkRGVsZWdhdGUubW06Cisg
ICAgICAgICgtW0ZyYW1lTG9hZERlbGVnYXRlIHdlYlZpZXc6ZGlkU3RhcnRQcm92aXNpb25hbExv
YWRGb3JGcmFtZTpdKToKKyAgICAgICAgKC1bRnJhbWVMb2FkRGVsZWdhdGUgd2ViVmlldzpkaWRD
b21taXRMb2FkRm9yRnJhbWU6XSk6CisgICAgICAgICgtW0ZyYW1lTG9hZERlbGVnYXRlIHdlYlZp
ZXc6ZGlkRmFpbFByb3Zpc2lvbmFsTG9hZFdpdGhFcnJvcjpmb3JGcmFtZTpdKToKKyAgICAgICAg
KC1bRnJhbWVMb2FkRGVsZWdhdGUgd2ViVmlldzpkaWRGaW5pc2hMb2FkRm9yRnJhbWU6XSk6Cisg
ICAgICAgICgtW0ZyYW1lTG9hZERlbGVnYXRlIHdlYlZpZXc6ZGlkRmFpbExvYWRXaXRoRXJyb3I6
Zm9yRnJhbWU6XSk6CisgICAgICAgICgtW0ZyYW1lTG9hZERlbGVnYXRlIHdlYlZpZXc6d2luZG93
U2NyaXB0T2JqZWN0QXZhaWxhYmxlOl0pOgorICAgICAgICAoLVtGcmFtZUxvYWREZWxlZ2F0ZSB3
ZWJWaWV3OmRpZENsZWFyV2luZG93T2JqZWN0OmZvckZyYW1lOl0pOgorICAgICAgICAoLVtGcmFt
ZUxvYWREZWxlZ2F0ZSB3ZWJWaWV3OmRpZFJlY2VpdmVUaXRsZTpmb3JGcmFtZTpdKToKKyAgICAg
ICAgKC1bRnJhbWVMb2FkRGVsZWdhdGUgd2ViVmlldzpkaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RG
b3JQcm92aXNpb25hbExvYWRGb3JGcmFtZTpdKToKKyAgICAgICAgKC1bRnJhbWVMb2FkRGVsZWdh
dGUgd2ViVmlldzpkaWRSZWNlaXZlSWNvbjpmb3JGcmFtZTpdKToKKyAgICAgICAgKC1bRnJhbWVM
b2FkRGVsZWdhdGUgd2ViVmlldzpkaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZTpd
KToKKyAgICAgICAgKC1bRnJhbWVMb2FkRGVsZWdhdGUgd2ViVmlldzp3aWxsUGVyZm9ybUNsaWVu
dFJlZGlyZWN0VG9VUkw6ZGVsYXk6ZmlyZURhdGU6Zm9yRnJhbWU6XSk6CisgICAgICAgICgtW0Zy
YW1lTG9hZERlbGVnYXRlIHdlYlZpZXc6ZGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3RGb3JGcmFtZTpd
KToKKyAgICAgICAgKC1bRnJhbWVMb2FkRGVsZWdhdGUgd2ViVmlldzp3aWxsQ2xvc2VGcmFtZTpd
KToKKyAgICAgICAgKC1bRnJhbWVMb2FkRGVsZWdhdGUgd2ViVmlldzpkaWRGaW5pc2hEb2N1bWVu
dExvYWRGb3JGcmFtZTpdKToKKyAgICAgICAgKC1bRnJhbWVMb2FkRGVsZWdhdGUgd2ViVmlldzpk
aWRIYW5kbGVPbmxvYWRFdmVudHNGb3JGcmFtZTpdKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJl
ZS9tYWMvUmVzb3VyY2VMb2FkRGVsZWdhdGUubW06CisgICAgICAgICgtW1Jlc291cmNlTG9hZERl
bGVnYXRlIHdlYlZpZXc6aWRlbnRpZmllckZvckluaXRpYWxSZXF1ZXN0OmZyb21EYXRhU291cmNl
Ol0pOgorICAgICAgICAoLVtSZXNvdXJjZUxvYWREZWxlZ2F0ZSB3ZWJWaWV3OnJlc291cmNlOndp
bGxTZW5kUmVxdWVzdDpyZWRpcmVjdFJlc3BvbnNlOmZyb21EYXRhU291cmNlOl0pOgorICAgICAg
ICAoLVtSZXNvdXJjZUxvYWREZWxlZ2F0ZSB3ZWJWaWV3OnJlc291cmNlOmRpZFJlY2VpdmVSZXNw
b25zZTpmcm9tRGF0YVNvdXJjZTpdKToKKyAgICAgICAgKC1bUmVzb3VyY2VMb2FkRGVsZWdhdGUg
d2ViVmlldzpyZXNvdXJjZTpkaWRGaW5pc2hMb2FkaW5nRnJvbURhdGFTb3VyY2U6XSk6CisgICAg
ICAgICgtW1Jlc291cmNlTG9hZERlbGVnYXRlIHdlYlZpZXc6cmVzb3VyY2U6ZGlkRmFpbExvYWRp
bmdXaXRoRXJyb3I6ZnJvbURhdGFTb3VyY2U6XSk6CisgICAgICAgICgtW1Jlc291cmNlTG9hZERl
bGVnYXRlIHdlYlZpZXc6cmVzb3VyY2U6d2lsbENhY2hlUmVzcG9uc2U6ZnJvbURhdGFTb3VyY2U6
XSk6CisKIDIwMDctMTEtMDQgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAgICAg
ICBCdWlsZCBmaXguICBEb24ndCB1c2UgQ2FyYm9uLmggYXMgdGhlIHByZWZpeCBoZWFkZXIgYXMg
aXQgdHJpZ2dlcnMKSW5kZXg6IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9FZGl0aW5n
RGVsZWdhdGUubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFj
L0VkaXRpbmdEZWxlZ2F0ZS5tbQkocmV2aXNpb24gMjc0MjQpCisrKyBXZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9tYWMvRWRpdGluZ0RlbGVnYXRlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC03Mywx
NCArNzMsMTQgQEAKIAogLSAoQk9PTCl3ZWJWaWV3OihXZWJWaWV3ICopd2ViVmlldyBzaG91bGRC
ZWdpbkVkaXRpbmdJbkRPTVJhbmdlOihET01SYW5nZSAqKXJhbmdlCiB7Ci0gICAgaWYgKGxheW91
dFRlc3RDb250cm9sbGVyLT5kdW1wRWRpdGluZ0NhbGxiYWNrcygpICYmICFkb25lKQorICAgIGlm
ICghZG9uZSAmJiBsYXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEVkaXRpbmdDYWxsYmFja3MoKSkK
ICAgICAgICAgcHJpbnRmKCJFRElUSU5HIERFTEVHQVRFOiBzaG91bGRCZWdpbkVkaXRpbmdJbkRP
TVJhbmdlOiVzXG4iLCBbW3JhbmdlIGR1bXBdIFVURjhTdHJpbmddKTsKICAgICByZXR1cm4gYWNj
ZXB0c0VkaXRpbmc7CiB9CiAKIC0gKEJPT0wpd2ViVmlldzooV2ViVmlldyAqKXdlYlZpZXcgc2hv
dWxkRW5kRWRpdGluZ0luRE9NUmFuZ2U6KERPTVJhbmdlICopcmFuZ2UKIHsKLSAgICBpZiAobGF5
b3V0VGVzdENvbnRyb2xsZXItPmR1bXBFZGl0aW5nQ2FsbGJhY2tzKCkgJiYgIWRvbmUpCisgICAg
aWYgKCFkb25lICYmIGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRWRpdGluZ0NhbGxiYWNrcygp
KQogICAgICAgICBwcmludGYoIkVESVRJTkcgREVMRUdBVEU6IHNob3VsZEVuZEVkaXRpbmdJbkRP
TVJhbmdlOiVzXG4iLCBbW3JhbmdlIGR1bXBdIFVURjhTdHJpbmddKTsKICAgICByZXR1cm4gYWNj
ZXB0c0VkaXRpbmc7CiB9CkBAIC05Myw3ICs5Myw3IEBACiAgICAgICAgICJXZWJWaWV3SW5zZXJ0
QWN0aW9uRHJvcHBlZCIsCiAgICAgfTsKIAotICAgIGlmIChsYXlvdXRUZXN0Q29udHJvbGxlci0+
ZHVtcEVkaXRpbmdDYWxsYmFja3MoKSAmJiAhZG9uZSkKKyAgICBpZiAoIWRvbmUgJiYgbGF5b3V0
VGVzdENvbnRyb2xsZXItPmR1bXBFZGl0aW5nQ2FsbGJhY2tzKCkpCiAgICAgICAgIHByaW50Zigi
RURJVElORyBERUxFR0FURTogc2hvdWxkSW5zZXJ0Tm9kZTolcyByZXBsYWNpbmdET01SYW5nZTol
cyBnaXZlbkFjdGlvbjolc1xuIiwgW1tub2RlIGR1bXBQYXRoXSBVVEY4U3RyaW5nXSwgW1tyYW5n
ZSBkdW1wXSBVVEY4U3RyaW5nXSwgaW5zZXJ0YWN0aW9uc3RyaW5nW2FjdGlvbl0pOwogICAgIHJl
dHVybiBhY2NlcHRzRWRpdGluZzsKIH0KQEAgLTEwNiwxNCArMTA2LDE0IEBACiAgICAgICAgICJX
ZWJWaWV3SW5zZXJ0QWN0aW9uRHJvcHBlZCIsCiAgICAgfTsKIAotICAgIGlmIChsYXlvdXRUZXN0
Q29udHJvbGxlci0+ZHVtcEVkaXRpbmdDYWxsYmFja3MoKSAmJiAhZG9uZSkKKyAgICBpZiAoIWRv
bmUgJiYgbGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBFZGl0aW5nQ2FsbGJhY2tzKCkpCiAgICAg
ICAgIHByaW50ZigiRURJVElORyBERUxFR0FURTogc2hvdWxkSW5zZXJ0VGV4dDolcyByZXBsYWNp
bmdET01SYW5nZTolcyBnaXZlbkFjdGlvbjolc1xuIiwgW1t0ZXh0IGRlc2NyaXB0aW9uXSBVVEY4
U3RyaW5nXSwgW1tyYW5nZSBkdW1wXSBVVEY4U3RyaW5nXSwgaW5zZXJ0YWN0aW9uc3RyaW5nW2Fj
dGlvbl0pOwogICAgIHJldHVybiBhY2NlcHRzRWRpdGluZzsKIH0KIAogLSAoQk9PTCl3ZWJWaWV3
OihXZWJWaWV3ICopd2ViVmlldyBzaG91bGREZWxldGVET01SYW5nZTooRE9NUmFuZ2UgKilyYW5n
ZQogewotICAgIGlmIChsYXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEVkaXRpbmdDYWxsYmFja3Mo
KSAmJiAhZG9uZSkKKyAgICBpZiAoIWRvbmUgJiYgbGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBF
ZGl0aW5nQ2FsbGJhY2tzKCkpCiAgICAgICAgIHByaW50ZigiRURJVElORyBERUxFR0FURTogc2hv
dWxkRGVsZXRlRE9NUmFuZ2U6JXNcbiIsIFtbcmFuZ2UgZHVtcF0gVVRGOFN0cmluZ10pOwogICAg
IHJldHVybiBhY2NlcHRzRWRpdGluZzsKIH0KQEAgLTEzNCw1MiArMTM0LDUyIEBACiAgICAgICAg
ICJUUlVFIgogICAgIH07CiAKLSAgICBpZiAobGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBFZGl0
aW5nQ2FsbGJhY2tzKCkgJiYgIWRvbmUpCisgICAgaWYgKCFkb25lICYmIGxheW91dFRlc3RDb250
cm9sbGVyLT5kdW1wRWRpdGluZ0NhbGxiYWNrcygpKQogICAgICAgICBwcmludGYoIkVESVRJTkcg
REVMRUdBVEU6IHNob3VsZENoYW5nZVNlbGVjdGVkRE9NUmFuZ2U6JXMgdG9ET01SYW5nZTolcyBh
ZmZpbml0eTolcyBzdGlsbFNlbGVjdGluZzolc1xuIiwgW1tjdXJyZW50UmFuZ2UgZHVtcF0gVVRG
OFN0cmluZ10sIFtbcHJvcG9zZWRSYW5nZSBkdW1wXSBVVEY4U3RyaW5nXSwgYWZmaW5pdHlzdHJp
bmdbc2VsZWN0aW9uQWZmaW5pdHldLCBib29sc3RyaW5nW2ZsYWddKTsKICAgICByZXR1cm4gYWNj
ZXB0c0VkaXRpbmc7CiB9CiAKIC0gKEJPT0wpd2ViVmlldzooV2ViVmlldyAqKXdlYlZpZXcgc2hv
dWxkQXBwbHlTdHlsZTooRE9NQ1NTU3R5bGVEZWNsYXJhdGlvbiAqKXN0eWxlIHRvRWxlbWVudHNJ
bkRPTVJhbmdlOihET01SYW5nZSAqKXJhbmdlCiB7Ci0gICAgaWYgKGxheW91dFRlc3RDb250cm9s
bGVyLT5kdW1wRWRpdGluZ0NhbGxiYWNrcygpICYmICFkb25lKQorICAgIGlmICghZG9uZSAmJiBs
YXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEVkaXRpbmdDYWxsYmFja3MoKSkKICAgICAgICAgcHJp
bnRmKCJFRElUSU5HIERFTEVHQVRFOiBzaG91bGRBcHBseVN0eWxlOiVzIHRvRWxlbWVudHNJbkRP
TVJhbmdlOiVzXG4iLCBbW3N0eWxlIGRlc2NyaXB0aW9uXSBVVEY4U3RyaW5nXSwgW1tyYW5nZSBk
dW1wXSBVVEY4U3RyaW5nXSk7CiAgICAgcmV0dXJuIGFjY2VwdHNFZGl0aW5nOwogfQogCiAtIChC
T09MKXdlYlZpZXc6KFdlYlZpZXcgKil3ZWJWaWV3IHNob3VsZENoYW5nZVR5cGluZ1N0eWxlOihE
T01DU1NTdHlsZURlY2xhcmF0aW9uICopY3VycmVudFN0eWxlIHRvU3R5bGU6KERPTUNTU1N0eWxl
RGVjbGFyYXRpb24gKilwcm9wb3NlZFN0eWxlCiB7Ci0gICAgaWYgKGxheW91dFRlc3RDb250cm9s
bGVyLT5kdW1wRWRpdGluZ0NhbGxiYWNrcygpICYmICFkb25lKQorICAgIGlmICghZG9uZSAmJiBs
YXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEVkaXRpbmdDYWxsYmFja3MoKSkKICAgICAgICAgcHJp
bnRmKCJFRElUSU5HIERFTEVHQVRFOiBzaG91bGRDaGFuZ2VUeXBpbmdTdHlsZTolcyB0b1N0eWxl
OiVzXG4iLCBbW2N1cnJlbnRTdHlsZSBkZXNjcmlwdGlvbl0gVVRGOFN0cmluZ10sIFtbcHJvcG9z
ZWRTdHlsZSBkZXNjcmlwdGlvbl0gVVRGOFN0cmluZ10pOwogICAgIHJldHVybiBhY2NlcHRzRWRp
dGluZzsKIH0KIAogLSAodm9pZCl3ZWJWaWV3RGlkQmVnaW5FZGl0aW5nOihOU05vdGlmaWNhdGlv
biAqKW5vdGlmaWNhdGlvbgogewotICAgIGlmIChsYXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEVk
aXRpbmdDYWxsYmFja3MoKSAmJiAhZG9uZSkKKyAgICBpZiAoIWRvbmUgJiYgbGF5b3V0VGVzdENv
bnRyb2xsZXItPmR1bXBFZGl0aW5nQ2FsbGJhY2tzKCkpCiAgICAgICAgIHByaW50ZigiRURJVElO
RyBERUxFR0FURTogd2ViVmlld0RpZEJlZ2luRWRpdGluZzolc1xuIiwgW1tub3RpZmljYXRpb24g
bmFtZV0gVVRGOFN0cmluZ10pOwogfQogCiAtICh2b2lkKXdlYlZpZXdEaWRDaGFuZ2U6KE5TTm90
aWZpY2F0aW9uICopbm90aWZpY2F0aW9uCiB7Ci0gICAgaWYgKGxheW91dFRlc3RDb250cm9sbGVy
LT5kdW1wRWRpdGluZ0NhbGxiYWNrcygpICYmICFkb25lKQorICAgIGlmICghZG9uZSAmJiBsYXlv
dXRUZXN0Q29udHJvbGxlci0+ZHVtcEVkaXRpbmdDYWxsYmFja3MoKSkKICAgICAgICAgcHJpbnRm
KCJFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlOiVzXG4iLCBbW25vdGlmaWNhdGlv
biBuYW1lXSBVVEY4U3RyaW5nXSk7CiB9CiAKIC0gKHZvaWQpd2ViVmlld0RpZEVuZEVkaXRpbmc6
KE5TTm90aWZpY2F0aW9uICopbm90aWZpY2F0aW9uCiB7Ci0gICAgaWYgKGxheW91dFRlc3RDb250
cm9sbGVyLT5kdW1wRWRpdGluZ0NhbGxiYWNrcygpICYmICFkb25lKQorICAgIGlmICghZG9uZSAm
JiBsYXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEVkaXRpbmdDYWxsYmFja3MoKSkKICAgICAgICAg
cHJpbnRmKCJFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkRW5kRWRpdGluZzolc1xuIiwgW1tu
b3RpZmljYXRpb24gbmFtZV0gVVRGOFN0cmluZ10pOwogfQogCiAtICh2b2lkKXdlYlZpZXdEaWRD
aGFuZ2VUeXBpbmdTdHlsZTooTlNOb3RpZmljYXRpb24gKilub3RpZmljYXRpb24KIHsKLSAgICBp
ZiAobGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBFZGl0aW5nQ2FsbGJhY2tzKCkgJiYgIWRvbmUp
CisgICAgaWYgKCFkb25lICYmIGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRWRpdGluZ0NhbGxi
YWNrcygpKQogICAgICAgICBwcmludGYoIkVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFu
Z2VUeXBpbmdTdHlsZTolc1xuIiwgW1tub3RpZmljYXRpb24gbmFtZV0gVVRGOFN0cmluZ10pOwog
fQogCiAtICh2b2lkKXdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246KE5TTm90aWZpY2F0aW9uICop
bm90aWZpY2F0aW9uCiB7Ci0gICAgaWYgKGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRWRpdGlu
Z0NhbGxiYWNrcygpICYmICFkb25lKQorICAgIGlmICghZG9uZSAmJiBsYXlvdXRUZXN0Q29udHJv
bGxlci0+ZHVtcEVkaXRpbmdDYWxsYmFja3MoKSkKICAgICAgICAgcHJpbnRmKCJFRElUSU5HIERF
TEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOiVzXG4iLCBbW25vdGlmaWNhdGlvbiBu
YW1lXSBVVEY4U3RyaW5nXSk7CiB9CiAKSW5kZXg6IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L21hYy9GcmFtZUxvYWREZWxlZ2F0ZS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9tYWMvRnJhbWVMb2FkRGVsZWdhdGUubW0JKHJldmlzaW9uIDI3NDI0KQorKysg
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0ZyYW1lTG9hZERlbGVnYXRlLm1tCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMzcsNyArMTM3LDcgQEAKIAogLSAodm9pZCl3ZWJWaWV3OihXZWJWaWV3
ICopc2VuZGVyIGRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWU6KFdlYkZyYW1lICopZnJh
bWUKIHsKLSAgICBpZiAobGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBGcmFtZUxvYWRDYWxsYmFj
a3MoKSAmJiAhZG9uZSkgeworICAgIGlmICghZG9uZSAmJiBsYXlvdXRUZXN0Q29udHJvbGxlci0+
ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygpKSB7CiAgICAgICAgIE5TU3RyaW5nICpzdHJpbmcgPSBb
TlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIiVAIC0gZGlkU3RhcnRQcm92aXNpb25hbExvYWRG
b3JGcmFtZSIsIFtmcmFtZSBfZHJ0X2Rlc2NyaXB0aW9uU3VpdGFibGVGb3JUZXN0UmVzdWx0XV07
CiAgICAgICAgIHByaW50ZiAoIiVzXG4iLCBbc3RyaW5nIFVURjhTdHJpbmddKTsKICAgICB9CkBA
IC0xNTEsNyArMTUxLDcgQEAKIAogLSAodm9pZCl3ZWJWaWV3OihXZWJWaWV3ICopc2VuZGVyIGRp
ZENvbW1pdExvYWRGb3JGcmFtZTooV2ViRnJhbWUgKilmcmFtZQogewotICAgIGlmIChsYXlvdXRU
ZXN0Q29udHJvbGxlci0+ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygpICYmICFkb25lKSB7CisgICAg
aWYgKCFkb25lICYmIGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRnJhbWVMb2FkQ2FsbGJhY2tz
KCkpIHsKICAgICAgICAgTlNTdHJpbmcgKnN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9y
bWF0OkAiJUAgLSBkaWRDb21taXRMb2FkRm9yRnJhbWUiLCBbZnJhbWUgX2RydF9kZXNjcmlwdGlv
blN1aXRhYmxlRm9yVGVzdFJlc3VsdF1dOwogICAgICAgICBwcmludGYgKCIlc1xuIiwgW3N0cmlu
ZyBVVEY4U3RyaW5nXSk7CiAgICAgfQpAQCAtMTY4LDcgKzE2OCw3IEBACiAKIC0gKHZvaWQpd2Vi
VmlldzooV2ViVmlldyAqKXNlbmRlciBkaWRGYWlsUHJvdmlzaW9uYWxMb2FkV2l0aEVycm9yOihO
U0Vycm9yICopZXJyb3IgZm9yRnJhbWU6KFdlYkZyYW1lICopZnJhbWUKIHsKLSAgICBpZiAobGF5
b3V0VGVzdENvbnRyb2xsZXItPmR1bXBGcmFtZUxvYWRDYWxsYmFja3MoKSAmJiAhZG9uZSkgewor
ICAgIGlmICghZG9uZSAmJiBsYXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEZyYW1lTG9hZENhbGxi
YWNrcygpKSB7CiAgICAgICAgIE5TU3RyaW5nICpzdHJpbmcgPSBbTlNTdHJpbmcgc3RyaW5nV2l0
aEZvcm1hdDpAIiVAIC0gZGlkRmFpbFByb3Zpc2lvbmFsTG9hZFdpdGhFcnJvciIsIFtmcmFtZSBf
ZHJ0X2Rlc2NyaXB0aW9uU3VpdGFibGVGb3JUZXN0UmVzdWx0XV07CiAgICAgICAgIHByaW50ZiAo
IiVzXG4iLCBbc3RyaW5nIFVURjhTdHJpbmddKTsKICAgICB9CkBAIC0xODksNyArMTg5LDcgQEAK
ICAgICBBU1NFUlQoW2ZyYW1lIGRhdGFTb3VyY2VdKTsKICAgICBBU1NFUlQoZnJhbWUgPT0gW1tm
cmFtZSBkYXRhU291cmNlXSB3ZWJGcmFtZV0pOwogICAgIAotICAgIGlmIChsYXlvdXRUZXN0Q29u
dHJvbGxlci0+ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygpICYmICFkb25lKSB7CisgICAgaWYgKCFk
b25lICYmIGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRnJhbWVMb2FkQ2FsbGJhY2tzKCkpIHsK
ICAgICAgICAgTlNTdHJpbmcgKnN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAi
JUAgLSBkaWRGaW5pc2hMb2FkRm9yRnJhbWUiLCBbZnJhbWUgX2RydF9kZXNjcmlwdGlvblN1aXRh
YmxlRm9yVGVzdFJlc3VsdF1dOwogICAgICAgICBwcmludGYgKCIlc1xuIiwgW3N0cmluZyBVVEY4
U3RyaW5nXSk7CiAgICAgfQpAQCAtMjA1LDcgKzIwNSw3IEBACiAKIC0gKHZvaWQpd2ViVmlldzoo
V2ViVmlldyAqKXNlbmRlciBkaWRGYWlsTG9hZFdpdGhFcnJvcjooTlNFcnJvciAqKWVycm9yIGZv
ckZyYW1lOihXZWJGcmFtZSAqKWZyYW1lOwogewotICAgIGlmIChsYXlvdXRUZXN0Q29udHJvbGxl
ci0+ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygpICYmICFkb25lKSB7CisgICAgaWYgKCFkb25lICYm
IGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRnJhbWVMb2FkQ2FsbGJhY2tzKCkpIHsKICAgICAg
ICAgTlNTdHJpbmcgKnN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiJUAgLSBk
aWRGYWlsTG9hZFdpdGhFcnJvciIsIFtmcmFtZSBfZHJ0X2Rlc2NyaXB0aW9uU3VpdGFibGVGb3JU
ZXN0UmVzdWx0XV07CiAgICAgICAgIHByaW50ZiAoIiVzXG4iLCBbc3RyaW5nIFVURjhTdHJpbmdd
KTsKICAgICB9CkBAIC0yMTgsNyArMjE4LDcgQEAKIAogLSAodm9pZCl3ZWJWaWV3OihXZWJWaWV3
ICopd2ViVmlldyB3aW5kb3dTY3JpcHRPYmplY3RBdmFpbGFibGU6KFdlYlNjcmlwdE9iamVjdCAq
KXdpbmRvd1NjcmlwdE9iamVjdDsKIHsKLSAgICBpZiAobGF5b3V0VGVzdENvbnRyb2xsZXItPmR1
bXBGcmFtZUxvYWRDYWxsYmFja3MoKSAmJiAhZG9uZSkgeworICAgIGlmICghZG9uZSAmJiBsYXlv
dXRUZXN0Q29udHJvbGxlci0+ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygpKSB7CiAgICAgICAgIE5T
U3RyaW5nICpzdHJpbmcgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIj8/IC0gd2luZG93
U2NyaXB0T2JqZWN0QXZhaWxhYmxlIl07CiAgICAgICAgIHByaW50ZiAoIiVzXG4iLCBbc3RyaW5n
IFVURjhTdHJpbmddKTsKICAgICB9CkBAIC0yMjgsNyArMjI4LDcgQEAKIAogLSAodm9pZCl3ZWJW
aWV3OihXZWJWaWV3ICopc2VuZGVyIGRpZENsZWFyV2luZG93T2JqZWN0OihXZWJTY3JpcHRPYmpl
Y3QgKilvYmogZm9yRnJhbWU6KFdlYkZyYW1lICopZnJhbWUKIHsKLSAgICBpZiAobGF5b3V0VGVz
dENvbnRyb2xsZXItPmR1bXBGcmFtZUxvYWRDYWxsYmFja3MoKSAmJiAhZG9uZSkgeworICAgIGlm
ICghZG9uZSAmJiBsYXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygp
KSB7CiAgICAgICAgIE5TU3RyaW5nICpzdHJpbmcgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1h
dDpAIiVAIC0gZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZSIsIFtmcmFtZSBfZHJ0X2Rlc2Ny
aXB0aW9uU3VpdGFibGVGb3JUZXN0UmVzdWx0XV07CiAgICAgICAgIHByaW50ZiAoIiVzXG4iLCBb
c3RyaW5nIFVURjhTdHJpbmddKTsKICAgICB9CkBAIC0yNzgsNyArMjc4LDcgQEAKIAogLSAodm9p
ZCl3ZWJWaWV3OihXZWJWaWV3ICopc2VuZGVyIGRpZFJlY2VpdmVUaXRsZTooTlNTdHJpbmcgKil0
aXRsZSBmb3JGcmFtZTooV2ViRnJhbWUgKilmcmFtZQogewotICAgIGlmIChsYXlvdXRUZXN0Q29u
dHJvbGxlci0+ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygpICYmICFkb25lKSB7CisgICAgaWYgKCFk
b25lICYmIGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRnJhbWVMb2FkQ2FsbGJhY2tzKCkpIHsK
ICAgICAgICAgTlNTdHJpbmcgKnN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAi
JUAgLSBkaWRSZWNlaXZlVGl0bGU6ICVAIiwgW2ZyYW1lIF9kcnRfZGVzY3JpcHRpb25TdWl0YWJs
ZUZvclRlc3RSZXN1bHRdLCB0aXRsZV07CiAgICAgICAgIHByaW50ZiAoIiVzXG4iLCBbc3RyaW5n
IFVURjhTdHJpbmddKTsKICAgICB9CkBAIC0yODksNyArMjg5LDcgQEAKIAogLSAodm9pZCl3ZWJW
aWV3OihXZWJWaWV3ICopc2VuZGVyIGRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lv
bmFsTG9hZEZvckZyYW1lOihXZWJGcmFtZSAqKWZyYW1lCiB7Ci0gICAgaWYgKGxheW91dFRlc3RD
b250cm9sbGVyLT5kdW1wRnJhbWVMb2FkQ2FsbGJhY2tzKCkgJiYgIWRvbmUpIHsKKyAgICBpZiAo
IWRvbmUgJiYgbGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBGcmFtZUxvYWRDYWxsYmFja3MoKSkg
ewogICAgICAgICBOU1N0cmluZyAqc3RyaW5nID0gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6
QCIlQCAtIGRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZEZvckZyYW1l
IiwgW2ZyYW1lIF9kcnRfZGVzY3JpcHRpb25TdWl0YWJsZUZvclRlc3RSZXN1bHRdXTsKICAgICAg
ICAgcHJpbnRmICgiJXNcbiIsIFtzdHJpbmcgVVRGOFN0cmluZ10pOwogICAgIH0KQEAgLTI5Nyw3
ICsyOTcsNyBAQAogCiAtICh2b2lkKXdlYlZpZXc6KFdlYlZpZXcgKilzZW5kZXIgZGlkUmVjZWl2
ZUljb246KE5TSW1hZ2UgKilpbWFnZSBmb3JGcmFtZTooV2ViRnJhbWUgKilmcmFtZQogewotICAg
IGlmIChsYXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygpICYmICFk
b25lKSB7CisgICAgaWYgKCFkb25lICYmIGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRnJhbWVM
b2FkQ2FsbGJhY2tzKCkpIHsKICAgICAgICAgTlNTdHJpbmcgKnN0cmluZyA9IFtOU1N0cmluZyBz
dHJpbmdXaXRoRm9ybWF0OkAiJUAgLSBkaWRSZWNlaXZlSWNvbkZvckZyYW1lIiwgW2ZyYW1lIF9k
cnRfZGVzY3JpcHRpb25TdWl0YWJsZUZvclRlc3RSZXN1bHRdXTsKICAgICAgICAgcHJpbnRmICgi
JXNcbiIsIFtzdHJpbmcgVVRGOFN0cmluZ10pOwogICAgIH0KQEAgLTMwNSw3ICszMDUsNyBAQAog
CiAtICh2b2lkKXdlYlZpZXc6KFdlYlZpZXcgKilzZW5kZXIgZGlkQ2hhbmdlTG9jYXRpb25XaXRo
aW5QYWdlRm9yRnJhbWU6KFdlYkZyYW1lICopZnJhbWUKIHsKLSAgICBpZiAobGF5b3V0VGVzdENv
bnRyb2xsZXItPmR1bXBGcmFtZUxvYWRDYWxsYmFja3MoKSAmJiAhZG9uZSkgeworICAgIGlmICgh
ZG9uZSAmJiBsYXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygpKSB7
CiAgICAgICAgIE5TU3RyaW5nICpzdHJpbmcgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpA
IiVAIC0gZGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlRm9yRnJhbWUiLCBbZnJhbWUgX2RydF9k
ZXNjcmlwdGlvblN1aXRhYmxlRm9yVGVzdFJlc3VsdF1dOwogICAgICAgICBwcmludGYgKCIlc1xu
IiwgW3N0cmluZyBVVEY4U3RyaW5nXSk7CiAgICAgfQpAQCAtMzEzLDcgKzMxMyw3IEBACiAKIC0g
KHZvaWQpd2ViVmlldzooV2ViVmlldyAqKXNlbmRlciB3aWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0
VG9VUkw6KE5TVVJMICopVVJMIGRlbGF5OihOU1RpbWVJbnRlcnZhbClzZWNvbmRzIGZpcmVEYXRl
OihOU0RhdGUgKilkYXRlIGZvckZyYW1lOihXZWJGcmFtZSAqKWZyYW1lCiB7Ci0gICAgaWYgKGxh
eW91dFRlc3RDb250cm9sbGVyLT5kdW1wRnJhbWVMb2FkQ2FsbGJhY2tzKCkgJiYgIWRvbmUpIHsK
KyAgICBpZiAoIWRvbmUgJiYgbGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBGcmFtZUxvYWRDYWxs
YmFja3MoKSkgewogICAgICAgICBOU1N0cmluZyAqc3RyaW5nID0gW05TU3RyaW5nIHN0cmluZ1dp
dGhGb3JtYXQ6QCIlQCAtIHdpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3RUb1VSTDogJUAgIiwgW2Zy
YW1lIF9kcnRfZGVzY3JpcHRpb25TdWl0YWJsZUZvclRlc3RSZXN1bHRdLCBbVVJMIF9kcnRfZGVz
Y3JpcHRpb25TdWl0YWJsZUZvclRlc3RSZXN1bHRdXTsKICAgICAgICAgcHJpbnRmICgiJXNcbiIs
IFtzdHJpbmcgVVRGOFN0cmluZ10pOwogICAgIH0KQEAgLTMyMSw3ICszMjEsNyBAQAogCiAtICh2
b2lkKXdlYlZpZXc6KFdlYlZpZXcgKilzZW5kZXIgZGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3RGb3JG
cmFtZTooV2ViRnJhbWUgKilmcmFtZQogewotICAgIGlmIChsYXlvdXRUZXN0Q29udHJvbGxlci0+
ZHVtcEZyYW1lTG9hZENhbGxiYWNrcygpICYmICFkb25lKSB7CisgICAgaWYgKCFkb25lICYmIGxh
eW91dFRlc3RDb250cm9sbGVyLT5kdW1wRnJhbWVMb2FkQ2FsbGJhY2tzKCkpIHsKICAgICAgICAg
TlNTdHJpbmcgKnN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiJUAgLSBkaWRD
YW5jZWxDbGllbnRSZWRpcmVjdEZvckZyYW1lIiwgW2ZyYW1lIF9kcnRfZGVzY3JpcHRpb25TdWl0
YWJsZUZvclRlc3RSZXN1bHRdXTsKICAgICAgICAgcHJpbnRmICgiJXNcbiIsIFtzdHJpbmcgVVRG
OFN0cmluZ10pOwogICAgIH0KQEAgLTMyOSw3ICszMjksNyBAQAogCiAtICh2b2lkKXdlYlZpZXc6
KFdlYlZpZXcgKilzZW5kZXIgd2lsbENsb3NlRnJhbWU6KFdlYkZyYW1lICopZnJhbWU7CiB7Ci0g
ICAgaWYgKGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRnJhbWVMb2FkQ2FsbGJhY2tzKCkgJiYg
IWRvbmUpIHsKKyAgICBpZiAoIWRvbmUgJiYgbGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBGcmFt
ZUxvYWRDYWxsYmFja3MoKSkgewogICAgICAgICBOU1N0cmluZyAqc3RyaW5nID0gW05TU3RyaW5n
IHN0cmluZ1dpdGhGb3JtYXQ6QCIlQCAtIHdpbGxDbG9zZUZyYW1lIiwgW2ZyYW1lIF9kcnRfZGVz
Y3JpcHRpb25TdWl0YWJsZUZvclRlc3RSZXN1bHRdXTsKICAgICAgICAgcHJpbnRmICgiJXNcbiIs
IFtzdHJpbmcgVVRGOFN0cmluZ10pOwogICAgIH0KQEAgLTMzNyw3ICszMzcsNyBAQAogCiAtICh2
b2lkKXdlYlZpZXc6KFdlYlZpZXcgKilzZW5kZXIgZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yRnJh
bWU6KFdlYkZyYW1lICopZnJhbWU7CiB7Ci0gICAgaWYgKGxheW91dFRlc3RDb250cm9sbGVyLT5k
dW1wRnJhbWVMb2FkQ2FsbGJhY2tzKCkgJiYgIWRvbmUpIHsKKyAgICBpZiAoIWRvbmUgJiYgbGF5
b3V0VGVzdENvbnRyb2xsZXItPmR1bXBGcmFtZUxvYWRDYWxsYmFja3MoKSkgewogICAgICAgICBO
U1N0cmluZyAqc3RyaW5nID0gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCIlQCAtIGRpZEZp
bmlzaERvY3VtZW50TG9hZEZvckZyYW1lIiwgW2ZyYW1lIF9kcnRfZGVzY3JpcHRpb25TdWl0YWJs
ZUZvclRlc3RSZXN1bHRdXTsKICAgICAgICAgcHJpbnRmICgiJXNcbiIsIFtzdHJpbmcgVVRGOFN0
cmluZ10pOwogICAgIH0KQEAgLTM0NSw3ICszNDUsNyBAQAogCiAtICh2b2lkKXdlYlZpZXc6KFdl
YlZpZXcgKilzZW5kZXIgZGlkSGFuZGxlT25sb2FkRXZlbnRzRm9yRnJhbWU6KFdlYkZyYW1lICop
ZnJhbWU7CiB7Ci0gICAgaWYgKGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wRnJhbWVMb2FkQ2Fs
bGJhY2tzKCkgJiYgIWRvbmUpIHsKKyAgICBpZiAoIWRvbmUgJiYgbGF5b3V0VGVzdENvbnRyb2xs
ZXItPmR1bXBGcmFtZUxvYWRDYWxsYmFja3MoKSkgewogICAgICAgICBOU1N0cmluZyAqc3RyaW5n
ID0gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCIlQCAtIGRpZEhhbmRsZU9ubG9hZEV2ZW50
c0ZvckZyYW1lIiwgW2ZyYW1lIF9kcnRfZGVzY3JpcHRpb25TdWl0YWJsZUZvclRlc3RSZXN1bHRd
XTsKICAgICAgICAgcHJpbnRmICgiJXNcbiIsIFtzdHJpbmcgVVRGOFN0cmluZ10pOwogICAgIH0K
SW5kZXg6IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9SZXNvdXJjZUxvYWREZWxlZ2F0
ZS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvUmVzb3Vy
Y2VMb2FkRGVsZWdhdGUubW0JKHJldmlzaW9uIDI3NDI0KQorKysgV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvbWFjL1Jlc291cmNlTG9hZERlbGVnYXRlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0x
MDQsNyArMTA0LDcgQEAKIAogLSB3ZWJWaWV3OiAoV2ViVmlldyAqKXd2IGlkZW50aWZpZXJGb3JJ
bml0aWFsUmVxdWVzdDogKE5TVVJMUmVxdWVzdCAqKXJlcXVlc3QgZnJvbURhdGFTb3VyY2U6IChX
ZWJEYXRhU291cmNlICopZGF0YVNvdXJjZQogewotICAgIGlmIChsYXlvdXRUZXN0Q29udHJvbGxl
ci0+ZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcygpICYmICFkb25lKQorICAgIGlmICghZG9uZSAm
JiBsYXlvdXRUZXN0Q29udHJvbGxlci0+ZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcygpKQogICAg
ICAgICByZXR1cm4gW1tyZXF1ZXN0IFVSTF0gX2RydF9kZXNjcmlwdGlvblN1aXRhYmxlRm9yVGVz
dFJlc3VsdF07CiAgICAgCiAgICAgcmV0dXJuIEAiPHVua25vd24+IjsKQEAgLTExMiw3ICsxMTIs
NyBAQAogCiAtKE5TVVJMUmVxdWVzdCAqKXdlYlZpZXc6IChXZWJWaWV3ICopd3YgcmVzb3VyY2U6
aWRlbnRpZmllciB3aWxsU2VuZFJlcXVlc3Q6IChOU1VSTFJlcXVlc3QgKiluZXdSZXF1ZXN0IHJl
ZGlyZWN0UmVzcG9uc2U6KE5TVVJMUmVzcG9uc2UgKilyZWRpcmVjdFJlc3BvbnNlIGZyb21EYXRh
U291cmNlOihXZWJEYXRhU291cmNlICopZGF0YVNvdXJjZQogewotICAgIGlmIChsYXlvdXRUZXN0
Q29udHJvbGxlci0+ZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcygpICYmICFkb25lKSB7CisgICAg
aWYgKCFkb25lICYmIGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wUmVzb3VyY2VMb2FkQ2FsbGJh
Y2tzKCkpIHsKICAgICAgICAgTlNTdHJpbmcgKnN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRo
Rm9ybWF0OkAiJUAgLSB3aWxsU2VuZFJlcXVlc3QgJUAgcmVkaXJlY3RSZXNwb25zZSAlQCIsIGlk
ZW50aWZpZXIsIFtuZXdSZXF1ZXN0IF9kcnRfZGVzY3JpcHRpb25TdWl0YWJsZUZvclRlc3RSZXN1
bHRdLAogICAgICAgICAgICAgW3JlZGlyZWN0UmVzcG9uc2UgX2RydF9kZXNjcmlwdGlvblN1aXRh
YmxlRm9yVGVzdFJlc3VsdF1dOwogICAgICAgICBwcmludGYgKCIlc1xuIiwgW3N0cmluZyBVVEY4
U3RyaW5nXSk7CkBAIC0xMzQsNyArMTM0LDcgQEAKIAogLSh2b2lkKXdlYlZpZXc6IChXZWJWaWV3
ICopd3YgcmVzb3VyY2U6aWRlbnRpZmllciBkaWRSZWNlaXZlUmVzcG9uc2U6IChOU1VSTFJlc3Bv
bnNlICopcmVzcG9uc2UgZnJvbURhdGFTb3VyY2U6KFdlYkRhdGFTb3VyY2UgKilkYXRhU291cmNl
CiB7Ci0gICAgaWYgKGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wUmVzb3VyY2VMb2FkQ2FsbGJh
Y2tzKCkgJiYgIWRvbmUpIHsKKyAgICBpZiAoIWRvbmUgJiYgbGF5b3V0VGVzdENvbnRyb2xsZXIt
PmR1bXBSZXNvdXJjZUxvYWRDYWxsYmFja3MoKSkgewogICAgICAgICBOU1N0cmluZyAqc3RyaW5n
ID0gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCIlQCAtIGRpZFJlY2VpdmVSZXNwb25zZSAl
QCIsIGlkZW50aWZpZXIsIFtyZXNwb25zZSBfZHJ0X2Rlc2NyaXB0aW9uU3VpdGFibGVGb3JUZXN0
UmVzdWx0XV07CiAgICAgICAgIHByaW50ZiAoIiVzXG4iLCBbc3RyaW5nIFVURjhTdHJpbmddKTsK
ICAgICB9ICAgIApAQCAtMTQ2LDcgKzE0Niw3IEBACiAKIC0odm9pZCl3ZWJWaWV3OiAoV2ViVmll
dyAqKXd2IHJlc291cmNlOmlkZW50aWZpZXIgZGlkRmluaXNoTG9hZGluZ0Zyb21EYXRhU291cmNl
OihXZWJEYXRhU291cmNlICopZGF0YVNvdXJjZQogewotICAgIGlmIChsYXlvdXRUZXN0Q29udHJv
bGxlci0+ZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcygpICYmICFkb25lKSB7CisgICAgaWYgKCFk
b25lICYmIGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wUmVzb3VyY2VMb2FkQ2FsbGJhY2tzKCkp
IHsKICAgICAgICAgTlNTdHJpbmcgKnN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0
OkAiJUAgLSBkaWRGaW5pc2hMb2FkaW5nIiwgaWRlbnRpZmllcl07CiAgICAgICAgIHByaW50ZiAo
IiVzXG4iLCBbc3RyaW5nIFVURjhTdHJpbmddKTsKICAgICB9CkBAIC0xNTQsNyArMTU0LDcgQEAK
IAogLSh2b2lkKXdlYlZpZXc6IChXZWJWaWV3ICopd3YgcmVzb3VyY2U6aWRlbnRpZmllciBkaWRG
YWlsTG9hZGluZ1dpdGhFcnJvcjooTlNFcnJvciAqKWVycm9yIGZyb21EYXRhU291cmNlOihXZWJE
YXRhU291cmNlICopZGF0YVNvdXJjZQogewotICAgIGlmIChsYXlvdXRUZXN0Q29udHJvbGxlci0+
ZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcygpICYmICFkb25lKSB7CisgICAgaWYgKCFkb25lICYm
IGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wUmVzb3VyY2VMb2FkQ2FsbGJhY2tzKCkpIHsKICAg
ICAgICAgTlNTdHJpbmcgKnN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiJUAg
LSBkaWRGYWlsTG9hZGluZ1dpdGhFcnJvcjogJUAiLCBpZGVudGlmaWVyLCBbZXJyb3IgX2RydF9k
ZXNjcmlwdGlvblN1aXRhYmxlRm9yVGVzdFJlc3VsdF1dOwogICAgICAgICBwcmludGYgKCIlc1xu
IiwgW3N0cmluZyBVVEY4U3RyaW5nXSk7CiAgICAgfQpAQCAtMTY2LDcgKzE2Niw3IEBACiAKIC0o
TlNDYWNoZWRVUkxSZXNwb25zZSAqKSB3ZWJWaWV3OiAoV2ViVmlldyAqKXd2IHJlc291cmNlOihp
ZClpZGVudGlmaWVyIHdpbGxDYWNoZVJlc3BvbnNlOihOU0NhY2hlZFVSTFJlc3BvbnNlICopcmVz
cG9uc2UgZnJvbURhdGFTb3VyY2U6KFdlYkRhdGFTb3VyY2UgKilkYXRhU291cmNlCiB7Ci0gICAg
aWYgKGxheW91dFRlc3RDb250cm9sbGVyLT5kdW1wUmVzb3VyY2VMb2FkQ2FsbGJhY2tzKCkgJiYg
IWRvbmUpIHsKKyAgICBpZiAoIWRvbmUgJiYgbGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBSZXNv
dXJjZUxvYWRDYWxsYmFja3MoKSkgewogICAgICAgICBOU1N0cmluZyAqc3RyaW5nID0gW05TU3Ry
aW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCIlQCAtIHdpbGxDYWNoZVJlc3BvbnNlOiBjYWxsZWQiLCBp
ZGVudGlmaWVyXTsKICAgICAgICAgcHJpbnRmICgiJXNcbiIsIFtzdHJpbmcgVVRGOFN0cmluZ10p
OwogICAgIH0K
</data>
<flag name="review"
          id="7243"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>