<?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>197314</bug_id>
          
          <creation_ts>2019-04-26 09:49:51 -0700</creation_ts>
          <short_desc>WebKitTestRunner leaks an NSDictionary and multiple JSStringRef objects</short_desc>
          <delta_ts>2019-04-26 11:32:58 -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>Tools / Tests</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="David Kilzer (:ddkilzer)">ddkilzer</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>joepeck</cc>
    
    <cc>lforschler</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1530711</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2019-04-26 09:49:51 -0700</bug_when>
    <thetext>WebKitTestRunner leaks an NSDictionary and multiple JSStringRef objects.

Examples:

STACK OF 1 INSTANCE OF &apos;ROOT LEAK: &lt;NSDictionary&gt;&apos;:
[thread 0x11725ae3c]:
48  WebKitTestRunnerApp                   0x10ca9991e main + 97  mainIOS.mm:72
47  com.apple.UIKitCore                   0x11e24778c UIApplicationMain + 1621
46  com.apple.GraphicsServices            0x110a279f8 GSEventRunModal + 65
45  com.apple.CoreFoundation              0x110dd7296 CFRunLoopRunSpecific + 438
44  com.apple.CoreFoundation              0x110dd7aaf __CFRunLoopRun + 1263
43  com.apple.CoreFoundation              0x110ddcdec __CFRunLoopDoSources0 + 268
42  com.apple.CoreFoundation              0x110ddd5c1 __CFRunLoopDoSource0 + 81
41  com.apple.CoreFoundation              0x110ddd631 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
40  com.apple.Foundation                  0x1104f1fd8 __NSThreadPerformPerform + 259
39  WebKitTestRunnerApp                   0x10ca99828 -[WebKitTestRunnerApp _runTestController] + 40  mainIOS.mm:45
38  WebKitTestRunnerApp                   0x10caa2579 WTR::TestController::TestController(int, char const**) + 395  TestController.cpp:163
37  WebKitTestRunnerApp                   0x10caa9130 WTR::TestController::runTestingServerLoop() + 132  TestController.cpp:1686
36  WebKitTestRunnerApp                   0x10caa8d4b WTR::TestController::runTest(char const*) + 1933  memory:2610
35  WebKitTestRunnerApp                   0x10cab7a78 WTR::TestInvocation::invoke() + 306  TestInvocation.cpp:185
34  WebKitTestRunnerApp                   0x10cab62bb WTR::TestController::platformRunUntil(bool&amp;, WTF::Seconds) + 183  TestControllerCocoa.mm:0
33  com.apple.Foundation                  0x1104dc7c8 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 211
32  com.apple.CoreFoundation              0x110dd7296 CFRunLoopRunSpecific + 438
31  com.apple.CoreFoundation              0x110dd7aaf __CFRunLoopRun + 1263
30  com.apple.CoreFoundation              0x110ddcd94 __CFRunLoopDoSources0 + 180
29  com.apple.CoreFoundation              0x110ddd5c1 __CFRunLoopDoSource0 + 81
28  com.apple.CoreFoundation              0x110ddd631 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
27  JavaScriptCore                        0x10cdeb902 WTF::RunLoop::performWork(void*) + 34  RunLoopCF.cpp:39
26  JavaScriptCore                        0x10cdeb674 WTF::RunLoop::performWork() + 228  Function.h:0
25  com.apple.WebKit                      0x10f0c619b IPC::Connection::dispatchIncomingMessages() + 375  Connection.cpp:0
24  com.apple.WebKit                      0x10f0c3758 IPC::Connection::dispatchMessage(std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;) + 108  memory:2621
23  com.apple.WebKit                      0x10f30812c WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) + 24  WebProcessProxy.cpp:619
22  com.apple.WebKit                      0x10f0d7b2e IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&amp;, IPC::Decoder&amp;) + 114  MessageReceiverMap.cpp:0
21  com.apple.WebKit                      0x10f1124c1 void IPC::handleMessage&lt;Messages::RemoteLayerTreeDrawingAreaProxy::CommitLayerTree, WebKit::RemoteLayerTreeDrawingAreaProxy, void (WebKit::RemoteLayerTreeDrawingAreaProxy::*)(WebKit::RemoteLayerTreeTransaction const&amp;, WebKit::RemoteScrollingCoordinatorTransaction const&amp;)&gt;(IPC::Decoder&amp;, WebKit::RemoteLayerTreeDrawingAreaProxy*, void (WebKit::RemoteLayerTreeDrawingAreaProxy::*)(WebKit::RemoteLayerTreeTransaction const&amp;, WebKit::RemoteScrollingCoordinatorTransaction const&amp;)) + 94  HandleMessage.h:0
20  com.apple.WebKit                      0x10f2b8e2e WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree(WebKit::RemoteLayerTreeTransaction const&amp;, WebKit::RemoteScrollingCoordinatorTransaction const&amp;) + 624  utility:925
19  com.apple.WebKit                      0x10f2b9d68 WebKit::GenericCallback&lt;&gt;::performCallbackWithReturnValue() + 40  memory:2651
18  WebKitTestRunnerApp                   0x10cab9a8f WTR::TestInvocation::runUISideScriptAfterUpdateCallback(OpaqueWKError const*, void*) + 43  WKRetainPtr.h:80
17  WebKitTestRunnerApp                   0x10cabb673 WTR::TestInvocation::runUISideScript(OpaqueWKString const*, unsigned int) + 185  utility:925
16  WebKitTestRunnerApp                   0x10cabdeb6 WTR::UIScriptContext::runUIScript(WTF::String const&amp;, unsigned int) + 116  HashTable.h:399
15  JavaScriptCore                        0x10cfbba43 JSEvaluateScript + 675  NakedPtr.h:53
14  JavaScriptCore                        0x10d5d26cb JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;) + 299  Completion.cpp:141
13  JavaScriptCore                        0x10d35ceb1 JSC::Interpreter::executeProgram(JSC::SourceCode const&amp;, JSC::ExecState*, JSC::JSObject*) + 11361  JITCodeInlines.h:39
12  JavaScriptCore                        0x10cf7b599 vmEntryToJavaScript + 200  LowLevelInterpreter64.asm:293
11  JavaScriptCore                        0x10cf8a9c7 llint_entry + 62084  LowLevelInterpreter.asm:885
10  JavaScriptCore                        0x10cf8a9c7 llint_entry + 62084  LowLevelInterpreter.asm:885
9                                      0x33b691201027 0x33b691201000 + 39
8   JavaScriptCore                        0x10cfbc689 long long JSC::APICallbackFunction::call&lt;JSC::JSCallbackFunction&gt;(JSC::ExecState*) + 489  APICallbackFunction.h:63
7   WebKitTestRunnerApp                   0x10ca9e291 WTR::JSUIScriptController::sendEventStream(OpaqueJSContext const*, OpaqueJSValue*, OpaqueJSValue*, unsigned long, OpaqueJSValue const* const*, OpaqueJSValue const**) + 121  JSUIScriptController.cpp:501
6   WebKitTestRunnerApp                   0x10cac18bf WTR::UIScriptController::sendEventStream(OpaqueJSString*, OpaqueJSValue const*) + 857  UIScriptControllerIOS.mm:0
5   WebKitTestRunnerApp                   0x10ca99527 -[HIDEventGenerator sendEventStream:completionBlock:] + 84  HIDEventGenerator.mm:0
4   com.apple.CoreFoundation              0x110edae90 -[__NSDictionaryM copy] + 96
3   com.apple.CoreFoundation              0x110e74587 +[NSDictionary _alloc] + 55
2   libobjc.A.dylib                       0x110c51692 _objc_rootAllocWithZone + 37
1   libsystem_malloc.dylib                0x1174ce928 calloc + 24
0   libsystem_malloc.dylib                0x1174ce279 malloc_zone_calloc + 139 
====
    43 (1.75K) ROOT LEAK: &lt;NSDictionary 0x600002471360&gt; [32]
       41 (1.70K) &lt;NSDictionary (Storage) 0x600002a1c600&gt; [48]
          40 (1.66K) &lt;NSMutableArray 0x600002a1c570&gt; [48]
             39 (1.61K) &lt;NSMutableArray (Storage) 0x6000026d56b0&gt; [16]
                31 (1.28K) &lt;NSMutableDictionary 0x600002472b00&gt; [32]
                   30 (1.25K) &lt;NSMutableDictionary (Storage) 0x600000fb8230&gt; [112]
                      16 (624 bytes) &lt;NSMutableDictionary 0x600002471560&gt; [32]
                         14 (576 bytes) &lt;NSMutableDictionary (Storage) 0x600002a1cb40&gt; [48]
                            9 (384 bytes) &lt;NSMutableArray 0x600002a1c1b0&gt; [48]
                               8 (336 bytes) &lt;NSMutableArray (Storage) 0x6000026d5170&gt; [16]
                                  7 (320 bytes) &lt;NSMutableDictionary 0x600002470800&gt; [32]
                                     5 (272 bytes) &lt;NSMutableDictionary (Storage) 0x600000fb85b0&gt; [112]
                                        2 (80 bytes) &lt;CFString 0x600002a1c300&gt; [48]
                                           1 (32 bytes) &lt;CFString (Storage) 0x600002470e00&gt; [32]
                                        2 (80 bytes) &lt;CFString 0x600002a1c660&gt; [48]
                                           1 (32 bytes) &lt;CFString (Storage) 0x6000024707e0&gt; [32]
                                     1 (16 bytes) cow --&gt; &lt;NSMutableDictionary.cow (struct __cow_state_t) 0x6000026dd610&gt; [16]
                            2 (80 bytes) &lt;CFString 0x600002a1f2a0&gt; [48]
                               1 (32 bytes) &lt;CFString (Storage) 0x600002473280&gt; [32]
                            1 (32 bytes) &lt;CFString 0x600002472a40&gt; [32]
                            1 (32 bytes) &lt;NSNumber 0x600002473520&gt; [32]
                         1 (16 bytes) cow --&gt; &lt;NSMutableDictionary.cow (struct __cow_state_t) 0x6000026dd990&gt; [16]
                      11 (480 bytes) &lt;NSMutableDictionary 0x600002470ce0&gt; [32]
                         10 (448 bytes) &lt;NSMutableDictionary (Storage) 0x600002a1c5d0&gt; [48]
                            6 (288 bytes) &lt;NSMutableArray 0x600002a1c750&gt; [48]
                               5 (240 bytes) &lt;NSMutableArray (Storage) 0x6000026d58f0&gt; [16]
                                  4 (224 bytes) &lt;NSMutableDictionary 0x600002471ea0&gt; [32]
                                     3 (192 bytes) &lt;NSMutableDictionary (Storage) 0x600000fb8620&gt; [112]
                                        2 (80 bytes) &lt;CFString 0x600002a1f210&gt; [48]
                                           1 (32 bytes) &lt;CFString (Storage) 0x600002473560&gt; [32]
                            2 (80 bytes) &lt;CFString 0x600002a1c3f0&gt; [48]
                               1 (32 bytes) &lt;CFString (Storage) 0x600002470fa0&gt; [32]
                            1 (32 bytes) &lt;CFString 0x600002472c40&gt; [32]
                      1 (32 bytes) &lt;CFString 0x600002473b20&gt; [32]
                      1 (32 bytes) &lt;NSNumber 0x6000024723a0&gt; [32]
                7 (320 bytes) &lt;NSMutableDictionary 0x600002470e80&gt; [32]
                   6 (288 bytes) &lt;NSMutableDictionary (Storage) 0x600002a1ca50&gt; [48]
                      4 (208 bytes) &lt;NSMutableArray 0x600002a1c870&gt; [48]
                         3 (160 bytes) &lt;NSMutableArray (Storage) 0x6000026d4df0&gt; [16]
                            2 (144 bytes) &lt;NSMutableDictionary 0x600002471d00&gt; [32]
                               1 (112 bytes) &lt;NSMutableDictionary (Storage) 0x600000fb8070&gt; [112]
                      1 (32 bytes) &lt;CFString 0x600002470fc0&gt; [32]
       1 (16 bytes) cow --&gt; &lt;NSDictionary.cow (struct __cow_state_t) 0x6000026d5680&gt; [16]

STACK OF 1 INSTANCE OF &apos;ROOT LEAK: malloc&lt;32&gt;&apos;:
[thread 0x11725ae3c]:
46  WebKitTestRunnerApp                   0x10ca9991e main + 97  mainIOS.mm:72
45  com.apple.UIKitCore                   0x11e24778c UIApplicationMain + 1621
44  com.apple.GraphicsServices            0x110a279f8 GSEventRunModal + 65
43  com.apple.CoreFoundation              0x110dd7296 CFRunLoopRunSpecific + 438
42  com.apple.CoreFoundation              0x110dd7aaf __CFRunLoopRun + 1263
41  com.apple.CoreFoundation              0x110ddcdec __CFRunLoopDoSources0 + 268
40  com.apple.CoreFoundation              0x110ddd5c1 __CFRunLoopDoSource0 + 81
39  com.apple.CoreFoundation              0x110ddd631 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
38  com.apple.Foundation                  0x1104f1fd8 __NSThreadPerformPerform + 259
37  WebKitTestRunnerApp                   0x10ca99828 -[WebKitTestRunnerApp _runTestController] + 40  mainIOS.mm:45
36  WebKitTestRunnerApp                   0x10caa2579 WTR::TestController::TestController(int, char const**) + 395  TestController.cpp:163
35  WebKitTestRunnerApp                   0x10caa9130 WTR::TestController::runTestingServerLoop() + 132  TestController.cpp:1686
34  WebKitTestRunnerApp                   0x10caa8d4b WTR::TestController::runTest(char const*) + 1933  memory:2610
33  WebKitTestRunnerApp                   0x10cab7a78 WTR::TestInvocation::invoke() + 306  TestInvocation.cpp:185
32  WebKitTestRunnerApp                   0x10cab62bb WTR::TestController::platformRunUntil(bool&amp;, WTF::Seconds) + 183  TestControllerCocoa.mm:0
31  com.apple.Foundation                  0x1104dc7c8 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 211
30  com.apple.CoreFoundation              0x110dd7296 CFRunLoopRunSpecific + 438
29  com.apple.CoreFoundation              0x110dd7aaf __CFRunLoopRun + 1263
28  com.apple.CoreFoundation              0x110ddcd94 __CFRunLoopDoSources0 + 180
27  com.apple.CoreFoundation              0x110ddd5c1 __CFRunLoopDoSource0 + 81
26  com.apple.CoreFoundation              0x110ddd631 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
25  JavaScriptCore                        0x10cdeb902 WTF::RunLoop::performWork(void*) + 34  RunLoopCF.cpp:39
24  JavaScriptCore                        0x10cdeb674 WTF::RunLoop::performWork() + 228  Function.h:0
23  com.apple.WebKit                      0x10f0c619b IPC::Connection::dispatchIncomingMessages() + 375  Connection.cpp:0
22  com.apple.WebKit                      0x10f0c3758 IPC::Connection::dispatchMessage(std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;) + 108  memory:2621
21  com.apple.WebKit                      0x10f30812c WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) + 24  WebProcessProxy.cpp:619
20  com.apple.WebKit                      0x10f0d7b2e IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&amp;, IPC::Decoder&amp;) + 114  MessageReceiverMap.cpp:0
19  com.apple.WebKit                      0x10f1124c1 void IPC::handleMessage&lt;Messages::RemoteLayerTreeDrawingAreaProxy::CommitLayerTree, WebKit::RemoteLayerTreeDrawingAreaProxy, void (WebKit::RemoteLayerTreeDrawingAreaProxy::*)(WebKit::RemoteLayerTreeTransaction const&amp;, WebKit::RemoteScrollingCoordinatorTransaction const&amp;)&gt;(IPC::Decoder&amp;, WebKit::RemoteLayerTreeDrawingAreaProxy*, void (WebKit::RemoteLayerTreeDrawingAreaProxy::*)(WebKit::RemoteLayerTreeTransaction const&amp;, WebKit::RemoteScrollingCoordinatorTransaction const&amp;)) + 94  HandleMessage.h:0
18  com.apple.WebKit                      0x10f2b8e2e WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree(WebKit::RemoteLayerTreeTransaction const&amp;, WebKit::RemoteScrollingCoordinatorTransaction const&amp;) + 624  utility:925
17  com.apple.WebKit                      0x10f2b9d68 WebKit::GenericCallback&lt;&gt;::performCallbackWithReturnValue() + 40  memory:2651
16  WebKitTestRunnerApp                   0x10cab9a8f WTR::TestInvocation::runUISideScriptAfterUpdateCallback(OpaqueWKError const*, void*) + 43  WKRetainPtr.h:80
15  WebKitTestRunnerApp                   0x10cabb673 WTR::TestInvocation::runUISideScript(OpaqueWKString const*, unsigned int) + 185  utility:925
14  WebKitTestRunnerApp                   0x10cabdeb6 WTR::UIScriptContext::runUIScript(WTF::String const&amp;, unsigned int) + 116  HashTable.h:399
13  JavaScriptCore                        0x10cfbba43 JSEvaluateScript + 675  NakedPtr.h:53
12  JavaScriptCore                        0x10d5d26cb JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;) + 299  Completion.cpp:141
11  JavaScriptCore                        0x10d35ceb1 JSC::Interpreter::executeProgram(JSC::SourceCode const&amp;, JSC::ExecState*, JSC::JSObject*) + 11361  JITCodeInlines.h:39
10  JavaScriptCore                        0x10cf7b599 vmEntryToJavaScript + 200  LowLevelInterpreter64.asm:293
9   JavaScriptCore                        0x10cf8a9c7 llint_entry + 62084  LowLevelInterpreter.asm:885
8   JavaScriptCore                        0x10cf81a19 llint_entry + 25302  LowLevelInterpreter64.asm:342
7   JavaScriptCore                        0x10d456535 llint_slow_path_get_by_id + 2517  JSObjectInlines.h:151
6   JavaScriptCore                        0x10cfbddd6 JSC::JSCallbackObject&lt;JSC::JSDestructibleObject&gt;::getOwnPropertySlot(JSC::JSObject*, JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&amp;) + 630  JSCJSValueInlines.h:392
5   JavaScriptCore                        0x10cfc38bc JSC::JSCallbackObject&lt;JSC::JSDestructibleObject&gt;::getStaticValue(JSC::ExecState*, JSC::PropertyName) + 364  JSCallbackObjectFunctions.h:629
4   WebKitTestRunnerApp                   0x10caa0051 WTR::JSUIScriptController::scrollingTreeAsText(OpaqueJSContext const*, OpaqueJSValue*, OpaqueJSString*, OpaqueJSValue const**) + 39  JSRetainPtr.h:50
3   WebKitTestRunnerApp                   0x10cac3a49 WTR::UIScriptController::scrollingTreeAsText() const + 45  JSRetainPtr.h:45
2   JavaScriptCore                        0x10cfda508 JSStringCreateWithCFString + 200  ThreadSafeRefCounted.h:37
1   JavaScriptCore                        0x10ce41b90 bmalloc::DebugHeap::malloc(unsigned long, bool) + 16  DebugHeap.cpp:53
0   libsystem_malloc.dylib                0x1174ce11a malloc_zone_malloc + 140 
====
    2 (1.53K) ROOT LEAK: 0x7fdf8e924f80 [32]
       1 (1.50K) 0x7fdf5a801600 [1536]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530712</commentid>
    <comment_count>1</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2019-04-26 09:50:00 -0700</bug_when>
    <thetext>&lt;rdar://problem/50245252&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530717</commentid>
    <comment_count>2</comment_count>
      <attachid>368324</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2019-04-26 09:52:05 -0700</bug_when>
    <thetext>Created attachment 368324
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530772</commentid>
    <comment_count>3</comment_count>
      <attachid>368324</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-04-26 11:32:57 -0700</bug_when>
    <thetext>Comment on attachment 368324
Patch v1

Clearing flags on attachment: 368324

Committed r244703: &lt;https://trac.webkit.org/changeset/244703&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530773</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-04-26 11:32:58 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>368324</attachid>
            <date>2019-04-26 09:52:05 -0700</date>
            <delta_ts>2019-04-26 11:32:57 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-197314-20190426095204.patch</filename>
            <type>text/plain</type>
            <size>5791</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ0NTk2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYTg2MTdlNGY3ZThkZDhiMzg1NmI5M2FkYTg1Y2IwOWE4
OWUxNzEwYy4uOTE4MWFmOTYwMmJlYzJiNDljM2EzNGQ2NTg5NGQ2MDliZTAyZWE5NiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4
IEBACisyMDE5LTA0LTI2ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAg
ICAgICAgV2ViS2l0VGVzdFJ1bm5lciBsZWFrcyBhbiBOU0RpY3Rpb25hcnkgYW5kIG11bHRpcGxl
IEpTU3RyaW5nUmVmIG9iamVjdHMKKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE5NzMx
ND4KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzUwMjQ1MjUyPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9VSVNjcmlw
dENvbnRyb2xsZXJDb2NvYS5tbToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjps
YXN0VW5kb0xhYmVsIGNvbnN0KToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjpm
aXJzdFJlZG9MYWJlbCBjb25zdCk6CisgICAgICAgIC0gVXNlIGFkb3B0KEpTU3RyaW5nQ3JlYXRl
V2l0aENGU3RyaW5nKC4uLikpIHRvIGZpeCBsZWFrcy4KKworICAgICAgICAqIFdlYktpdFRlc3RS
dW5uZXIvaW9zL0hJREV2ZW50R2VuZXJhdG9yLm1tOgorICAgICAgICAoLVtISURFdmVudEdlbmVy
YXRvciBzZW5kRXZlbnRTdHJlYW06Y29tcGxldGlvbkJsb2NrOl0pOgorICAgICAgICAtIENhbGwg
LWF1dG9yZWxlYXNlIHRvIGZpeCBsZWFrIG9mIE5TRGljdGlvbmFyeS4KKworICAgICAgICAqIFdl
YktpdFRlc3RSdW5uZXIvaW9zL1VJU2NyaXB0Q29udHJvbGxlcklPUy5tbToKKyAgICAgICAgKFdU
Ujo6VUlTY3JpcHRDb250cm9sbGVyOjphY2Nlc3NpYmlsaXR5U3BlYWtTZWxlY3Rpb25Db250ZW50
IGNvbnN0KToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjpzZWxlY3RGb3JtUG9w
b3ZlclRpdGxlIGNvbnN0KToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjp0ZXh0
Q29udGVudFR5cGUgY29uc3QpOgorICAgICAgICAoV1RSOjpVSVNjcmlwdENvbnRyb2xsZXI6OmZv
cm1JbnB1dExhYmVsIGNvbnN0KToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjpz
Y3JvbGxpbmdUcmVlQXNUZXh0IGNvbnN0KToKKyAgICAgICAgLSBVc2UgYWRvcHQoSlNTdHJpbmdD
cmVhdGVXaXRoQ0ZTdHJpbmcoLi4uKSkgdG8gZml4IGxlYWtzLgorCiAyMDE5LTA0LTI0ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIHVu
aXQgdGVzdCBmb3IgcjIzOTMyMgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9V
SVNjcmlwdENvbnRyb2xsZXJDb2NvYS5tbSBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVUlTY3Jp
cHRDb250cm9sbGVyQ29jb2EubW0KaW5kZXggZWFiZGYyNzQ3MTE3NTM2MTI5YjVjODZlMmVmYWIz
YTVlZTg3NTlmNS4uN2M2NTNjMGFiOGMzMWY1MDJjNDVhNDk2MDg4NGFiNmFkNGNjNTIwNiAxMDA2
NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9VSVNjcmlwdENvbnRyb2xsZXJDb2NvYS5t
bQorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLm1t
CkBAIC0xNTEsMTIgKzE1MSwxMiBAQCB2b2lkIFVJU2NyaXB0Q29udHJvbGxlcjo6c2V0RGVmYXVs
dENhbGVuZGFyVHlwZShKU1N0cmluZ1JlZiBjYWxlbmRhcklkZW50aWZpZXIpCiAKIEpTUmV0YWlu
UHRyPEpTU3RyaW5nUmVmPiBVSVNjcmlwdENvbnRyb2xsZXI6Omxhc3RVbmRvTGFiZWwoKSBjb25z
dAogewotICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhDRlN0cmluZygoX19icmlkZ2UgQ0ZT
dHJpbmdSZWYpcGxhdGZvcm1VbmRvTWFuYWdlcigpLnVuZG9BY3Rpb25OYW1lKTsKKyAgICByZXR1
cm4gYWRvcHQoSlNTdHJpbmdDcmVhdGVXaXRoQ0ZTdHJpbmcoKF9fYnJpZGdlIENGU3RyaW5nUmVm
KXBsYXRmb3JtVW5kb01hbmFnZXIoKS51bmRvQWN0aW9uTmFtZSkpOwogfQogCiBKU1JldGFpblB0
cjxKU1N0cmluZ1JlZj4gVUlTY3JpcHRDb250cm9sbGVyOjpmaXJzdFJlZG9MYWJlbCgpIGNvbnN0
CiB7Ci0gICAgcmV0dXJuIEpTU3RyaW5nQ3JlYXRlV2l0aENGU3RyaW5nKChfX2JyaWRnZSBDRlN0
cmluZ1JlZilwbGF0Zm9ybVVuZG9NYW5hZ2VyKCkucmVkb0FjdGlvbk5hbWUpOworICAgIHJldHVy
biBhZG9wdChKU1N0cmluZ0NyZWF0ZVdpdGhDRlN0cmluZygoX19icmlkZ2UgQ0ZTdHJpbmdSZWYp
cGxhdGZvcm1VbmRvTWFuYWdlcigpLnJlZG9BY3Rpb25OYW1lKSk7CiB9CiAKIE5TVW5kb01hbmFn
ZXIgKlVJU2NyaXB0Q29udHJvbGxlcjo6cGxhdGZvcm1VbmRvTWFuYWdlcigpIGNvbnN0CmRpZmYg
LS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9ISURFdmVudEdlbmVyYXRvci5tbSBi
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL0hJREV2ZW50R2VuZXJhdG9yLm1tCmluZGV4IGNh
Zjc2YjczYWU1YzVhNTE4Y2YxNTZiMWI4M2M5OTFlOTViMGZkMTMuLjU3NzU2MjY3ZTQ5NTkzNjM1
OWU5MTJmZmMwMjAyYmJmMzRjOThlYWYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvaW9zL0hJREV2ZW50R2VuZXJhdG9yLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
aW9zL0hJREV2ZW50R2VuZXJhdG9yLm1tCkBAIC0xMTM4LDcgKzExMzgsNyBAQCAtICh2b2lkKXNl
bmRFdmVudFN0cmVhbTooTlNEaWN0aW9uYXJ5ICopZXZlbnRJbmZvIGNvbXBsZXRpb25CbG9jazoo
dm9pZCAoXikodm9pZAogICAgIH0KICAgICAKICAgICBOU0RpY3Rpb25hcnkqIHRocmVhZERhdGEg
PSBAewotICAgICAgICBAImV2ZW50SW5mbyI6IFtldmVudEluZm8gY29weV0sCisgICAgICAgIEAi
ZXZlbnRJbmZvIjogW1tldmVudEluZm8gY29weV0gYXV0b3JlbGVhc2VdLAogICAgICAgICBAImNv
bXBsZXRpb25CbG9jayI6IFtbY29tcGxldGlvbkJsb2NrIGNvcHldIGF1dG9yZWxlYXNlXQogICAg
IH07CiAgICAgCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9VSVNjcmlw
dENvbnRyb2xsZXJJT1MubW0gYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9VSVNjcmlwdENv
bnRyb2xsZXJJT1MubW0KaW5kZXggMTkxYmM5OTNmZWQ2MDUxNDI4MTBmZjZlN2QzZjgzYTk2N2Yy
OTE4OS4uMzc1NTRjMDAzZDY3NzE0ODgyZTZjNjdiNTJmOTJhNmJhNWExNmZlZiAxMDA2NDQKLS0t
IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLm1tCisr
KyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1VJU2NyaXB0Q29udHJvbGxlcklPUy5tbQpA
QCAtMTk4LDcgKzE5OCw3IEBAIHZvaWQgVUlTY3JpcHRDb250cm9sbGVyOjpyZXRyaWV2ZVNwZWFr
U2VsZWN0aW9uQ29udGVudChKU1ZhbHVlUmVmIGNhbGxiYWNrKQogSlNSZXRhaW5QdHI8SlNTdHJp
bmdSZWY+IFVJU2NyaXB0Q29udHJvbGxlcjo6YWNjZXNzaWJpbGl0eVNwZWFrU2VsZWN0aW9uQ29u
dGVudCgpIGNvbnN0CiB7CiAgICAgVGVzdFJ1bm5lcldLV2ViVmlldyAqd2ViVmlldyA9IFRlc3RD
b250cm9sbGVyOjpzaW5nbGV0b24oKS5tYWluV2ViVmlldygpLT5wbGF0Zm9ybVZpZXcoKTsKLSAg
ICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRoQ0ZTdHJpbmcoKENGU3RyaW5nUmVmKXdlYlZpZXcu
YWNjZXNzaWJpbGl0eVNwZWFrU2VsZWN0aW9uQ29udGVudCk7CisgICAgcmV0dXJuIGFkb3B0KEpT
U3RyaW5nQ3JlYXRlV2l0aENGU3RyaW5nKChDRlN0cmluZ1JlZil3ZWJWaWV3LmFjY2Vzc2liaWxp
dHlTcGVha1NlbGVjdGlvbkNvbnRlbnQpKTsKIH0KIAogdm9pZCBVSVNjcmlwdENvbnRyb2xsZXI6
OnNpbXVsYXRlQWNjZXNzaWJpbGl0eVNldHRpbmdzQ2hhbmdlTm90aWZpY2F0aW9uKEpTVmFsdWVS
ZWYgY2FsbGJhY2spCkBAIC00OTksMTkgKzQ5OSwxOSBAQCB2b2lkIFVJU2NyaXB0Q29udHJvbGxl
cjo6ZGlzbWlzc0ZpbGVQaWNrZXIoSlNWYWx1ZVJlZiBjYWxsYmFjaykKIEpTUmV0YWluUHRyPEpT
U3RyaW5nUmVmPiBVSVNjcmlwdENvbnRyb2xsZXI6OnNlbGVjdEZvcm1Qb3BvdmVyVGl0bGUoKSBj
b25zdAogewogICAgIFRlc3RSdW5uZXJXS1dlYlZpZXcgKndlYlZpZXcgPSBUZXN0Q29udHJvbGxl
cjo6c2luZ2xldG9uKCkubWFpbldlYlZpZXcoKS0+cGxhdGZvcm1WaWV3KCk7Ci0gICAgcmV0dXJu
IEpTU3RyaW5nQ3JlYXRlV2l0aENGU3RyaW5nKChDRlN0cmluZ1JlZil3ZWJWaWV3LnNlbGVjdEZv
cm1Qb3BvdmVyVGl0bGUpOworICAgIHJldHVybiBhZG9wdChKU1N0cmluZ0NyZWF0ZVdpdGhDRlN0
cmluZygoQ0ZTdHJpbmdSZWYpd2ViVmlldy5zZWxlY3RGb3JtUG9wb3ZlclRpdGxlKSk7CiB9CiAK
IEpTUmV0YWluUHRyPEpTU3RyaW5nUmVmPiBVSVNjcmlwdENvbnRyb2xsZXI6OnRleHRDb250ZW50
VHlwZSgpIGNvbnN0CiB7CiAgICAgVGVzdFJ1bm5lcldLV2ViVmlldyAqd2ViVmlldyA9IFRlc3RD
b250cm9sbGVyOjpzaW5nbGV0b24oKS5tYWluV2ViVmlldygpLT5wbGF0Zm9ybVZpZXcoKTsKLSAg
ICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRoQ0ZTdHJpbmcoKENGU3RyaW5nUmVmKSh3ZWJWaWV3
LnRleHRDb250ZW50VHlwZUZvclRlc3RpbmcgPzogQCIiKSk7CisgICAgcmV0dXJuIGFkb3B0KEpT
U3RyaW5nQ3JlYXRlV2l0aENGU3RyaW5nKChDRlN0cmluZ1JlZikod2ViVmlldy50ZXh0Q29udGVu
dFR5cGVGb3JUZXN0aW5nID86IEAiIikpKTsKIH0KIAogSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+
IFVJU2NyaXB0Q29udHJvbGxlcjo6Zm9ybUlucHV0TGFiZWwoKSBjb25zdAogewogICAgIFRlc3RS
dW5uZXJXS1dlYlZpZXcgKndlYlZpZXcgPSBUZXN0Q29udHJvbGxlcjo6c2luZ2xldG9uKCkubWFp
bldlYlZpZXcoKS0+cGxhdGZvcm1WaWV3KCk7Ci0gICAgcmV0dXJuIEpTU3RyaW5nQ3JlYXRlV2l0
aENGU3RyaW5nKChDRlN0cmluZ1JlZil3ZWJWaWV3LmZvcm1JbnB1dExhYmVsKTsKKyAgICByZXR1
cm4gYWRvcHQoSlNTdHJpbmdDcmVhdGVXaXRoQ0ZTdHJpbmcoKENGU3RyaW5nUmVmKXdlYlZpZXcu
Zm9ybUlucHV0TGFiZWwpKTsKIH0KIAogdm9pZCBVSVNjcmlwdENvbnRyb2xsZXI6OnNlbGVjdEZv
cm1BY2Nlc3NvcnlQaWNrZXJSb3cobG9uZyByb3dJbmRleCkKQEAgLTc1MSw3ICs3NTEsNyBAQCB2
b2lkIFVJU2NyaXB0Q29udHJvbGxlcjo6cmVtb3ZlQWxsRHluYW1pY0RpY3Rpb25hcmllcygpCiBK
U1JldGFpblB0cjxKU1N0cmluZ1JlZj4gVUlTY3JpcHRDb250cm9sbGVyOjpzY3JvbGxpbmdUcmVl
QXNUZXh0KCkgY29uc3QKIHsKICAgICBUZXN0UnVubmVyV0tXZWJWaWV3ICp3ZWJWaWV3ID0gVGVz
dENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLm1haW5XZWJWaWV3KCktPnBsYXRmb3JtVmlldygpOwot
ICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhDRlN0cmluZygoQ0ZTdHJpbmdSZWYpW3dlYlZp
ZXcgX3Njcm9sbGluZ1RyZWVBc1RleHRdKTsKKyAgICByZXR1cm4gYWRvcHQoSlNTdHJpbmdDcmVh
dGVXaXRoQ0ZTdHJpbmcoKENGU3RyaW5nUmVmKVt3ZWJWaWV3IF9zY3JvbGxpbmdUcmVlQXNUZXh0
XSkpOwogfQogCiBKU09iamVjdFJlZiBVSVNjcmlwdENvbnRyb2xsZXI6OnByb3BlcnRpZXNPZkxh
eWVyV2l0aElEKHVpbnQ2NF90IGxheWVySUQpIGNvbnN0Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>