<?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>193167</bug_id>
          
          <creation_ts>2019-01-04 18:15:03 -0800</creation_ts>
          <short_desc>IndexedDB: leak IDBTransaction, TransactionOperation and IDBRequest in layout tests</short_desc>
          <delta_ts>2019-01-11 16:37:18 -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>New Bugs</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="Sihui Liu">sihui_liu</reporter>
          <assigned_to name="Sihui Liu">sihui_liu</assigned_to>
          <cc>alecflett</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>jsbell</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1492007</commentid>
    <comment_count>0</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-01-04 18:15:03 -0800</bug_when>
    <thetext>Found by running layout tests using --leak option.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1492010</commentid>
    <comment_count>1</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-01-04 18:16:06 -0800</bug_when>
    <thetext>&lt;rdar://problem/46891688&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1492011</commentid>
    <comment_count>2</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-01-04 18:17:27 -0800</bug_when>
    <thetext>STACK OF 1 INSTANCE OF &apos;ROOT CYCLE: &lt;WebCore&gt;&apos;:
[thread 0x10b2605c0]:
39  libdyld.dylib                      0x7fff7834c3f1 start + 1
38  com.apple.WebKit.WebContent           0x100fb8867 invocation function for block in WebKit::XPCServiceEventHandler(NSObject&lt;OS_xpc_object&gt;*) + 0  XPCServiceMain.mm:46
37  com.apple.WebKit.WebContent           0x100fb86e2 WebKit::XPCServiceMain(int, char const**) + 547  XPCServiceMain.mm:0
36  libxpc.dylib                       0x7fff78580ce5 _xpc_copy_xpcservice_dictionary + 0
35  libxpc.dylib                       0x7fff785811e3 _xpc_objc_main + 552
34  com.apple.Foundation               0x7fff4de1e334 -[NSRunLoop(NSRunLoop) run] + 76
33  com.apple.Foundation               0x7fff4de1e45f -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 280
32  com.apple.CoreFoundation           0x7fff4bae201a CFRunLoopRunSpecific + 455
31  com.apple.CoreFoundation           0x7fff4bae2ae3 __CFRunLoopRun + 2167
30  com.apple.CoreFoundation           0x7fff4bb01912 __CFRunLoopDoTimers + 330
29  com.apple.CoreFoundation           0x7fff4bb01dcc __CFRunLoopDoTimer + 851
28  com.apple.CoreFoundation           0x7fff4bb02220 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
27  com.apple.WebCore                     0x103666a0f WebCore::timerFired(__CFRunLoopTimer*, void*) + 31  MainThreadSharedTimerCF.cpp:75
26  com.apple.WebCore                     0x1036450e0 WebCore::ThreadTimers::sharedTimerFiredInternal() + 176  ThreadTimers.cpp:120
25  com.apple.WebCore                     0x1030fd77c WebCore::DocumentEventQueue::pendingEventTimerFired() + 284  utility:898
24  com.apple.WebCore                     0x102d03ba8 WebCore::IDBOpenDBRequest::dispatchEvent(WebCore::Event&amp;) + 24  RefPtr.h:87
23  com.apple.WebCore                     0x102d03d42 WebCore::IDBRequest::dispatchEvent(WebCore::Event&amp;) + 274  IDBTransaction.cpp:1354
22  com.apple.WebCore                     0x10312b097 WebCore::EventDispatcher::dispatchEvent(WTF::Vector&lt;WebCore::EventTarget*, 0ul, WTF::CrashOnOverflow, 16ul&gt; const&amp;, WebCore::Event&amp;) + 119  EventDispatcher.cpp:186
21  com.apple.WebCore                     0x10312afee WebCore::dispatchEventInDOM(WebCore::Event&amp;, WebCore::EventPath const&amp;) + 222  Event.h:114
20  com.apple.WebCore                     0x10312e5a3 WebCore::EventTarget::fireEventListeners(WebCore::Event&amp;, WebCore::EventTarget::EventInvokePhase) + 515  Vector.h:674
19  com.apple.WebCore                     0x103130639 WebCore::EventTarget::innerInvokeEventListeners(WebCore::Event&amp;, WTF::Vector&lt;WTF::RefPtr&lt;WebCore::RegisteredEventListener, WTF::DumbPtrTraits&lt;WebCore::RegisteredEventListener&gt; &gt;, 1ul, WTF::CrashOnOverflow, 16ul&gt;, WebCore::EventTarget::EventInvokePhase) + 825  InspectorInstrumentation.h:282
18  com.apple.WebCore                     0x102eb502f WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext&amp;, WebCore::Event&amp;) + 1023  JSEventListener.cpp:175
17  com.apple.WebCore                     0x102e9d4e4 WebCore::JSExecState::profiledCall(JSC::ExecState*, JSC::ProfilingReason, JSC::JSValue, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;) + 100  JSExecState.h:74
16  com.apple.JavaScriptCore              0x1073abe0b JSC::profiledCall(JSC::ExecState*, JSC::ProfilingReason, JSC::JSValue, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;) + 187  CallData.cpp:41
15  com.apple.JavaScriptCore              0x1071644a0 JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;) + 464  JITCodeInlines.h:39
14  com.apple.JavaScriptCore              0x106b89ba9 vmEntryToJavaScript + 200  LowLevelInterpreter64.asm:295
13  com.apple.JavaScriptCore              0x106b99001 llint_entry + 62110  LowLevelInterpreter.asm:899
12  com.apple.JavaScriptCore              0x106b9a042 llint_entry + 66271  LowLevelInterpreter.asm:995
11  com.apple.JavaScriptCore              0x1072699ef JSC::LLInt::commonCallEval(JSC::ExecState*, JSC::Instruction const*, JSC::MacroAssemblerCodePtr&lt;(WTF::PtrTag)357&gt;) + 255  LLIntSlowPaths.cpp:1745
10  com.apple.JavaScriptCore              0x10715e018 JSC::eval(JSC::ExecState*) + 664  Interpreter.cpp:171
9   com.apple.JavaScriptCore              0x10715efe2 JSC::Interpreter::execute(JSC::EvalExecutable*, JSC::ExecState*, JSC::JSValue, JSC::JSScope*) + 2194  JITCodeInlines.h:39
8   com.apple.JavaScriptCore              0x106b89ba9 vmEntryToJavaScript + 200  LowLevelInterpreter64.asm:295
7   com.apple.JavaScriptCore              0x106b99001 llint_entry + 62110  LowLevelInterpreter.asm:899
6                                      0x3a98e6201177 0x3a98e6201000 + 375
5   com.apple.WebCore                     0x1029029f2 WebCore::jsIDBDatabasePrototypeFunctionCreateObjectStore(JSC::ExecState*) + 418  Expected.h:487
4   com.apple.WebCore                     0x102cf1287 WebCore::IDBDatabase::createObjectStore(WTF::String const&amp;, WebCore::IDBDatabase::ObjectStoreParameters&amp;&amp;) + 375  utility:898
3   com.apple.WebCore                     0x102d0a1ef WebCore::IDBTransaction::createObjectStore(WebCore::IDBObjectStoreInfo const&amp;) + 127  ThreadSafeRefCounted.h:37
2   com.apple.JavaScriptCore              0x106949a2b WTF::fastMalloc(unsigned long) + 91  FastMalloc.cpp:279
1   com.apple.JavaScriptCore              0x1069b8c8c bmalloc::DebugHeap::malloc(unsigned long) + 12  DebugHeap.cpp:49
0   libsystem_malloc.dylib             0x7fff784f7b19 malloc_zone_malloc + 139 
====
    3 (256 bytes) ROOT CYCLE: &lt;WebCore::IDBClient::TransactionOperationImpl&lt;WebCore::IDBObjectStoreInfo const&amp;&gt; 0x7f85d6b32530&gt; [112]
       1 (128 bytes) ROOT CYCLE: &lt;WTF::Function&lt;void ()&gt;::CallableWrapper&lt;WebCore::IDBClient::TransactionOperationImpl&lt;WebCore::IDBObjectStoreInfo const&amp;&gt;::TransactionOperationImpl(WebCore::IDBTransaction&amp;, void (WebCore::IDBTransaction::*)(WebCore::IDBResultData const&amp;), void (WebCore::IDBTransaction::*)(WebCore::IDBClient::TransactionOperation&amp;, WebCore::IDBObjectStoreInfo const&amp;), WebCore::IDBObjectStoreInfo const&amp;)::&apos;lambda&apos;()&gt; 0x7f85d6b90940&gt; [128]
          CYCLE BACK TO &lt;WebCore::IDBClient::TransactionOperationImpl&lt;WebCore::IDBObjectStoreInfo const&amp;&gt; 0x7f85d6b32530&gt; [112]
       1 (16 bytes) 0x7f85d6b2b570 [16]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1492014</commentid>
    <comment_count>3</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-01-04 18:19:01 -0800</bug_when>
    <thetext>STACK OF 1 INSTANCE OF &apos;ROOT CYCLE: &lt;WTF&gt;&apos;:
[thread 0x1116435c0]:
25  libdyld.dylib                      0x7fff7834c3f1 start + 1
24  com.apple.WebKit.WebContent           0x10c62c867 invocation function for block in WebKit::XPCServiceEventHandler(NSObject&lt;OS_xpc_object&gt;*) + 0  XPCServiceMain.mm:46
23  com.apple.WebKit.WebContent           0x10c62c6e2 WebKit::XPCServiceMain(int, char const**) + 547  XPCServiceMain.mm:0
22  libxpc.dylib                       0x7fff78580ce5 _xpc_copy_xpcservice_dictionary + 0
21  libxpc.dylib                       0x7fff785811e3 _xpc_objc_main + 552
20  com.apple.Foundation               0x7fff4de1e334 -[NSRunLoop(NSRunLoop) run] + 76
19  com.apple.Foundation               0x7fff4de1e45f -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 280
18  com.apple.CoreFoundation           0x7fff4bae201a CFRunLoopRunSpecific + 455
17  com.apple.CoreFoundation           0x7fff4bae2726 __CFRunLoopRun + 1210
16  com.apple.CoreFoundation           0x7fff4bae317c __CFRunLoopDoSources0 + 195
15  com.apple.CoreFoundation           0x7fff4baff7e9 __CFRunLoopDoSource0 + 108
14  com.apple.CoreFoundation           0x7fff4baff843 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
13  com.apple.JavaScriptCore              0x660b75792 WTF::RunLoop::performWork(void*) + 34  RunLoopCF.cpp:39
12  com.apple.JavaScriptCore              0x660b75504 WTF::RunLoop::performWork() + 228  Function.h:0
11  com.apple.WebKit                      0x10c64961b IPC::Connection::dispatchOneIncomingMessage() + 181  Connection.cpp:0
10  com.apple.WebKit                      0x10c645fe8 IPC::Connection::dispatchMessage(std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;) + 108  memory:2603
9   com.apple.WebKit                      0x10c98b7c4 WebKit::NetworkProcessConnection::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) + 1014  NetworkProcessConnection.cpp:0
8   com.apple.WebKit                      0x10ca09843 void IPC::handleMessage&lt;Messages::WebIDBConnectionToServer::DidOpenDatabase, WebKit::WebIDBConnectionToServer, void (WebKit::WebIDBConnectionToServer::*)(WebCore::IDBResultData const&amp;)&gt;(IPC::Decoder&amp;, WebKit::WebIDBConnectionToServer*, void (WebKit::WebIDBConnectionToServer::*)(WebCore::IDBResultData const&amp;)) + 90  memory:2631
7   com.apple.WebCore                     0x10e3813b2 WebCore::IDBClient::IDBConnectionProxy::completeOpenDBRequest(WebCore::IDBResultData const&amp;) + 450  RefCounted.h:98
6   com.apple.WebCore                     0x10e37007a WebCore::IDBOpenDBRequest::onUpgradeNeeded(WebCore::IDBResultData const&amp;) + 90  DumbPtrTraits.h:41
5   com.apple.WebCore                     0x10e35dd86 WebCore::IDBDatabase::startVersionChangeTransaction(WebCore::IDBTransactionInfo const&amp;, WebCore::IDBOpenDBRequest&amp;) + 22  DumbPtrTraits.h:41
4   com.apple.WebCore                     0x10e373278 WebCore::IDBTransaction::create(WebCore::IDBDatabase&amp;, WebCore::IDBTransactionInfo const&amp;, WebCore::IDBOpenDBRequest&amp;) + 56  Ref.h:147
3   com.apple.WebCore                     0x10e373404 WebCore::IDBTransaction::IDBTransaction(WebCore::IDBDatabase&amp;, WebCore::IDBTransactionInfo const&amp;, WebCore::IDBOpenDBRequest*) + 372  Function.h:95
2   com.apple.JavaScriptCore              0x660b59a2b WTF::fastMalloc(unsigned long) + 91  FastMalloc.cpp:279
1   com.apple.JavaScriptCore              0x660bc8c8c bmalloc::DebugHeap::malloc(unsigned long) + 12  DebugHeap.cpp:49
0   libsystem_malloc.dylib             0x7fff784f7b19 malloc_zone_malloc + 139 
====
    14 (2.72K) ROOT CYCLE: &lt;WTF::Function&lt;void ()&gt;::CallableWrapper&lt;std::__1::__bind&lt;void (WebCore::IDBTransaction::*&amp;)(), WebCore::IDBTransaction*&gt; &gt; 0x7f929b07f700&gt; [32]
       13 (2.69K) ROOT CYCLE: &lt;WebCore::IDBTransaction 0x7f929b06dc20&gt; [624]
          CYCLE BACK TO &lt;WTF::Function&lt;void ()&gt;::CallableWrapper&lt;std::__1::__bind&lt;void (WebCore::IDBTransaction::*&amp;)(), WebCore::IDBTransaction*&gt; &gt; 0x7f929b07f700&gt; [32]
          2 (400 bytes) ROOT CYCLE: 0x7f929b07f9e0 [128]
             1 (272 bytes) ROOT CYCLE: &lt;WebCore::IDBObjectStore 0x7f929b042dc0&gt; [272]
          3 (368 bytes) ROOT CYCLE: 0x7f929b05a640 [128]
             2 (240 bytes) ROOT CYCLE: &lt;WebCore::IDBClient::TransactionOperationImpl&lt;WebCore::IDBObjectStoreInfo const&amp;&gt; 0x7f929b018b50&gt; [112]
                1 (128 bytes) ROOT CYCLE: &lt;WTF::Function&lt;void ()&gt;::CallableWrapper&lt;WebCore::IDBClient::TransactionOperationImpl&lt;WebCore::IDBObjectStoreInfo const&amp;&gt;::TransactionOperationImpl(WebCore::IDBTransaction&amp;, void (WebCore::IDBTransaction::*)(WebCore::IDBResultData const&amp;), void (WebCore::IDBTransaction::*)(WebCore::IDBClient::TransactionOperation&amp;, WebCore::IDBObjectStoreInfo const&amp;), WebCore::IDBObjectStoreInfo const&amp;)::&apos;lambda&apos;()&gt; 0x7f929b018bc0&gt; [128]
          1 (128 bytes) ROOT CYCLE: 0x7f929b03aed0 [128]
          1 (32 bytes) ROOT CYCLE: &lt;WTF::Function&lt;void ()&gt;::CallableWrapper&lt;std::__1::__bind&lt;void (WebCore::IDBTransaction::*&amp;)(), WebCore::IDBTransaction*&gt; &gt; 0x7f929b077ce0&gt; [32]
          2 (816 bytes) 0x7f929881a6d0 [48]
             1 (768 bytes) 0x7f929b0779e0 [768]
          1 (192 bytes) 0x7f929b05a6c0 [192]
          1 (128 bytes) 0x7f929b03ae30 [128]
          1 (64 bytes) 0x7f929b018ae0 [64]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1492034</commentid>
    <comment_count>4</comment_count>
      <attachid>358421</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-01-04 19:13:31 -0800</bug_when>
    <thetext>Created attachment 358421
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493339</commentid>
    <comment_count>5</comment_count>
      <attachid>358803</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-01-10 10:05:34 -0800</bug_when>
    <thetext>Created attachment 358803
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493358</commentid>
    <comment_count>6</comment_count>
      <attachid>358803</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2019-01-10 10:56:07 -0800</bug_when>
    <thetext>Comment on attachment 358803
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493359</commentid>
    <comment_count>7</comment_count>
      <attachid>358803</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2019-01-10 10:56:40 -0800</bug_when>
    <thetext>Comment on attachment 358803
Patch

Seems like these test failures are related:

  crypto/subtle/rsa-indexeddb-private.html [ Crash ]
  crypto/subtle/rsa-indexeddb.html [ Crash ]
  fast/history/page-cache-indexed-opened-db.html [ Crash ]
  http/tests/IndexedDB/collect-IDB-objects.https.html [ Crash ]
  http/tests/security/cross-origin-worker-indexeddb.html [ Crash ]
  imported/blink/storage/indexeddb/blob-basics-metadata.html [ Crash ]
  imported/blink/storage/indexeddb/blob-valid-before-commit.html [ Crash ]
  imported/blink/storage/indexeddb/empty-blob-file.html [ Crash ]
  imported/w3c/IndexedDB-private-browsing/abort-in-initial-upgradeneeded.html [ Crash ]
  imported/w3c/IndexedDB-private-browsing/close-in-upgradeneeded.html [ Crash ]
  imported/w3c/IndexedDB-private-browsing/cursor-overloads.html [ Crash ]
  imported/w3c/IndexedDB-private-browsing/idbcursor-advance-continue-async.html [ Crash ]
  imported/w3c/IndexedDB-private-browsing/idbcursor-advance-invalid.html [ Crash ]
  imported/w3c/IndexedDB-private-browsing/idbcursor-advance.html [ Crash ]
  imported/w3c/IndexedDB-private-browsing/idbcursor-continue.html [ Crash ]
  imported/w3c/web-platform-tests/IndexedDB/close-in-upgradeneeded.html [ Crash ]
  imported/w3c/web-platform-tests/IndexedDB/cursor-overloads.htm [ Crash ]
  imported/w3c/web-platform-tests/IndexedDB/delete-request-queue.html [ Crash ]
  imported/w3c/web-platform-tests/IndexedDB/error-attributes.html [ Crash ]
  imported/w3c/web-platform-tests/IndexedDB/event-dispatch-active-flag.html [ Crash ]
  imported/w3c/web-platform-tests/IndexedDB/fire-error-event-exception.html [ Crash ]
  imported/w3c/web-platform-tests/IndexedDB/fire-success-event-exception.html [ Crash ]
  inspector/indexeddb/requestData.html [ Crash ]
  inspector/indexeddb/requestDatabase.html [ Crash ]
  inspector/indexeddb/requestDatabaseNames.html [ Crash ]
  inspector/unit-tests/objectStore/add.html [ Crash ]
  inspector/unit-tests/objectStore/addObject.html [ Crash ]
  inspector/unit-tests/objectStore/basic.html [ Crash ]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493386</commentid>
    <comment_count>8</comment_count>
      <attachid>358815</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-01-10 12:01:04 -0800</bug_when>
    <thetext>Created attachment 358815
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493411</commentid>
    <comment_count>9</comment_count>
      <attachid>358815</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2019-01-10 13:10:49 -0800</bug_when>
    <thetext>Comment on attachment 358815
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493745</commentid>
    <comment_count>10</comment_count>
      <attachid>358815</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-01-11 12:21:14 -0800</bug_when>
    <thetext>Comment on attachment 358815
Patch

Clearing flags on attachment: 358815

Committed r239865: &lt;https://trac.webkit.org/changeset/239865&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493746</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-01-11 12:21:16 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358421</attachid>
            <date>2019-01-04 19:13:31 -0800</date>
            <delta_ts>2019-01-10 10:05:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-193167-20190104191330.patch</filename>
            <type>text/plain</type>
            <size>7442</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5NjQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmZiNWQzNmM4NjUxZTAx
MmJhNWVjNDJmYjU2MTY5YjQwZTNkOTE0Ny4uYmM2M2UxYjkwNTQ4ZmRkMGU3M2Y3NmFlYzlmZTUw
ZjI0MWEzMmRlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE5LTAxLTA0ICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEluZGV4ZWREQjogbGVhayBJ
REJUcmFuc2FjdGlvbiBhbmQgVHJhbnNhY3Rpb25PcGVyYXRpb25JbXBsIGR1ZSB0byByZXRhaW4g
Y3ljbGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5
MzE2NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDY4OTE2ODg+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQnJlYWsgc29tZSByZXRhaW4gY3ljbGVz
IGJ5IHVzaW5nIFdlYWtQdHIuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFu
c2FjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJUcmFuc2FjdGlvbjo6SURCVHJhbnNh
Y3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6SURCVHJhbnNhY3Rpb246On5JREJUcmFuc2FjdGlv
bik6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uaDoKKyAgICAg
ICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uaDoKKyAg
ICAgICAgKFdlYkNvcmU6OklEQkNsaWVudDo6VHJhbnNhY3Rpb25PcGVyYXRpb246OlRyYW5zYWN0
aW9uT3BlcmF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OklEQkNsaWVudDo6VHJhbnNhY3Rpb25P
cGVyYXRpb246OnRyYW5zYWN0aW9uKToKKwogMjAxOS0wMS0wNCAgWmFsYW4gQnVqdGFzICA8emFs
YW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIEVSUk9SOiBwb3N0LWxheW91dDogZGlydHkg
cmVuZGVyZXIocykgaW4gV2ViQ29yZTo6UmVuZGVyVHJlZU5lZWRzTGF5b3V0Q2hlY2tlcjo6flJl
bmRlclRyZWVOZWVkc0xheW91dENoZWNrZXIoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwCmluZGV4IGI4MmI2NmExZDIzZjdhZjU0
MzgzYjI5MzNjMjUzZWM0MzM2MTM2MjYuLjk5MDgyMGQ4YjUyNDJjMDQ4ZDU3ZmZjZTkzNmQ4ZTZm
YzYxNjJkOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QlRyYW5zYWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJUcmFuc2FjdGlvbi5jcHAKQEAgLTc1LDcgKzc1LDcgQEAgSURCVHJhbnNhY3Rpb246OklEQlRy
YW5zYWN0aW9uKElEQkRhdGFiYXNlJiBkYXRhYmFzZSwgY29uc3QgSURCVHJhbnNhY3Rpb25JbmZv
JgogICAgICwgbV9pbmZvKGluZm8pCiAgICAgLCBtX3BlbmRpbmdPcGVyYXRpb25UaW1lcigqdGhp
cywgJklEQlRyYW5zYWN0aW9uOjpwZW5kaW5nT3BlcmF0aW9uVGltZXJGaXJlZCkKICAgICAsIG1f
Y29tcGxldGVkT3BlcmF0aW9uVGltZXIoKnRoaXMsICZJREJUcmFuc2FjdGlvbjo6Y29tcGxldGVk
T3BlcmF0aW9uVGltZXJGaXJlZCkKLSAgICAsIG1fb3BlbkRCUmVxdWVzdChyZXF1ZXN0KQorICAg
ICwgbV9vcGVuREJSZXF1ZXN0KG1ha2VXZWFrUHRyKHJlcXVlc3QpKQogICAgICwgbV9jdXJyZW50
bHlDb21wbGV0aW5nUmVxdWVzdChyZXF1ZXN0KQogCiB7CkBAIC0xMDYsNiArMTA2LDggQEAgSURC
VHJhbnNhY3Rpb246OklEQlRyYW5zYWN0aW9uKElEQkRhdGFiYXNlJiBkYXRhYmFzZSwgY29uc3Qg
SURCVHJhbnNhY3Rpb25JbmZvJgogSURCVHJhbnNhY3Rpb246On5JREJUcmFuc2FjdGlvbigpCiB7
CiAgICAgQVNTRVJUKCZtX2RhdGFiYXNlLT5vcmlnaW5UaHJlYWQoKSA9PSAmVGhyZWFkOjpjdXJy
ZW50KCkpOworICAgIG1fcGVuZGluZ09wZXJhdGlvblRpbWVyLnN0b3AoKTsKKyAgICBtX2NvbXBs
ZXRlZE9wZXJhdGlvblRpbWVyLnN0b3AoKTsKIH0KIAogSURCQ2xpZW50OjpJREJDb25uZWN0aW9u
UHJveHkmIElEQlRyYW5zYWN0aW9uOjpjb25uZWN0aW9uUHJveHkoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmgKaW5kZXggMWY3Njc1M2Jl
ZDViNTVhODcxMmQ3YTJkZjUyYmRkOGNmODBmOGM0Ni4uMTRlNjA2ZjljNDg2NDJiYzY3ZmRmY2M1
YTk3NWRkNGQzMDc2MjU4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCVHJhbnNhY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJUcmFuc2FjdGlvbi5oCkBAIC02NSw3ICs2NSw3IEBAIGNsYXNzIElEQkNvbm5lY3Rp
b25Qcm94eTsKIGNsYXNzIFRyYW5zYWN0aW9uT3BlcmF0aW9uOwogfQogCi1jbGFzcyBJREJUcmFu
c2FjdGlvbiA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxJREJUcmFuc2FjdGlvbj4sIHB1
YmxpYyBFdmVudFRhcmdldFdpdGhJbmxpbmVEYXRhLCBwdWJsaWMgSURCQWN0aXZlRE9NT2JqZWN0
IHsKK2NsYXNzIElEQlRyYW5zYWN0aW9uIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPElE
QlRyYW5zYWN0aW9uPiwgcHVibGljIEV2ZW50VGFyZ2V0V2l0aElubGluZURhdGEsIHB1YmxpYyBJ
REJBY3RpdmVET01PYmplY3QsIHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxJREJUcmFuc2FjdGlvbj4g
ewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8SURCVHJhbnNhY3Rpb24+IGNyZWF0ZShJREJEYXRh
YmFzZSYsIGNvbnN0IElEQlRyYW5zYWN0aW9uSW5mbyYpOwogICAgIHN0YXRpYyBSZWY8SURCVHJh
bnNhY3Rpb24+IGNyZWF0ZShJREJEYXRhYmFzZSYsIGNvbnN0IElEQlRyYW5zYWN0aW9uSW5mbyYs
IElEQk9wZW5EQlJlcXVlc3QmKTsKQEAgLTI0MSw3ICsyNDEsNyBAQCBwcml2YXRlOgogICAgIFRp
bWVyIG1fY29tcGxldGVkT3BlcmF0aW9uVGltZXI7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFRpbWVy
PiBtX2FjdGl2YXRpb25UaW1lcjsKIAotICAgIFJlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBtX29w
ZW5EQlJlcXVlc3Q7CisgICAgV2Vha1B0cjxJREJPcGVuREJSZXF1ZXN0PiBtX29wZW5EQlJlcXVl
c3Q7CiAKICAgICBEZXF1ZTxSZWZQdHI8SURCQ2xpZW50OjpUcmFuc2FjdGlvbk9wZXJhdGlvbj4+
IG1fcGVuZGluZ1RyYW5zYWN0aW9uT3BlcmF0aW9uUXVldWU7CiAgICAgRGVxdWU8SURCQ2xpZW50
OjpUcmFuc2FjdGlvbk9wZXJhdGlvbio+IG1fdHJhbnNhY3Rpb25PcGVyYXRpb25zSW5Qcm9ncmVz
c1F1ZXVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xp
ZW50L1RyYW5zYWN0aW9uT3BlcmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uaAppbmRleCA4ZGRiNTZlMTc4YjcyZWYy
MWE2NjZlYjE2OWRmYzE2ZWU5ODkyZGUzLi5lZGYyNmExNmI1MGQwZTI1MThmZjE4Njg4OWE2MTlm
OTUzMzRlZjBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9j
bGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uaApAQCAtMTExLDE0ICsxMTEs
MTQgQEAgcHVibGljOgogCiBwcm90ZWN0ZWQ6CiAgICAgVHJhbnNhY3Rpb25PcGVyYXRpb24oSURC
VHJhbnNhY3Rpb24mIHRyYW5zYWN0aW9uKQotICAgICAgICA6IG1fdHJhbnNhY3Rpb24odHJhbnNh
Y3Rpb24pCisgICAgICAgIDogbV90cmFuc2FjdGlvbihtYWtlV2Vha1B0cih0cmFuc2FjdGlvbikp
CiAgICAgICAgICwgbV9pZGVudGlmaWVyKHRyYW5zYWN0aW9uLmNvbm5lY3Rpb25Qcm94eSgpKQog
ICAgIHsKICAgICB9CiAKICAgICBUcmFuc2FjdGlvbk9wZXJhdGlvbihJREJUcmFuc2FjdGlvbiYs
IElEQlJlcXVlc3QmKTsKIAotICAgIFJlZjxJREJUcmFuc2FjdGlvbj4gbV90cmFuc2FjdGlvbjsK
KyAgICBXZWFrUHRyPElEQlRyYW5zYWN0aW9uPiBtX3RyYW5zYWN0aW9uOwogICAgIElEQlJlc291
cmNlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiAgICAgdWludDY0X3QgbV9vYmplY3RTdG9yZUlk
ZW50aWZpZXIgeyAwIH07CiAgICAgdWludDY0X3QgbV9pbmRleElkZW50aWZpZXIgeyAwIH07CkBA
IC0xMzIsNyArMTMyLDcgQEAgcHJpdmF0ZToKICAgICB1aW50NjRfdCBvYmplY3RTdG9yZUlkZW50
aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX29iamVjdFN0b3JlSWRlbnRpZmllcjsgfQogICAgIHVp
bnQ2NF90IGluZGV4SWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faW5kZXhJZGVudGlmaWVy
OyB9CiAgICAgSURCUmVzb3VyY2VJZGVudGlmaWVyKiBjdXJzb3JJZGVudGlmaWVyKCkgY29uc3Qg
eyByZXR1cm4gbV9jdXJzb3JJZGVudGlmaWVyLmdldCgpOyB9Ci0gICAgSURCVHJhbnNhY3Rpb24m
IHRyYW5zYWN0aW9uKCkgeyByZXR1cm4gbV90cmFuc2FjdGlvbi5nZXQoKTsgfQorICAgIElEQlRy
YW5zYWN0aW9uJiB0cmFuc2FjdGlvbigpIHsgcmV0dXJuICptX3RyYW5zYWN0aW9uOyB9CiAgICAg
SW5kZXhlZERCOjpJbmRleFJlY29yZFR5cGUgaW5kZXhSZWNvcmRUeXBlKCkgY29uc3QgeyByZXR1
cm4gbV9pbmRleFJlY29yZFR5cGU7IH0KIAogICAgIFJlZjxUaHJlYWQ+IG1fb3JpZ2luVGhyZWFk
IHsgVGhyZWFkOjpjdXJyZW50KCkgfTsKQEAgLTE0NiwxNyArMTQ2LDE1IEBAIHB1YmxpYzoKICAg
ICBUcmFuc2FjdGlvbk9wZXJhdGlvbkltcGwoSURCVHJhbnNhY3Rpb24mIHRyYW5zYWN0aW9uLCB2
b2lkIChJREJUcmFuc2FjdGlvbjo6KmNvbXBsZXRlTWV0aG9kKShjb25zdCBJREJSZXN1bHREYXRh
JiksIHZvaWQgKElEQlRyYW5zYWN0aW9uOjoqcGVyZm9ybU1ldGhvZCkoVHJhbnNhY3Rpb25PcGVy
YXRpb24mLCBBcmd1bWVudHMuLi4pLCBBcmd1bWVudHMmJi4uLiBhcmd1bWVudHMpCiAgICAgICAg
IDogVHJhbnNhY3Rpb25PcGVyYXRpb24odHJhbnNhY3Rpb24pCiAgICAgewotICAgICAgICBSZWZQ
dHI8VHJhbnNhY3Rpb25PcGVyYXRpb24+IHByb3RlY3RlZFRoaXModGhpcyk7Ci0KICAgICAgICAg
QVNTRVJUKHBlcmZvcm1NZXRob2QpOwotICAgICAgICBtX3BlcmZvcm1GdW5jdGlvbiA9IFtwcm90
ZWN0ZWRUaGlzLCB0aGlzLCBwZXJmb3JtTWV0aG9kLCBhcmd1bWVudHMuLi5dIHsKLSAgICAgICAg
ICAgICgmbV90cmFuc2FjdGlvbi5nZXQoKS0+KnBlcmZvcm1NZXRob2QpKCp0aGlzLCBhcmd1bWVu
dHMuLi4pOworICAgICAgICBtX3BlcmZvcm1GdW5jdGlvbiA9IFt0aGlzLCBwZXJmb3JtTWV0aG9k
LCBhcmd1bWVudHMuLi5dIHsKKyAgICAgICAgICAgIChtX3RyYW5zYWN0aW9uLmdldCgpLT4qcGVy
Zm9ybU1ldGhvZCkoKnRoaXMsIGFyZ3VtZW50cy4uLik7CiAgICAgICAgIH07CiAKICAgICAgICAg
aWYgKGNvbXBsZXRlTWV0aG9kKSB7Ci0gICAgICAgICAgICBtX2NvbXBsZXRlRnVuY3Rpb24gPSBb
cHJvdGVjdGVkVGhpcywgdGhpcywgY29tcGxldGVNZXRob2RdKGNvbnN0IElEQlJlc3VsdERhdGEm
IHJlc3VsdERhdGEpIHsKKyAgICAgICAgICAgIG1fY29tcGxldGVGdW5jdGlvbiA9IFt0aGlzLCBj
b21wbGV0ZU1ldGhvZF0oY29uc3QgSURCUmVzdWx0RGF0YSYgcmVzdWx0RGF0YSkgewogICAgICAg
ICAgICAgICAgIGlmIChjb21wbGV0ZU1ldGhvZCkKLSAgICAgICAgICAgICAgICAgICAgKCZtX3Ry
YW5zYWN0aW9uLmdldCgpLT4qY29tcGxldGVNZXRob2QpKHJlc3VsdERhdGEpOworICAgICAgICAg
ICAgICAgICAgICAobV90cmFuc2FjdGlvbi5nZXQoKS0+KmNvbXBsZXRlTWV0aG9kKShyZXN1bHRE
YXRhKTsKICAgICAgICAgICAgIH07CiAgICAgICAgIH0KICAgICB9CkBAIC0xNjQsMTggKzE2Miwx
NiBAQCBwdWJsaWM6CiAgICAgVHJhbnNhY3Rpb25PcGVyYXRpb25JbXBsKElEQlRyYW5zYWN0aW9u
JiB0cmFuc2FjdGlvbiwgSURCUmVxdWVzdCYgcmVxdWVzdCwgdm9pZCAoSURCVHJhbnNhY3Rpb246
Oipjb21wbGV0ZU1ldGhvZCkoSURCUmVxdWVzdCYsIGNvbnN0IElEQlJlc3VsdERhdGEmKSwgdm9p
ZCAoSURCVHJhbnNhY3Rpb246OipwZXJmb3JtTWV0aG9kKShUcmFuc2FjdGlvbk9wZXJhdGlvbiYs
IEFyZ3VtZW50cy4uLiksIEFyZ3VtZW50cyYmLi4uIGFyZ3VtZW50cykKICAgICAgICAgOiBUcmFu
c2FjdGlvbk9wZXJhdGlvbih0cmFuc2FjdGlvbiwgcmVxdWVzdCkKICAgICB7Ci0gICAgICAgIFJl
ZlB0cjxUcmFuc2FjdGlvbk9wZXJhdGlvbj4gcHJvdGVjdGVkVGhpcyh0aGlzKTsKLQogICAgICAg
ICBBU1NFUlQocGVyZm9ybU1ldGhvZCk7Ci0gICAgICAgIG1fcGVyZm9ybUZ1bmN0aW9uID0gW3By
b3RlY3RlZFRoaXMsIHRoaXMsIHBlcmZvcm1NZXRob2QsIGFyZ3VtZW50cy4uLl0gewotICAgICAg
ICAgICAgKCZtX3RyYW5zYWN0aW9uLmdldCgpLT4qcGVyZm9ybU1ldGhvZCkoKnRoaXMsIGFyZ3Vt
ZW50cy4uLik7CisgICAgICAgIG1fcGVyZm9ybUZ1bmN0aW9uID0gW3RoaXMsIHBlcmZvcm1NZXRo
b2QsIGFyZ3VtZW50cy4uLl0geworICAgICAgICAgICAgKG1fdHJhbnNhY3Rpb24uZ2V0KCktPipw
ZXJmb3JtTWV0aG9kKSgqdGhpcywgYXJndW1lbnRzLi4uKTsKICAgICAgICAgfTsKIAogICAgICAg
ICBpZiAoY29tcGxldGVNZXRob2QpIHsKICAgICAgICAgICAgIFJlZlB0cjxJREJSZXF1ZXN0PiBy
ZWZSZXF1ZXN0KCZyZXF1ZXN0KTsKLSAgICAgICAgICAgIG1fY29tcGxldGVGdW5jdGlvbiA9IFtw
cm90ZWN0ZWRUaGlzLCB0aGlzLCByZWZSZXF1ZXN0LCBjb21wbGV0ZU1ldGhvZF0oY29uc3QgSURC
UmVzdWx0RGF0YSYgcmVzdWx0RGF0YSkgeworICAgICAgICAgICAgbV9jb21wbGV0ZUZ1bmN0aW9u
ID0gW3RoaXMsIHJlZlJlcXVlc3QsIGNvbXBsZXRlTWV0aG9kXShjb25zdCBJREJSZXN1bHREYXRh
JiByZXN1bHREYXRhKSB7CiAgICAgICAgICAgICAgICAgaWYgKGNvbXBsZXRlTWV0aG9kKQotICAg
ICAgICAgICAgICAgICAgICAoJm1fdHJhbnNhY3Rpb24uZ2V0KCktPipjb21wbGV0ZU1ldGhvZCko
KnJlZlJlcXVlc3QsIHJlc3VsdERhdGEpOworICAgICAgICAgICAgICAgICAgICAobV90cmFuc2Fj
dGlvbi5nZXQoKS0+KmNvbXBsZXRlTWV0aG9kKSgqcmVmUmVxdWVzdCwgcmVzdWx0RGF0YSk7CiAg
ICAgICAgICAgICB9OwogICAgICAgICB9CiAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358803</attachid>
            <date>2019-01-10 10:05:34 -0800</date>
            <delta_ts>2019-01-10 12:00:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-193167-20190110100533.patch</filename>
            <type>text/plain</type>
            <size>3876</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5Nzc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjMzOTRkNzAxZjI1MzE1
ODJiY2IyZGRjMmE2ZDA4N2Q3YjEwYjU5Ni4uNmM3MzI2ZDFiMTJjMmQyNTc5OTcwNTM1YjQ2YzZh
NDE4Nzc3N2JkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE5LTAxLTEwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEluZGV4ZWREQjogbGVhayBJ
REJUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25PcGVyYXRpb24gYW5kIElEQlJlcXVlc3QgaW4gbGF5
b3V0IHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xOTMxNjcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ2ODkxNjg4PgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvIHNvbWUgY2xlYW51cCB0byBi
cmVhayByZXRhaW4gY3ljbGUgd2hlbiBjb250ZXh0IGlzIHN0b3BwZWQuIAorCisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvSURCT3BlbkRCUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJREJPcGVuREJSZXF1ZXN0OjpmaXJlU3VjY2Vzc0FmdGVyVmVyc2lvbkNoYW5nZUNvbW1pdCk6
CisgICAgICAgIChXZWJDb3JlOjpJREJPcGVuREJSZXF1ZXN0OjpjYW5jZWxGb3JTdG9wKToKKyAg
ICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0Lmg6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SURCVHJhbnNhY3Rpb246OmFib3J0T25TZXJ2ZXJBbmRDYW5jZWxSZXF1ZXN0cyk6CisgICAgICAg
IChXZWJDb3JlOjpJREJUcmFuc2FjdGlvbjo6c3RvcCk6CisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvY2xpZW50L1RyYW5zYWN0aW9uT3BlcmF0aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpJ
REJDbGllbnQ6OlRyYW5zYWN0aW9uT3BlcmF0aW9uOjpkb0NvbXBsZXRlKToKKwogMjAxOS0wMS0w
OSAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0JGQ11b
TWFyZ2luQ29sbGFwc2luZ10gQWRkIHN1cHBvcnQgZm9yIHBlY3VsaWFyIGNhc2VzLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT3BlbkRCUmVxdWVzdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmNw
cAppbmRleCA5MWNlOWM0Y2I5NDU0Y2ViYWExMDRmODk0M2NiNDJiZjUxYzYzNWQyLi5lOTFmMjkz
N2M0ZWQwZjMyN2NiMDQ1MDA2ZjQ3YzAyYTA0ZjgzMDlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmNwcApAQCAtMTE1LDYg
KzExNSw5IEBAIHZvaWQgSURCT3BlbkRCUmVxdWVzdDo6ZmlyZUVycm9yQWZ0ZXJWZXJzaW9uQ2hh
bmdlQ29tcGxldGlvbigpCiB2b2lkIElEQk9wZW5EQlJlcXVlc3Q6OmNhbmNlbEZvclN0b3AoKQog
ewogICAgIGNvbm5lY3Rpb25Qcm94eSgpLm9wZW5EQlJlcXVlc3RDYW5jZWxsZWQoeyBjb25uZWN0
aW9uUHJveHkoKSwgKnRoaXMgfSk7CisgICAgCisgICAgaWYgKG1fdHJhbnNhY3Rpb24gJiYgbV90
cmFuc2FjdGlvbi0+aXNWZXJzaW9uQ2hhbmdlKCkpCisgICAgICAgIG1fdHJhbnNhY3Rpb24tPnJl
bW92ZVJlcXVlc3QoKnRoaXMpOwogfQogCiB2b2lkIElEQk9wZW5EQlJlcXVlc3Q6OmRpc3BhdGNo
RXZlbnQoRXZlbnQmIGV2ZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwCmluZGV4IGI4MmI2NmExZDIzZjdhZjU0MzgzYjI5MzNj
MjUzZWM0MzM2MTM2MjYuLmI4NjkxNzdjMDY2YmEwMzgzMmUzYjgwNTJjMWFlYzA2MTdhODM3NDIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0
aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2Fj
dGlvbi5jcHAKQEAgLTI5NywxMSArMjk3LDEyIEBAIHZvaWQgSURCVHJhbnNhY3Rpb246OmFib3J0
T25TZXJ2ZXJBbmRDYW5jZWxSZXF1ZXN0cyhJREJDbGllbnQ6OlRyYW5zYWN0aW9uT3BlcmF0CiAg
ICAgYWJvcnRJblByb2dyZXNzT3BlcmF0aW9ucyhlcnJvcik7CiAKICAgICBmb3IgKGF1dG8mIG9w
ZXJhdGlvbiA6IG1fYWJvcnRRdWV1ZSkgewotICAgICAgICBtX2N1cnJlbnRseUNvbXBsZXRpbmdS
ZXF1ZXN0ID0gbnVsbHB0cjsKICAgICAgICAgbV90cmFuc2FjdGlvbk9wZXJhdGlvbnNJblByb2dy
ZXNzUXVldWUuYXBwZW5kKG9wZXJhdGlvbi5nZXQoKSk7CiAgICAgICAgIG9wZXJhdGlvbi0+ZG9D
b21wbGV0ZShJREJSZXN1bHREYXRhOjplcnJvcihvcGVyYXRpb24tPmlkZW50aWZpZXIoKSwgZXJy
b3IpKTsKKyAgICAgICAgbV9jdXJyZW50bHlDb21wbGV0aW5nUmVxdWVzdCA9IG51bGxwdHI7CiAg
ICAgfQogCisgICAgbV9hYm9ydFF1ZXVlLmNsZWFyKCk7CiAgICAgLy8gU2luY2Ugd2UncmUgYWJv
cnRpbmcsIGl0IHNob3VsZCBiZSBpbXBvc3NpYmxlIHRvIGhhdmUgcXVldWVkIGFueSBmdXJ0aGVy
IG9wZXJhdGlvbnMuCiAgICAgQVNTRVJUKG1fcGVuZGluZ1RyYW5zYWN0aW9uT3BlcmF0aW9uUXVl
dWUuaXNFbXB0eSgpKTsKIH0KQEAgLTMzOCw2ICszMzksOSBAQCB2b2lkIElEQlRyYW5zYWN0aW9u
OjpzdG9wKCkKIAogICAgIG1fY29udGV4dFN0b3BwZWQgPSB0cnVlOwogCisgICAgaWYgKGlzVmVy
c2lvbkNoYW5nZSgpKQorICAgICAgICBtX29wZW5EQlJlcXVlc3QgPSBudWxscHRyOworCiAgICAg
aWYgKGlzRmluaXNoZWRPckZpbmlzaGluZygpKQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9w
ZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L1RyYW5z
YWN0aW9uT3BlcmF0aW9uLmgKaW5kZXggOGRkYjU2ZTE3OGI3MmVmMjFhNjY2ZWIxNjlkZmMxNmVl
OTg5MmRlMy4uYTQ2YTFmNDExZjU5M2I0NTkxNzJkNTJjNmZhZWVlNDI4ZTAyNTFhMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L1RyYW5zYWN0aW9u
T3BlcmF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50
L1RyYW5zYWN0aW9uT3BlcmF0aW9uLmgKQEAgLTk4LDYgKzk4LDggQEAgcHVibGljOgogICAgICAg
ICAvLyBzbyB3ZSBuZWVkIHRvIGRvIHRoaXMgdHJpY2sgdG8gbnVsbCBpdCBvdXQgd2l0aG91dCBm
aXJzdCBkZXN0cm95aW5nIGl0LgogICAgICAgICBXVEY6OkZ1bmN0aW9uPHZvaWQgKGNvbnN0IElE
QlJlc3VsdERhdGEmKT4gb2xkQ29tcGxldGVGdW5jdGlvbjsKICAgICAgICAgc3RkOjpzd2FwKG1f
Y29tcGxldGVGdW5jdGlvbiwgb2xkQ29tcGxldGVGdW5jdGlvbik7CisgICAgICAgIAorICAgICAg
ICBtX3BlcmZvcm1GdW5jdGlvbiA9IHsgfTsKICAgICB9CiAKICAgICBjb25zdCBJREJSZXNvdXJj
ZUlkZW50aWZpZXImIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358815</attachid>
            <date>2019-01-10 12:01:04 -0800</date>
            <delta_ts>2019-01-11 12:21:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-193167-20190110120104.patch</filename>
            <type>text/plain</type>
            <size>4079</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5Nzc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjMzOTRkNzAxZjI1MzE1
ODJiY2IyZGRjMmE2ZDA4N2Q3YjEwYjU5Ni4uMDFhNjQ4NTg0YjVlNzFjMjU2YjY3NDhiM2IzODky
MDRhZmI0NDk0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE5LTAxLTEwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEluZGV4ZWREQjogbGVhayBJ
REJUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25PcGVyYXRpb24gYW5kIElEQlJlcXVlc3QgaW4gbGF5
b3V0IHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xOTMxNjcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ2ODkxNjg4PgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvIHNvbWUgY2xlYW51cCB0byBi
cmVhayByZXRhaW4gY3ljbGUgd2hlbiBjb250ZXh0IGlzIHN0b3BwZWQuIAorCisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvSURCT3BlbkRCUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJREJPcGVuREJSZXF1ZXN0OjpjYW5jZWxGb3JTdG9wKToKKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJUcmFuc2FjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJUcmFuc2Fj
dGlvbjo6YWJvcnRPblNlcnZlckFuZENhbmNlbFJlcXVlc3RzKToKKyAgICAgICAgKFdlYkNvcmU6
OklEQlRyYW5zYWN0aW9uOjpzdG9wKToKKyAgICAgICAgKFdlYkNvcmU6OklEQlRyYW5zYWN0aW9u
OjpyZW1vdmVSZXF1ZXN0KToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvVHJh
bnNhY3Rpb25PcGVyYXRpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6OklEQkNsaWVudDo6VHJhbnNh
Y3Rpb25PcGVyYXRpb246OmRvQ29tcGxldGUpOgorCiAyMDE5LTAxLTA5ICBaYWxhbiBCdWp0YXMg
IDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ11bQkZDXVtNYXJnaW5Db2xsYXBzaW5n
XSBBZGQgc3VwcG9ydCBmb3IgcGVjdWxpYXIgY2FzZXMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuY3BwCmluZGV4IDkxY2U5YzRj
Yjk0NTRjZWJhYTEwNGY4OTQzY2I0MmJmNTFjNjM1ZDIuLjQ0MTE4NzY0ZDZlMGE2YmZkNGFlZDM0
MWJlZDk4YTA1MWMzMDNiY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuY3BwCkBAIC0xMTUsNiArMTE1LDkgQEAgdm9pZCBJ
REJPcGVuREJSZXF1ZXN0OjpmaXJlRXJyb3JBZnRlclZlcnNpb25DaGFuZ2VDb21wbGV0aW9uKCkK
IHZvaWQgSURCT3BlbkRCUmVxdWVzdDo6Y2FuY2VsRm9yU3RvcCgpCiB7CiAgICAgY29ubmVjdGlv
blByb3h5KCkub3BlbkRCUmVxdWVzdENhbmNlbGxlZCh7IGNvbm5lY3Rpb25Qcm94eSgpLCAqdGhp
cyB9KTsKKworICAgIGlmIChtX3RyYW5zYWN0aW9uICYmIG1fdHJhbnNhY3Rpb24tPmlzVmVyc2lv
bkNoYW5nZSgpKQorICAgICAgICBtX3RyYW5zYWN0aW9uLT5yZW1vdmVSZXF1ZXN0KCp0aGlzKTsK
IH0KIAogdm9pZCBJREJPcGVuREJSZXF1ZXN0OjpkaXNwYXRjaEV2ZW50KEV2ZW50JiBldmVudCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0
aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9u
LmNwcAppbmRleCBiODJiNjZhMWQyM2Y3YWY1NDM4M2IyOTMzYzI1M2VjNDMzNjEzNjI2Li5iMmY2
NTBmNjFlYmI0YzAwMDM2NDQ5NTY1YTg1YmU5YWY3MjM1NDAxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwCkBAIC0yOTcsMTEg
KzI5NywxMiBAQCB2b2lkIElEQlRyYW5zYWN0aW9uOjphYm9ydE9uU2VydmVyQW5kQ2FuY2VsUmVx
dWVzdHMoSURCQ2xpZW50OjpUcmFuc2FjdGlvbk9wZXJhdAogICAgIGFib3J0SW5Qcm9ncmVzc09w
ZXJhdGlvbnMoZXJyb3IpOwogCiAgICAgZm9yIChhdXRvJiBvcGVyYXRpb24gOiBtX2Fib3J0UXVl
dWUpIHsKLSAgICAgICAgbV9jdXJyZW50bHlDb21wbGV0aW5nUmVxdWVzdCA9IG51bGxwdHI7CiAg
ICAgICAgIG1fdHJhbnNhY3Rpb25PcGVyYXRpb25zSW5Qcm9ncmVzc1F1ZXVlLmFwcGVuZChvcGVy
YXRpb24uZ2V0KCkpOwogICAgICAgICBvcGVyYXRpb24tPmRvQ29tcGxldGUoSURCUmVzdWx0RGF0
YTo6ZXJyb3Iob3BlcmF0aW9uLT5pZGVudGlmaWVyKCksIGVycm9yKSk7CisgICAgICAgIG1fY3Vy
cmVudGx5Q29tcGxldGluZ1JlcXVlc3QgPSBudWxscHRyOwogICAgIH0KIAorICAgIG1fYWJvcnRR
dWV1ZS5jbGVhcigpOwogICAgIC8vIFNpbmNlIHdlJ3JlIGFib3J0aW5nLCBpdCBzaG91bGQgYmUg
aW1wb3NzaWJsZSB0byBoYXZlIHF1ZXVlZCBhbnkgZnVydGhlciBvcGVyYXRpb25zLgogICAgIEFT
U0VSVChtX3BlbmRpbmdUcmFuc2FjdGlvbk9wZXJhdGlvblF1ZXVlLmlzRW1wdHkoKSk7CiB9CkBA
IC0zMzgsNiArMzM5LDkgQEAgdm9pZCBJREJUcmFuc2FjdGlvbjo6c3RvcCgpCiAKICAgICBtX2Nv
bnRleHRTdG9wcGVkID0gdHJ1ZTsKIAorICAgIGlmIChpc1ZlcnNpb25DaGFuZ2UoKSkKKyAgICAg
ICAgbV9vcGVuREJSZXF1ZXN0ID0gbnVsbHB0cjsKKwogICAgIGlmIChpc0ZpbmlzaGVkT3JGaW5p
c2hpbmcoKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0zNjgsNyArMzcyLDYgQEAgdm9pZCBJREJU
cmFuc2FjdGlvbjo6YWRkUmVxdWVzdChJREJSZXF1ZXN0JiByZXF1ZXN0KQogdm9pZCBJREJUcmFu
c2FjdGlvbjo6cmVtb3ZlUmVxdWVzdChJREJSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIEFTU0VS
VCgmbV9kYXRhYmFzZS0+b3JpZ2luVGhyZWFkKCkgPT0gJlRocmVhZDo6Y3VycmVudCgpKTsKLSAg
ICBBU1NFUlQobV9vcGVuUmVxdWVzdHMuY29udGFpbnMoJnJlcXVlc3QpKTsKICAgICBtX29wZW5S
ZXF1ZXN0cy5yZW1vdmUoJnJlcXVlc3QpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5o
CmluZGV4IDhkZGI1NmUxNzhiNzJlZjIxYTY2NmViMTY5ZGZjMTZlZTk4OTJkZTMuLjNlMDJkNTk3
MmUwNGZiN2VhMTY2ZWRmNjdhOTM3YzNjNzIxYTQ4OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJh
dGlvbi5oCkBAIC05OCw2ICs5OCw4IEBAIHB1YmxpYzoKICAgICAgICAgLy8gc28gd2UgbmVlZCB0
byBkbyB0aGlzIHRyaWNrIHRvIG51bGwgaXQgb3V0IHdpdGhvdXQgZmlyc3QgZGVzdHJveWluZyBp
dC4KICAgICAgICAgV1RGOjpGdW5jdGlvbjx2b2lkIChjb25zdCBJREJSZXN1bHREYXRhJik+IG9s
ZENvbXBsZXRlRnVuY3Rpb247CiAgICAgICAgIHN0ZDo6c3dhcChtX2NvbXBsZXRlRnVuY3Rpb24s
IG9sZENvbXBsZXRlRnVuY3Rpb24pOworCisgICAgICAgIG1fcGVyZm9ybUZ1bmN0aW9uID0geyB9
OwogICAgIH0KIAogICAgIGNvbnN0IElEQlJlc291cmNlSWRlbnRpZmllciYgaWRlbnRpZmllcigp
IGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>