<?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>154574</bug_id>
          
          <creation_ts>2016-02-22 23:38:00 -0800</creation_ts>
          <short_desc>Use std::make_unique&lt;&gt; when creating std::unique_ptr&lt;&gt;</short_desc>
          <delta_ts>2016-03-03 16:54:17 -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 Local 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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Gyuyoung Kim">gyuyoung.kim</reporter>
          <assigned_to name="Gyuyoung Kim">gyuyoung.kim</assigned_to>
          <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1167324</commentid>
    <comment_count>0</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2016-02-22 23:38:00 -0800</bug_when>
    <thetext>Remove unnecessary create() factory.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1167325</commentid>
    <comment_count>1</comment_count>
      <attachid>271992</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2016-02-22 23:39:59 -0800</bug_when>
    <thetext>Created attachment 271992
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1167385</commentid>
    <comment_count>2</comment_count>
      <attachid>271992</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2016-02-23 07:03:48 -0800</bug_when>
    <thetext>Comment on attachment 271992
Patch

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

&gt; Source/WebCore/Modules/webdatabase/DatabaseTracker.h:52
&gt; -    // FIXME: This is a hack so we can easily delete databases from the UI process in WebKit2.
&gt; -    WEBCORE_EXPORT static std::unique_ptr&lt;DatabaseTracker&gt; trackerWithDatabasePath(const String&amp; databasePath);
&gt; +    explicit DatabaseTracker(const String&amp; databasePath);

I&apos;d rather we kept this since we don&apos;t want people to create DatabaseTracker objects willy nilly. Having an explicit factory function makes that more clear.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168030</commentid>
    <comment_count>3</comment_count>
      <attachid>272175</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2016-02-24 22:40:32 -0800</bug_when>
    <thetext>Created attachment 272175
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168031</commentid>
    <comment_count>4</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2016-02-24 22:42:01 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 271992 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=271992&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/webdatabase/DatabaseTracker.h:52
&gt; &gt; -    // FIXME: This is a hack so we can easily delete databases from the UI process in WebKit2.
&gt; &gt; -    WEBCORE_EXPORT static std::unique_ptr&lt;DatabaseTracker&gt; trackerWithDatabasePath(const String&amp; databasePath);
&gt; &gt; +    explicit DatabaseTracker(const String&amp; databasePath);
&gt; 
&gt; I&apos;d rather we kept this since we don&apos;t want people to create DatabaseTracker
&gt; objects willy nilly. Having an explicit factory function makes that more
&gt; clear.

I see. Let&apos;s keep it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168090</commentid>
    <comment_count>5</comment_count>
      <attachid>272175</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2016-02-25 08:22:23 -0800</bug_when>
    <thetext>Comment on attachment 272175
Patch

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

&gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStatistics.h:47
&gt;      static std::unique_ptr&lt;Statistics&gt; open(const String&amp; cachePath);
&gt; +    explicit Statistics(const String&amp; databasePath);

As long as we&apos;re making the constructor public, let&apos;s get rid of Statistics::open, make the constructor take the cachePath, call pathByAppendingComponent in the new constructor, and replace the one call to Statistics::open with std::make_unique</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168428</commentid>
    <comment_count>6</comment_count>
      <attachid>272305</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2016-02-25 23:16:26 -0800</bug_when>
    <thetext>Created attachment 272305
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168467</commentid>
    <comment_count>7</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2016-02-26 02:28:55 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 272175 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=272175&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStatistics.h:47
&gt; &gt;      static std::unique_ptr&lt;Statistics&gt; open(const String&amp; cachePath);
&gt; &gt; +    explicit Statistics(const String&amp; databasePath);
&gt; 
&gt; As long as we&apos;re making the constructor public, let&apos;s get rid of
&gt; Statistics::open, make the constructor take the cachePath, call
&gt; pathByAppendingComponent in the new constructor, and replace the one call to
&gt; Statistics::open with std::make_unique

Ok, looks better it. Modified.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168501</commentid>
    <comment_count>8</comment_count>
      <attachid>272305</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-02-26 08:06:08 -0800</bug_when>
    <thetext>Comment on attachment 272305
Patch

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

&gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStatistics.cpp:-78
&gt; -    ASSERT(RunLoop::isMain());

What was the rationale for deleting this assertion?

&gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStatistics.cpp:-81
&gt; -    return std::unique_ptr&lt;Statistics&gt;(new Statistics(databasePath));

This is the line of code that we should have changed to use std::make_unique. I don’t think it was an obvious choice to remove the function entirely. I see some small problems that introduced that are not solved well.

&gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStatistics.h:46
&gt; -    static std::unique_ptr&lt;Statistics&gt; open(const String&amp; cachePath);
&gt; +    explicit Statistics(const String&amp; databasePath, const String&amp; cachePath = emptyString());

This doesn’t seem like a good change. It introduces a new source of error where you could pass in strings in the wrong order or be confused between the different strings.

If we want to make the constructor public then it should have only one argument, the same one that the public &quot;open&quot; function had.

I can’t figure out why we think the databasePath argument is needed. Who is calling the function with that non-empty? And if that function is needed it should be exposed in a private way, not unnecessarily exposed to public.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168502</commentid>
    <comment_count>9</comment_count>
      <attachid>272305</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-02-26 08:07:50 -0800</bug_when>
    <thetext>Comment on attachment 272305
Patch

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

&gt;&gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStatistics.h:46
&gt;&gt; +    explicit Statistics(const String&amp; databasePath, const String&amp; cachePath = emptyString());
&gt; 
&gt; This doesn’t seem like a good change. It introduces a new source of error where you could pass in strings in the wrong order or be confused between the different strings.
&gt; 
&gt; If we want to make the constructor public then it should have only one argument, the same one that the public &quot;open&quot; function had.
&gt; 
&gt; I can’t figure out why we think the databasePath argument is needed. Who is calling the function with that non-empty? And if that function is needed it should be exposed in a private way, not unnecessarily exposed to public.

Sorry, I missed Alex’s earlier comment.

I don’t agree that these two argument form of the constructor is the way to go. I’d rather see named functions if type is not going to distinguish what’s going on. This approach where we pass two strings, but only one must be non-empty, does not seem to be a good design.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168976</commentid>
    <comment_count>10</comment_count>
      <attachid>272305</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2016-02-27 23:57:51 -0800</bug_when>
    <thetext>Comment on attachment 272305
Patch

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

&gt;&gt;&gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStatistics.h:46
&gt;&gt;&gt; +    explicit Statistics(const String&amp; databasePath, const String&amp; cachePath = emptyString());
&gt;&gt; 
&gt;&gt; This doesn’t seem like a good change. It introduces a new source of error where you could pass in strings in the wrong order or be confused between the different strings.
&gt;&gt; 
&gt;&gt; If we want to make the constructor public then it should have only one argument, the same one that the public &quot;open&quot; function had.
&gt;&gt; 
&gt;&gt; I can’t figure out why we think the databasePath argument is needed. Who is calling the function with that non-empty? And if that function is needed it should be exposed in a private way, not unnecessarily exposed to public.
&gt; 
&gt; Sorry, I missed Alex’s earlier comment.
&gt; 
&gt; I don’t agree that these two argument form of the constructor is the way to go. I’d rather see named functions if type is not going to distinguish what’s going on. This approach where we pass two strings, but only one must be non-empty, does not seem to be a good design.

Do you mean it is better to keep open() function ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1169812</commentid>
    <comment_count>11</comment_count>
      <attachid>272655</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2016-03-02 06:54:26 -0800</bug_when>
    <thetext>Created attachment 272655
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1170403</commentid>
    <comment_count>12</comment_count>
      <attachid>272655</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-03 16:54:12 -0800</bug_when>
    <thetext>Comment on attachment 272655
Patch

Clearing flags on attachment: 272655

Committed r197532: &lt;http://trac.webkit.org/changeset/197532&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1170404</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-03 16:54:17 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>271992</attachid>
            <date>2016-02-22 23:39:59 -0800</date>
            <delta_ts>2016-02-24 22:40:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-154574-20160223163940.patch</filename>
            <type>text/plain</type>
            <size>10423</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk2ODgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmY5ZWM4ZWZkZTdjYTUw
OGZjYjdmYjhmZDk0Y2FiMTQ2YzI0ZGU2Ny4uYThmODEzMjhiZjkyYWI1NTUxMDkyNDlmNWU1ZTBk
ODg0YjE2ZWRlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE2LTAyLTIyICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZWR1Y2UgY3Jl
YXRlKCkgZmFjdG9yeSBmdW5jdGlvbiB3aGljaCByZXR1cm5zIHN0ZDo6dW5pcXVlX3B0cjw+Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTQ1NzQKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2Ugc3RkOjpt
YWtlX3VuaXF1ZTw+IGluc3RlYWQgb2YgY3JlYXRlKCkgZmFjdG9yeSBmdW5jdGlvbnMuCisKKyAg
ICAgICAgTm8gbmV3IHRlc3RzLCBubyBiZWhhdmlvciBjaGFuZ2VzLgorCisgICAgICAgICogTW9k
dWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRyYWNrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RGF0YWJhc2VUcmFja2VyOjp0cmFja2VyV2l0aERhdGFiYXNlUGF0aCk6IERlbGV0ZWQuCisgICAg
ICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRyYWNrZXIuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9tYWMvV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlci5tbToKKyAgICAgICAgKC1b
V2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlciB1cGRhdGVQb3dlckFzc2VydGlvbnNdKToKKwog
MjAxNi0wMi0yMSAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CiAKICAgICAgICAg
Q1NQOiBWaW9sYXRpb24gcmVwb3J0IHNob3VsZCBpbmNsdWRlIGNvbHVtbiBudW1iZXIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZwppbmRleCBmM2QxZWQ5OTNlYzUwMzlkOTcyNWM5MmUxZTg0MTBhYmVjMzUxYTNjLi5hY2Q2MzFi
NjZhYWM5MTQ1MDgyNDQzOGU1OGI3ODYwNDJkYzcyYTliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MjMgQEAKKzIwMTYtMDItMjIgIEd5dXlvdW5nIEtpbSAgPGd5dXlvdW5nLmtpbUB3ZWJraXQub3Jn
PgorCisgICAgICAgIFJlZHVjZSBjcmVhdGUoKSBmYWN0b3J5IGZ1bmN0aW9uIHdoaWNoIHJldHVy
bnMgc3RkOjp1bmlxdWVfcHRyPD4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE1NDU3NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFVzZSBzdGQ6Om1ha2VfdW5pcXVlPD4gaW5zdGVhZCBvZiBjcmVhdGUoKSBm
YWN0b3J5IGZ1bmN0aW9ucy4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdv
cmtDYWNoZVN0YXRpc3RpY3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0
YXRpc3RpY3M6Om9wZW4pOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtD
YWNoZVN0YXRpc3RpY3MuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2VmbC9ld2tfZGF0YWJh
c2VfbWFuYWdlci5jcHA6CisgICAgICAgIChFd2tEYXRhYmFzZU1hbmFnZXI6OmdldERhdGFiYXNl
T3JpZ2lucyk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3Rv
cmUuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpmZXRjaERhdGEpOgor
ICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpyZW1vdmVEYXRhKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6Y3JlYXRlQ29sb3JDaG9vc2VyKToKKwogMjAxNi0w
Mi0yMCAgT2xpdmllciBCbGluICA8b2xpdmllci5ibGluQHNvZnRhdGhvbWUuY29tPgogCiAgICAg
ICAgIFtjbWFrZV0gVXNlIElDVSBpbmNsdWRlIGRpcnMgaW4gV2ViS2l0MiBhbmQgV2ViS2l0VGVz
dFJ1bm5lcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9E
YXRhYmFzZVRyYWNrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9E
YXRhYmFzZVRyYWNrZXIuY3BwCmluZGV4IDFmZTlmMWFlYzY5NjNmZWEzOTY2MmE5N2UwYmJiZjE0
OWFiMWE3OTkuLjViNzkyMzhhMGRkOTNjZjQxODkyNDI4MTJjMjMwZmI5MjM0NzFlZDEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VUcmFja2Vy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlVHJh
Y2tlci5jcHAKQEAgLTU3LDExICs1Nyw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3Rk
Ojp1bmlxdWVfcHRyPERhdGFiYXNlVHJhY2tlcj4gRGF0YWJhc2VUcmFja2VyOjp0cmFja2VyV2l0
aERhdGFiYXNlUGF0aChjb25zdCBTdHJpbmcmIGRhdGFiYXNlUGF0aCkKLXsKLSAgICByZXR1cm4g
c3RkOjp1bmlxdWVfcHRyPERhdGFiYXNlVHJhY2tlcj4obmV3IERhdGFiYXNlVHJhY2tlcihkYXRh
YmFzZVBhdGgpKTsKLX0KLQogc3RhdGljIERhdGFiYXNlVHJhY2tlciogc3RhdGljVHJhY2tlciA9
IG51bGxwdHI7CiAKIHZvaWQgRGF0YWJhc2VUcmFja2VyOjppbml0aWFsaXplVHJhY2tlcihjb25z
dCBTdHJpbmcmIGRhdGFiYXNlUGF0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VUcmFja2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmRhdGFiYXNlL0RhdGFiYXNlVHJhY2tlci5oCmluZGV4IDVkNjA1NjBkNmQyZGMwZjU1ZDU4
MjQ2MGViMWU3YjhkOTQ4NjhiNzIuLmYxNGZjNTg3OWM4Y2YxNjk2ZGViYzRmZmEzMjE3YmI0YmUw
NDc4MWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0
YWJhc2VUcmFja2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9E
YXRhYmFzZVRyYWNrZXIuaApAQCAtNDksOCArNDksNyBAQCBjbGFzcyBTZWN1cml0eU9yaWdpbjsK
IGNsYXNzIERhdGFiYXNlVHJhY2tlciB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoRGF0YWJh
c2VUcmFja2VyKTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6Ci0gICAgLy8gRklY
TUU6IFRoaXMgaXMgYSBoYWNrIHNvIHdlIGNhbiBlYXNpbHkgZGVsZXRlIGRhdGFiYXNlcyBmcm9t
IHRoZSBVSSBwcm9jZXNzIGluIFdlYktpdDIuCi0gICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHN0
ZDo6dW5pcXVlX3B0cjxEYXRhYmFzZVRyYWNrZXI+IHRyYWNrZXJXaXRoRGF0YWJhc2VQYXRoKGNv
bnN0IFN0cmluZyYgZGF0YWJhc2VQYXRoKTsKKyAgICBleHBsaWNpdCBEYXRhYmFzZVRyYWNrZXIo
Y29uc3QgU3RyaW5nJiBkYXRhYmFzZVBhdGgpOwogCiAgICAgc3RhdGljIHZvaWQgaW5pdGlhbGl6
ZVRyYWNrZXIoY29uc3QgU3RyaW5nJiBkYXRhYmFzZVBhdGgpOwogCkBAIC03Nyw4ICs3Niw2IEBA
IHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNsb3NlQWxsRGF0YWJhc2VzKCk7CiAK
IHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRGF0YWJhc2VUcmFja2VyKGNvbnN0IFN0cmluZyYgZGF0
YWJhc2VQYXRoKTsKLQogICAgIGJvb2wgaGFzQWRlcXVhdGVRdW90YUZvck9yaWdpbihTZWN1cml0
eU9yaWdpbiosIHVuc2lnbmVkIGxvbmcgZXN0aW1hdGVkU2l6ZSwgRGF0YWJhc2VFcnJvciYpOwog
CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViVmlk
ZW9GdWxsc2NyZWVuQ29udHJvbGxlci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9X
ZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyLm1tCmluZGV4IDRlNWM1ZmNmOGI1YjViNmUxYTY3
MjFhYzIyMDllYWNiMzY1OGMwYWEuLjQ1MmY5Zjk3MzUwYjc2NzFhOTMzYTNmNzRhZjM4Yjg0OTYy
NTZlYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJWaWRlb0Z1
bGxzY3JlZW5Db250cm9sbGVyLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9X
ZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyLm1tCkBAIC0zNjMsNyArMzYzLDcgQEAgc3RhdGlj
IE5TV2luZG93ICpjcmVhdGVCYWNrZ3JvdW5kRnVsbHNjcmVlbldpbmRvdyhOU1JlY3QgZnJhbWUs
IGludCBsZXZlbCkKICAgICAKICAgICBpZiAocmF0ZSAmJiAhX2lzRW5kaW5nRnVsbHNjcmVlbikg
ewogICAgICAgICBpZiAoIV9kaXNwbGF5U2xlZXBEaXNhYmxlcikKLSAgICAgICAgICAgIF9kaXNw
bGF5U2xlZXBEaXNhYmxlciA9IERpc3BsYXlTbGVlcERpc2FibGVyOjpjcmVhdGUoImNvbS5hcHBs
ZS5XZWJDb3JlIC0gRnVsbHNjcmVlbiB2aWRlbyIpOworICAgICAgICAgICAgX2Rpc3BsYXlTbGVl
cERpc2FibGVyID0gc3RkOjptYWtlX3VuaXF1ZTxEaXNwbGF5U2xlZXBEaXNhYmxlcj4oImNvbS5h
cHBsZS5XZWJDb3JlIC0gRnVsbHNjcmVlbiB2aWRlbyIpOwogICAgIH0gZWxzZQogICAgICAgICBf
ZGlzcGxheVNsZWVwRGlzYWJsZXIgPSBudWxscHRyOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0aWNz
LmNwcAppbmRleCAyNjMzOTNkYjc1NmZkNmM5MDI4YWMyNmMxNTEzMzdiZTU0YzU1MDdjLi5hZGJm
Njk4YjZjOTc0NDVhMzc2MjgzYTk5YjU1NjM4OTE5NDIyZDk2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0aWNzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0
aXN0aWNzLmNwcApAQCAtNzgsNyArNzgsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8U3RhdGlzdGljcz4g
U3RhdGlzdGljczo6b3Blbihjb25zdCBTdHJpbmcmIGNhY2hlUGF0aCkKICAgICBBU1NFUlQoUnVu
TG9vcDo6aXNNYWluKCkpOwogCiAgICAgU3RyaW5nIGRhdGFiYXNlUGF0aCA9IFdlYkNvcmU6OnBh
dGhCeUFwcGVuZGluZ0NvbXBvbmVudChjYWNoZVBhdGgsIFN0YXRpc3RpY3NEYXRhYmFzZU5hbWUp
OwotICAgIHJldHVybiBzdGQ6OnVuaXF1ZV9wdHI8U3RhdGlzdGljcz4obmV3IFN0YXRpc3RpY3Mo
ZGF0YWJhc2VQYXRoKSk7CisgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8U3RhdGlzdGljcz4o
ZGF0YWJhc2VQYXRoKTsKIH0KIAogU3RhdGlzdGljczo6U3RhdGlzdGljcyhjb25zdCBTdHJpbmcm
IGRhdGFiYXNlUGF0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNz
L2NhY2hlL05ldHdvcmtDYWNoZVN0YXRpc3RpY3MuaCBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQ
cm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0YXRpc3RpY3MuaAppbmRleCA5ZjA0OGU3MjJlYmM5
NWVhODcxM2FhMTFjYzg0NTE4YTAwNDU5ZDUxLi5lYzI2MzhkMmJlNWM3ZTRmNjNmYWNjY2JjNGFi
MjFmMjM1OWY4ZDMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9j
YWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0aWNzLmgKKysrIGIvU291cmNlL1dlYktpdDIvTmV0d29y
a1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5oCkBAIC00NCw2ICs0NCw3IEBA
IG5hbWVzcGFjZSBOZXR3b3JrQ2FjaGUgewogY2xhc3MgU3RhdGlzdGljcyB7CiBwdWJsaWM6CiAg
ICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxTdGF0aXN0aWNzPiBvcGVuKGNvbnN0IFN0cmluZyYg
Y2FjaGVQYXRoKTsKKyAgICBleHBsaWNpdCBTdGF0aXN0aWNzKGNvbnN0IFN0cmluZyYgZGF0YWJh
c2VQYXRoKTsKIAogICAgIHZvaWQgY2xlYXIoKTsKIApAQCAtNTUsOCArNTYsNiBAQCBwdWJsaWM6
CiAgICAgdm9pZCByZWNvcmRSZXZhbGlkYXRpb25TdWNjZXNzKHVpbnQ2NF90IHdlYlBhZ2VJRCwg
Y29uc3QgS2V5JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jik7CiAKIHByaXZhdGU6
Ci0gICAgZXhwbGljaXQgU3RhdGlzdGljcyhjb25zdCBTdHJpbmcmIGRhdGFiYXNlUGF0aCk7Ci0K
ICAgICBXb3JrUXVldWUmIHNlcmlhbEJhY2tncm91bmRJT1F1ZXVlKCkgeyByZXR1cm4gbV9zZXJp
YWxCYWNrZ3JvdW5kSU9RdWV1ZS5nZXQoKTsgfQogCiAgICAgdm9pZCBpbml0aWFsaXplKGNvbnN0
IFN0cmluZyYgZGF0YWJhc2VQYXRoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvZWZsL2V3a19kYXRhYmFzZV9tYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvZWZsL2V3a19kYXRhYmFzZV9tYW5hZ2VyLmNwcAppbmRleCBkYWNmNzhmYTk0
ODcwYTcxYmJhNTYwNGQzM2M5YmFiNTIxZTcyZGMyLi4yMzg4YzdkNDUyYmFiZmJhYTJkNTZmZTMw
MDFkNjZmNmRmMWI4OGJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2VmbC9ld2tfZGF0YWJhc2VfbWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9lZmwvZXdrX2RhdGFiYXNlX21hbmFnZXIuY3BwCkBAIC01NCw3ICs1NCw3IEBAIHZv
aWQgRXdrRGF0YWJhc2VNYW5hZ2VyOjpnZXREYXRhYmFzZU9yaWdpbnMoRXdrX0RhdGFiYXNlX01h
bmFnZXJfR2V0X0RhdGFiYXNlX09yCiAgICAgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpTZWN1cml0
eU9yaWdpbj4+IG9yaWdpbnM7CiAgICAgVmVjdG9yPFJlZlB0cjxBUEk6Ok9iamVjdD4+IHNlY3Vy
aXR5T3JpZ2luczsKIAotICAgIFdlYkNvcmU6OkRhdGFiYXNlVHJhY2tlcjo6dHJhY2tlcldpdGhE
YXRhYmFzZVBhdGgoQVBJOjpXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0V2ViU1FMRGF0YWJhc2VE
aXJlY3RvcnkoKSktPm9yaWdpbnMob3JpZ2lucyk7CisgICAgc3RkOjptYWtlX3VuaXF1ZTxXZWJD
b3JlOjpEYXRhYmFzZVRyYWNrZXI+KEFQSTo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdFdlYlNR
TERhdGFiYXNlRGlyZWN0b3J5KCkpLT5vcmlnaW5zKG9yaWdpbnMpOwogICAgIHNlY3VyaXR5T3Jp
Z2lucy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG9yaWdpbnMuc2l6ZSgpKTsKIAogICAgIGZvciAo
Y29uc3QgYXV0byYgb3JpZ2luSWRlbnRpZmllciA6IG9yaWdpbnMpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAK
aW5kZXggY2UwYWU3ZTI2MDJhODVhYjFkNmFiYjMxNDI4ZjUyNTcwMzk0OGQwMy4uY2U4ZDBkMmJm
MWY5YWJhMTE4MGFiMjcyZjFjYmYwMjRhMTBjOGZiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcApAQCAt
MzQ0LDcgKzM0NCw3IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6ZmV0Y2hEYXRhKFdlYnNpdGVE
YXRhVHlwZXMgZGF0YVR5cGVzLCBzdGQ6OmZ1bmN0aW9uPHZvaWQKIAogICAgICAgICBtX3F1ZXVl
LT5kaXNwYXRjaChbd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnksIGNhbGxiYWNrQWdncmVnYXRvcl0g
ewogICAgICAgICAgICAgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4+IG9y
aWdpbnM7Ci0gICAgICAgICAgICBXZWJDb3JlOjpEYXRhYmFzZVRyYWNrZXI6OnRyYWNrZXJXaXRo
RGF0YWJhc2VQYXRoKHdlYlNRTERhdGFiYXNlRGlyZWN0b3J5LnN0cmluZygpKS0+b3JpZ2lucyhv
cmlnaW5zKTsKKyAgICAgICAgICAgIHN0ZDo6bWFrZV91bmlxdWU8V2ViQ29yZTo6RGF0YWJhc2VU
cmFja2VyPih3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeS5zdHJpbmcoKSktPm9yaWdpbnMob3JpZ2lu
cyk7CiAKICAgICAgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbY2FsbGJhY2tBZ2dy
ZWdhdG9yLCBvcmlnaW5zXSgpIG11dGFibGUgewogICAgICAgICAgICAgICAgIFdlYnNpdGVEYXRh
IHdlYnNpdGVEYXRhOwpAQCAtNTk1LDcgKzU5NSw3IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6
cmVtb3ZlRGF0YShXZWJzaXRlRGF0YVR5cGVzIGRhdGFUeXBlcywgc3RkOjpjaHJvbm86OnN5c3Rl
CiAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+YWRkUGVuZGluZ0NhbGxiYWNrKCk7CiAKICAg
ICAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3dlYlNRTERhdGFiYXNlRGlyZWN0b3J5LCBjYWxsYmFj
a0FnZ3JlZ2F0b3IsIG1vZGlmaWVkU2luY2VdIHsKLSAgICAgICAgICAgIFdlYkNvcmU6OkRhdGFi
YXNlVHJhY2tlcjo6dHJhY2tlcldpdGhEYXRhYmFzZVBhdGgod2ViU1FMRGF0YWJhc2VEaXJlY3Rv
cnkuc3RyaW5nKCkpLT5kZWxldGVEYXRhYmFzZXNNb2RpZmllZFNpbmNlKG1vZGlmaWVkU2luY2Up
OworICAgICAgICAgICAgc3RkOjptYWtlX3VuaXF1ZTxXZWJDb3JlOjpEYXRhYmFzZVRyYWNrZXI+
KHdlYlNRTERhdGFiYXNlRGlyZWN0b3J5LnN0cmluZygpKS0+ZGVsZXRlRGF0YWJhc2VzTW9kaWZp
ZWRTaW5jZShtb2RpZmllZFNpbmNlKTsKIAogICAgICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRp
c3BhdGNoKFtjYWxsYmFja0FnZ3JlZ2F0b3JdIHsKICAgICAgICAgICAgICAgICBjYWxsYmFja0Fn
Z3JlZ2F0b3ItPnJlbW92ZVBlbmRpbmdDYWxsYmFjaygpOwpAQCAtODQwLDcgKzg0MCw3IEBAIHZv
aWQgV2Vic2l0ZURhdGFTdG9yZTo6cmVtb3ZlRGF0YShXZWJzaXRlRGF0YVR5cGVzIGRhdGFUeXBl
cywgY29uc3QgVmVjdG9yPFdlYnNpCiAKICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5hZGRQ
ZW5kaW5nQ2FsbGJhY2soKTsKICAgICAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW29yaWdpbnMsIGNh
bGxiYWNrQWdncmVnYXRvciwgd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnldIHsKLSAgICAgICAgICAg
IGF1dG8gZGF0YWJhc2VUcmFja2VyID0gV2ViQ29yZTo6RGF0YWJhc2VUcmFja2VyOjp0cmFja2Vy
V2l0aERhdGFiYXNlUGF0aCh3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeS5zdHJpbmcoKSk7CisgICAg
ICAgICAgICBhdXRvIGRhdGFiYXNlVHJhY2tlciA9IHN0ZDo6bWFrZV91bmlxdWU8V2ViQ29yZTo6
RGF0YWJhc2VUcmFja2VyPih3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeS5zdHJpbmcoKSk7CiAKICAg
ICAgICAgICAgIGZvciAoY29uc3QgYXV0byYgb3JpZ2luIDogb3JpZ2lucykKICAgICAgICAgICAg
ICAgICBkYXRhYmFzZVRyYWNrZXItPmRlbGV0ZU9yaWdpbihvcmlnaW4uZ2V0KCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuY3BwCmluZGV4IDA5ZTMyNjI4YmU1ZGFhNDhhMWRkYzQ3NzU5NzY3ZDIxYjRj
MmJlZWEuLmQ5MTdkOTM2YTUyNDc0M2ZhZTI3NmI3MGUwZmQxZGJkYjBmNjFhNGMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5jcHAKQEAgLTcwMSw3ICs3MDEsNyBAQCBTdHJpbmcgV2ViQ2hyb21lQ2xp
ZW50OjpnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBTdHJpbmcmIHBhdGgpCiAjaWYgRU5B
QkxFKElOUFVUX1RZUEVfQ09MT1IpCiBzdGQ6OnVuaXF1ZV9wdHI8Q29sb3JDaG9vc2VyPiBXZWJD
aHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xvckNob29zZXJDbGllbnQqIGNsaWVu
dCwgY29uc3QgQ29sb3ImIGluaXRpYWxDb2xvcikKIHsKLSAgICByZXR1cm4gc3RkOjp1bmlxdWVf
cHRyPFdlYkNvbG9yQ2hvb3Nlcj4obmV3IFdlYkNvbG9yQ2hvb3NlcihtX3BhZ2UsIGNsaWVudCwg
aW5pdGlhbENvbG9yKSk7CisgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8V2ViQ29sb3JDaG9v
c2VyPihtX3BhZ2UsIGNsaWVudCwgaW5pdGlhbENvbG9yKTsKIH0KICNlbmRpZgogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>272175</attachid>
            <date>2016-02-24 22:40:32 -0800</date>
            <delta_ts>2016-02-25 23:16:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-154574-20160225154014.patch</filename>
            <type>text/plain</type>
            <size>3363</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk2OTcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWY4ZTdlODYxYzA0Y2Nl
NTQ3YTE1ZGM3MzVlYmE0ZWI4NDJlMmYwNS4uN2IyOGRiNWQ2MjY0NDA4MTQyMmYzOGIyMDk0ZTJi
YTg4N2Y3MGRlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE2LTAyLTI0ICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBVc2Ugc3RkOjpt
YWtlX3VuaXF1ZTw+IHdoZW4gY3JlYXRpbmcgc3RkOjp1bmlxdWVfcHRyPD4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDU3NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2Fj
aGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtD
YWNoZTo6U3RhdGlzdGljczo6b3Blbik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUv
TmV0d29ya0NhY2hlU3RhdGlzdGljcy5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xp
ZW50OjpjcmVhdGVDb2xvckNob29zZXIpOgorCiAyMDE2LTAyLTIyICBSeXVhbiBDaG9pICA8cnl1
YW4uY2hvaUBuYXZlcmNvcnAuY29tPgogCiAgICAgICAgIFtFRkxdIE1lcmdlIFdlYlZpZXcgYW5k
IFdlYlZpZXdFZmwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2Nh
Y2hlL05ldHdvcmtDYWNoZVN0YXRpc3RpY3MuY3BwIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1By
b2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5jcHAKaW5kZXggMjYzMzkzZGI3NTZm
ZDZjOTAyOGFjMjZjMTUxMzM3YmU1NGM1NTA3Yy4uYWRiZjY5OGI2Yzk3NDQ1YTM3NjI4M2E5OWI1
NTYzODkxOTQyMmQ5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3Mv
Y2FjaGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvTmV0
d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5jcHAKQEAgLTc4LDcgKzc4
LDcgQEAgc3RkOjp1bmlxdWVfcHRyPFN0YXRpc3RpY3M+IFN0YXRpc3RpY3M6Om9wZW4oY29uc3Qg
U3RyaW5nJiBjYWNoZVBhdGgpCiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKIAogICAg
IFN0cmluZyBkYXRhYmFzZVBhdGggPSBXZWJDb3JlOjpwYXRoQnlBcHBlbmRpbmdDb21wb25lbnQo
Y2FjaGVQYXRoLCBTdGF0aXN0aWNzRGF0YWJhc2VOYW1lKTsKLSAgICByZXR1cm4gc3RkOjp1bmlx
dWVfcHRyPFN0YXRpc3RpY3M+KG5ldyBTdGF0aXN0aWNzKGRhdGFiYXNlUGF0aCkpOworICAgIHJl
dHVybiBzdGQ6Om1ha2VfdW5pcXVlPFN0YXRpc3RpY3M+KGRhdGFiYXNlUGF0aCk7CiB9CiAKIFN0
YXRpc3RpY3M6OlN0YXRpc3RpY3MoY29uc3QgU3RyaW5nJiBkYXRhYmFzZVBhdGgpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0
aXN0aWNzLmggYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2Fj
aGVTdGF0aXN0aWNzLmgKaW5kZXggOWYwNDhlNzIyZWJjOTVlYTg3MTNhYTExY2M4NDUxOGEwMDQ1
OWQ1MS4uZWMyNjM4ZDJiZTVjN2U0ZjYzZmFjY2NiYzRhYjIxZjIzNTlmOGQzMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RhdGlz
dGljcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtD
YWNoZVN0YXRpc3RpY3MuaApAQCAtNDQsNiArNDQsNyBAQCBuYW1lc3BhY2UgTmV0d29ya0NhY2hl
IHsKIGNsYXNzIFN0YXRpc3RpY3MgewogcHVibGljOgogICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9w
dHI8U3RhdGlzdGljcz4gb3Blbihjb25zdCBTdHJpbmcmIGNhY2hlUGF0aCk7CisgICAgZXhwbGlj
aXQgU3RhdGlzdGljcyhjb25zdCBTdHJpbmcmIGRhdGFiYXNlUGF0aCk7CiAKICAgICB2b2lkIGNs
ZWFyKCk7CiAKQEAgLTU1LDggKzU2LDYgQEAgcHVibGljOgogICAgIHZvaWQgcmVjb3JkUmV2YWxp
ZGF0aW9uU3VjY2Vzcyh1aW50NjRfdCB3ZWJQYWdlSUQsIGNvbnN0IEtleSYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYpOwogCiBwcml2YXRlOgotICAgIGV4cGxpY2l0IFN0YXRpc3Rp
Y3MoY29uc3QgU3RyaW5nJiBkYXRhYmFzZVBhdGgpOwotCiAgICAgV29ya1F1ZXVlJiBzZXJpYWxC
YWNrZ3JvdW5kSU9RdWV1ZSgpIHsgcmV0dXJuIG1fc2VyaWFsQmFja2dyb3VuZElPUXVldWUuZ2V0
KCk7IH0KIAogICAgIHZvaWQgaW5pdGlhbGl6ZShjb25zdCBTdHJpbmcmIGRhdGFiYXNlUGF0aCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5jcHAKaW5kZXggYmY1N2NiZjI1NjQ0OWFkMWZhZGI5MzdjYmZl
YTlkOTM1NzM1NjNlMy4uNTFmNjBiMWYxODVmYjg0M2Y4MjVmYjYwNWFhYzc3YTdiMDhhN2Y0NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcApAQCAtNzAxLDcgKzcwMSw3IEBAIFN0cmluZyBXZWJD
aHJvbWVDbGllbnQ6OmdlbmVyYXRlUmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0aCkK
ICNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKIHN0ZDo6dW5pcXVlX3B0cjxDb2xvckNob29z
ZXI+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlQ29sb3JDaG9vc2VyKENvbG9yQ2hvb3NlckNsaWVu
dCogY2xpZW50LCBjb25zdCBDb2xvciYgaW5pdGlhbENvbG9yKQogewotICAgIHJldHVybiBzdGQ6
OnVuaXF1ZV9wdHI8V2ViQ29sb3JDaG9vc2VyPihuZXcgV2ViQ29sb3JDaG9vc2VyKG1fcGFnZSwg
Y2xpZW50LCBpbml0aWFsQ29sb3IpKTsKKyAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxXZWJD
b2xvckNob29zZXI+KG1fcGFnZSwgY2xpZW50LCBpbml0aWFsQ29sb3IpOwogfQogI2VuZGlmCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>272305</attachid>
            <date>2016-02-25 23:16:26 -0800</date>
            <delta_ts>2016-03-02 06:54:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-154574-20160226161608.patch</filename>
            <type>text/plain</type>
            <size>4858</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk2OTcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWY4ZTdlODYxYzA0Y2Nl
NTQ3YTE1ZGM3MzVlYmE0ZWI4NDJlMmYwNS4uZjdhYmUwZGQ3OTIyOWUzNTA4MGQyYTE1YmNkODI2
OTRjYmRiNjlhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE2LTAyLTI1ICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBVc2Ugc3RkOjpt
YWtlX3VuaXF1ZTw+IHdoZW4gY3JlYXRpbmcgc3RkOjp1bmlxdWVfcHRyPD4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDU3NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2Fj
aGUvTmV0d29ya0NhY2hlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpDYWNo
ZTo6aW5pdGlhbGl6ZSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0Nh
Y2hlU3RhdGlzdGljcy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6U3RhdGlz
dGljczo6U3RhdGlzdGljcyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6U3RhdGlz
dGljczo6b3Blbik6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0
d29ya0NhY2hlU3RhdGlzdGljcy5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50
OjpjcmVhdGVDb2xvckNob29zZXIpOgorCiAyMDE2LTAyLTIyICBSeXVhbiBDaG9pICA8cnl1YW4u
Y2hvaUBuYXZlcmNvcnAuY29tPgogCiAgICAgICAgIFtFRkxdIE1lcmdlIFdlYlZpZXcgYW5kIFdl
YlZpZXdFZmwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hl
L05ldHdvcmtDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9O
ZXR3b3JrQ2FjaGUuY3BwCmluZGV4IGEwZTFkMjlkNmM4MjAzODA1NGFkZTA3MDFhODYxY2RkZmQw
ODBmNjUuLjAyZGZmMjAzZGI0NDRiMWNiY2I3MjZjMDNiMzEwZDczNmVjZTk2NjUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZS5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlLmNw
cApAQCAtODIsNyArODIsNyBAQCBib29sIENhY2hlOjppbml0aWFsaXplKGNvbnN0IFN0cmluZyYg
Y2FjaGVQYXRoLCBjb25zdCBQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogI2VuZGlmCiAKICAgICBp
ZiAocGFyYW1ldGVycy5lbmFibGVFZmZpY2FjeUxvZ2dpbmcpCi0gICAgICAgIG1fc3RhdGlzdGlj
cyA9IFN0YXRpc3RpY3M6Om9wZW4oY2FjaGVQYXRoKTsKKyAgICAgICAgbV9zdGF0aXN0aWNzID0g
c3RkOjptYWtlX3VuaXF1ZTxTdGF0aXN0aWNzPihlbXB0eVN0cmluZygpLCBjYWNoZVBhdGgpOwog
CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgLy8gVHJpZ2dlcnMgd2l0aCAibm90aWZ5dXRpbCAt
cCBjb20uYXBwbGUuV2ViS2l0LkNhY2hlLmR1bXAiLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0aWNzLmNw
cAppbmRleCAyNjMzOTNkYjc1NmZkNmM5MDI4YWMyNmMxNTEzMzdiZTU0YzU1MDdjLi5kMDI1ZDA0
ZTBmMjM3YmY5YTlkODJhNDVjYzE3YTIzNmUyOWVjYTQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0aWNzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0
aWNzLmNwcApAQCAtNzMsMTkgKzczLDEyIEBAIHN0YXRpYyBib29sIGV4ZWN1dGVTUUxTdGF0ZW1l
bnQoV2ViQ29yZTo6U1FMaXRlU3RhdGVtZW50JiBzdGF0ZW1lbnQpCiAgICAgcmV0dXJuIHRydWU7
CiB9CiAKLXN0ZDo6dW5pcXVlX3B0cjxTdGF0aXN0aWNzPiBTdGF0aXN0aWNzOjpvcGVuKGNvbnN0
IFN0cmluZyYgY2FjaGVQYXRoKQotewotICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7Ci0K
LSAgICBTdHJpbmcgZGF0YWJhc2VQYXRoID0gV2ViQ29yZTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9u
ZW50KGNhY2hlUGF0aCwgU3RhdGlzdGljc0RhdGFiYXNlTmFtZSk7Ci0gICAgcmV0dXJuIHN0ZDo6
dW5pcXVlX3B0cjxTdGF0aXN0aWNzPihuZXcgU3RhdGlzdGljcyhkYXRhYmFzZVBhdGgpKTsKLX0K
LQotU3RhdGlzdGljczo6U3RhdGlzdGljcyhjb25zdCBTdHJpbmcmIGRhdGFiYXNlUGF0aCkKK1N0
YXRpc3RpY3M6OlN0YXRpc3RpY3MoY29uc3QgU3RyaW5nJiBkYXRhYmFzZVBhdGgsIGNvbnN0IFN0
cmluZyYgY2FjaGVQYXRoKQogICAgIDogbV9zZXJpYWxCYWNrZ3JvdW5kSU9RdWV1ZShXb3JrUXVl
dWU6OmNyZWF0ZSgiY29tLmFwcGxlLldlYktpdC5DYWNoZS5TdGF0aXN0aWNzLkJhY2tncm91bmQi
LCBXb3JrUXVldWU6OlR5cGU6OlNlcmlhbCwgV29ya1F1ZXVlOjpRT1M6OkJhY2tncm91bmQpKQog
ICAgICwgbV93cml0ZVRpbWVyKCp0aGlzLCAmU3RhdGlzdGljczo6d3JpdGVUaW1lckZpcmVkKQog
ewotICAgIGluaXRpYWxpemUoZGF0YWJhc2VQYXRoKTsKKyAgICBTdHJpbmcgcGF0aCA9IGRhdGFi
YXNlUGF0aC5pc0VtcHR5KCkgPyBXZWJDb3JlOjpwYXRoQnlBcHBlbmRpbmdDb21wb25lbnQoY2Fj
aGVQYXRoLCBTdGF0aXN0aWNzRGF0YWJhc2VOYW1lKSA6IGRhdGFiYXNlUGF0aDsKKyAgICBpbml0
aWFsaXplKHBhdGgpOwogfQogCiB2b2lkIFN0YXRpc3RpY3M6OmluaXRpYWxpemUoY29uc3QgU3Ry
aW5nJiBkYXRhYmFzZVBhdGgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0aWNzLmggYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3
b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0aWNzLmgKaW5kZXggOWYwNDhlNzIy
ZWJjOTVlYTg3MTNhYTExY2M4NDUxOGEwMDQ1OWQ1MS4uZGNmNDJlNDI2ZGIxNTFiN2FiNGJlODIx
OTk3OTc3MTkxNGY1ZWUwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nl
c3MvY2FjaGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL05l
dHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0YXRpc3RpY3MuaApAQCAtNDMsNyArNDMs
NyBAQCBuYW1lc3BhY2UgTmV0d29ya0NhY2hlIHsKIAogY2xhc3MgU3RhdGlzdGljcyB7CiBwdWJs
aWM6Ci0gICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxTdGF0aXN0aWNzPiBvcGVuKGNvbnN0IFN0
cmluZyYgY2FjaGVQYXRoKTsKKyAgICBleHBsaWNpdCBTdGF0aXN0aWNzKGNvbnN0IFN0cmluZyYg
ZGF0YWJhc2VQYXRoLCBjb25zdCBTdHJpbmcmIGNhY2hlUGF0aCA9IGVtcHR5U3RyaW5nKCkpOwog
CiAgICAgdm9pZCBjbGVhcigpOwogCkBAIC01NSw4ICs1NSw2IEBAIHB1YmxpYzoKICAgICB2b2lk
IHJlY29yZFJldmFsaWRhdGlvblN1Y2Nlc3ModWludDY0X3Qgd2ViUGFnZUlELCBjb25zdCBLZXkm
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKIAogcHJpdmF0ZToKLSAgICBleHBs
aWNpdCBTdGF0aXN0aWNzKGNvbnN0IFN0cmluZyYgZGF0YWJhc2VQYXRoKTsKLQogICAgIFdvcmtR
dWV1ZSYgc2VyaWFsQmFja2dyb3VuZElPUXVldWUoKSB7IHJldHVybiBtX3NlcmlhbEJhY2tncm91
bmRJT1F1ZXVlLmdldCgpOyB9CiAKICAgICB2b2lkIGluaXRpYWxpemUoY29uc3QgU3RyaW5nJiBk
YXRhYmFzZVBhdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IGJmNTdjYmYyNTY0NDlh
ZDFmYWRiOTM3Y2JmZWE5ZDkzNTczNTYzZTMuLjUxZjYwYjFmMTg1ZmI4NDNmODI1ZmI2MDVhYWM3
N2E3YjA4YTdmNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTcwMSw3ICs3MDEsNyBA
QCBTdHJpbmcgV2ViQ2hyb21lQ2xpZW50OjpnZW5lcmF0ZVJlcGxhY2VtZW50RmlsZShjb25zdCBT
dHJpbmcmIHBhdGgpCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCiBzdGQ6OnVuaXF1ZV9w
dHI8Q29sb3JDaG9vc2VyPiBXZWJDaHJvbWVDbGllbnQ6OmNyZWF0ZUNvbG9yQ2hvb3NlcihDb2xv
ckNob29zZXJDbGllbnQqIGNsaWVudCwgY29uc3QgQ29sb3ImIGluaXRpYWxDb2xvcikKIHsKLSAg
ICByZXR1cm4gc3RkOjp1bmlxdWVfcHRyPFdlYkNvbG9yQ2hvb3Nlcj4obmV3IFdlYkNvbG9yQ2hv
b3NlcihtX3BhZ2UsIGNsaWVudCwgaW5pdGlhbENvbG9yKSk7CisgICAgcmV0dXJuIHN0ZDo6bWFr
ZV91bmlxdWU8V2ViQ29sb3JDaG9vc2VyPihtX3BhZ2UsIGNsaWVudCwgaW5pdGlhbENvbG9yKTsK
IH0KICNlbmRpZgogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>272655</attachid>
            <date>2016-03-02 06:54:26 -0800</date>
            <delta_ts>2016-03-03 16:54:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-154574-20160302235409.patch</filename>
            <type>text/plain</type>
            <size>3399</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NDQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZTk0ZTkyNTc0NTA4MDEw
NDBkMDMwMTlkZTk5ZDU1OWM3NzkwNzA3MC4uNTQ3YzgzNDhkNmI4ZDc5ZjM1ODZjMjc4ZDVmY2Nl
NGFkZWI1ZjM3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE2LTAzLTAyICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBVc2Ugc3RkOjpt
YWtlX3VuaXF1ZTw+IHdoZW4gY3JlYXRpbmcgc3RkOjp1bmlxdWVfcHRyPD4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDU3NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2Fj
aGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtD
YWNoZTo6U3RhdGlzdGljczo6b3Blbik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUv
TmV0d29ya0NhY2hlU3RhdGlzdGljcy5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xp
ZW50OjpjcmVhdGVDb2xvckNob29zZXIpOgorCiAyMDE2LTAyLTI5ICBBZGEgQ2hhbiAgPGFkYWNo
YW5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkb3B0IHRoZSBuZXcgdmVyc2lvbiBvZiBBVk91dHB1
dERldmljZU1lbnVDb250cm9sbGVyJ3Mgc2hvd01lbnVGb3JSZWN0IG1ldGhvZC4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0YXRp
c3RpY3MuY3BwIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0Nh
Y2hlU3RhdGlzdGljcy5jcHAKaW5kZXggMjYzMzkzZGI3NTZmZDZjOTAyOGFjMjZjMTUxMzM3YmU1
NGM1NTA3Yy4uYWRiZjY5OGI2Yzk3NDQ1YTM3NjI4M2E5OWI1NTYzODkxOTQyMmQ5NiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3Rh
dGlzdGljcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0
d29ya0NhY2hlU3RhdGlzdGljcy5jcHAKQEAgLTc4LDcgKzc4LDcgQEAgc3RkOjp1bmlxdWVfcHRy
PFN0YXRpc3RpY3M+IFN0YXRpc3RpY3M6Om9wZW4oY29uc3QgU3RyaW5nJiBjYWNoZVBhdGgpCiAg
ICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKIAogICAgIFN0cmluZyBkYXRhYmFzZVBhdGgg
PSBXZWJDb3JlOjpwYXRoQnlBcHBlbmRpbmdDb21wb25lbnQoY2FjaGVQYXRoLCBTdGF0aXN0aWNz
RGF0YWJhc2VOYW1lKTsKLSAgICByZXR1cm4gc3RkOjp1bmlxdWVfcHRyPFN0YXRpc3RpY3M+KG5l
dyBTdGF0aXN0aWNzKGRhdGFiYXNlUGF0aCkpOworICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVl
PFN0YXRpc3RpY3M+KGRhdGFiYXNlUGF0aCk7CiB9CiAKIFN0YXRpc3RpY3M6OlN0YXRpc3RpY3Mo
Y29uc3QgU3RyaW5nJiBkYXRhYmFzZVBhdGgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9O
ZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0aWNzLmggYi9Tb3VyY2UvV2Vi
S2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdGF0aXN0aWNzLmgKaW5kZXgg
OWYwNDhlNzIyZWJjOTVlYTg3MTNhYTExY2M4NDUxOGEwMDQ1OWQ1MS4uZWMyNjM4ZDJiZTVjN2U0
ZjYzZmFjY2NiYzRhYjIxZjIzNTlmOGQzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0
d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RhdGlzdGljcy5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0YXRpc3RpY3MuaApAQCAt
NDQsNiArNDQsNyBAQCBuYW1lc3BhY2UgTmV0d29ya0NhY2hlIHsKIGNsYXNzIFN0YXRpc3RpY3Mg
ewogcHVibGljOgogICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8U3RhdGlzdGljcz4gb3Blbihj
b25zdCBTdHJpbmcmIGNhY2hlUGF0aCk7CisgICAgZXhwbGljaXQgU3RhdGlzdGljcyhjb25zdCBT
dHJpbmcmIGRhdGFiYXNlUGF0aCk7CiAKICAgICB2b2lkIGNsZWFyKCk7CiAKQEAgLTU1LDggKzU2
LDYgQEAgcHVibGljOgogICAgIHZvaWQgcmVjb3JkUmV2YWxpZGF0aW9uU3VjY2Vzcyh1aW50NjRf
dCB3ZWJQYWdlSUQsIGNvbnN0IEtleSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
OwogCiBwcml2YXRlOgotICAgIGV4cGxpY2l0IFN0YXRpc3RpY3MoY29uc3QgU3RyaW5nJiBkYXRh
YmFzZVBhdGgpOwotCiAgICAgV29ya1F1ZXVlJiBzZXJpYWxCYWNrZ3JvdW5kSU9RdWV1ZSgpIHsg
cmV0dXJuIG1fc2VyaWFsQmFja2dyb3VuZElPUXVldWUuZ2V0KCk7IH0KIAogICAgIHZvaWQgaW5p
dGlhbGl6ZShjb25zdCBTdHJpbmcmIGRhdGFiYXNlUGF0aCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5j
cHAKaW5kZXggZDFiOTg1OWVhOWY0NDAwNzZhMzM5MzQyYzI4OTUyZTYzODQwM2FmYy4uYmRmYjMw
MDU1YmU3MDVkOWZmOTQ4NDUyYjBhYzhmYmZkODFmMTRlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmNwcApAQCAtNzAxLDcgKzcwMSw3IEBAIFN0cmluZyBXZWJDaHJvbWVDbGllbnQ6OmdlbmVyYXRl
UmVwbGFjZW1lbnRGaWxlKGNvbnN0IFN0cmluZyYgcGF0aCkKICNpZiBFTkFCTEUoSU5QVVRfVFlQ
RV9DT0xPUikKIHN0ZDo6dW5pcXVlX3B0cjxDb2xvckNob29zZXI+IFdlYkNocm9tZUNsaWVudDo6
Y3JlYXRlQ29sb3JDaG9vc2VyKENvbG9yQ2hvb3NlckNsaWVudCogY2xpZW50LCBjb25zdCBDb2xv
ciYgaW5pdGlhbENvbG9yKQogewotICAgIHJldHVybiBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29sb3JD
aG9vc2VyPihuZXcgV2ViQ29sb3JDaG9vc2VyKG1fcGFnZSwgY2xpZW50LCBpbml0aWFsQ29sb3Ip
KTsKKyAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxXZWJDb2xvckNob29zZXI+KG1fcGFnZSwg
Y2xpZW50LCBpbml0aWFsQ29sb3IpOwogfQogI2VuZGlmCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>