<?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>104166</bug_id>
          
          <creation_ts>2012-12-05 13:48:33 -0800</creation_ts>
          <short_desc>Navigation begun in response to a drag should have a unique NavigationType</short_desc>
          <delta_ts>2012-12-14 11:02:15 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>ASSIGNED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Conrad Shultz">conrad_shultz</reporter>
          <assigned_to name="Conrad Shultz">conrad_shultz</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>japhet</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>784079</commentid>
    <comment_count>0</comment_count>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2012-12-05 13:48:33 -0800</bug_when>
    <thetext>Currently, navigation commenced in DragController::performDrag(), via FrameLoader::load(), ends up as type NavigationTypeOther. In certain situations it would be desirable for client code to be able to distinguish drag-initiated navigation from other types of navigation, so a new navigation type should be declared, to be used by performDrag().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786208</commentid>
    <comment_count>1</comment_count>
      <attachid>178291</attachid>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2012-12-07 15:03:37 -0800</bug_when>
    <thetext>Created attachment 178291
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786213</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-07 15:09:57 -0800</bug_when>
    <thetext>Attachment 178291 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebKit2/ChangeLog:11:  Line contains tab character.  [whitespace/tab] [5]
Source/WebKit2/ChangeLog:12:  Line contains tab character.  [whitespace/tab] [5]
Source/WebKit2/ChangeLog:16:  Line contains tab character.  [whitespace/tab] [5]
Source/WebCore/ChangeLog:8:  Line contains tab character.  [whitespace/tab] [5]
Source/WebCore/ChangeLog:14:  Line contains tab character.  [whitespace/tab] [5]
Source/WebCore/ChangeLog:16:  Line contains tab character.  [whitespace/tab] [5]
Source/WebCore/ChangeLog:17:  Line contains tab character.  [whitespace/tab] [5]
Source/WebCore/ChangeLog:21:  Line contains tab character.  [whitespace/tab] [5]
Source/WebCore/ChangeLog:24:  Line contains tab character.  [whitespace/tab] [5]
Source/WebCore/ChangeLog:25:  Line contains tab character.  [whitespace/tab] [5]
Source/WebCore/ChangeLog:29:  Line contains tab character.  [whitespace/tab] [5]
Source/WebKit2/Shared/API/c/WKPageLoadTypes.h:39:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Source/WebKit2/Shared/API/c/WKPageLoadTypes.h:40:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 13 in 8 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786277</commentid>
    <comment_count>3</comment_count>
      <attachid>178299</attachid>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2012-12-07 16:30:02 -0800</bug_when>
    <thetext>Created attachment 178299
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786285</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-07 16:33:26 -0800</bug_when>
    <thetext>Attachment 178299 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebKit2/Shared/API/c/WKPageLoadTypes.h:39:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Source/WebKit2/Shared/API/c/WKPageLoadTypes.h:40:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 2 in 8 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786360</commentid>
    <comment_count>5</comment_count>
      <attachid>178299</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-07 18:55:46 -0800</bug_when>
    <thetext>Comment on attachment 178299
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        Currently, navigation commenced in DragController::performDrag(), via FrameLoader::load(), ends up as type NavigationTypeOther. In certain situations it would be desirable for client code to be able to distinguish drag-initiated navigation from other types of navigation. To this end, this patch adds a new navigation type (NavigationTypeDragInitiated) and an associated WKFrameNavigationType (kWKFrameNavigationTypeDragInitiated), and revises, particularly, DragController and FrameLoader to set this navigation type accordingly.

Please wrap lines.

&gt; Source/WebKit2/ChangeLog:8
&gt; +        Currently, navigation commenced in DragController::performDrag(), via FrameLoader::load(), ends up as type NavigationTypeOther. In certain situations it would be desirable for client code to be able to distinguish drag-initiated navigation from other types of navigation. To this end, this patch adds a new navigation type (NavigationTypeDragInitiated) and an associated WKFrameNavigationType (kWKFrameNavigationTypeDragInitiated), and revises, particularly, DragController and FrameLoader to set this navigation type accordingly.

Ditto. Also, you don’t have to repeat this description here since it’s included in WebCore.

&gt; Source/WebCore/loader/FrameLoader.cpp:1266
&gt; +void FrameLoader::load(const FrameLoadRequest&amp; passedRequest, bool isDrag)

Would it make sense to add a new member variable to FrameLoadRequest or add a new type to FrameLoadType instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786361</commentid>
    <comment_count>6</comment_count>
      <attachid>178299</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-07 18:56:27 -0800</bug_when>
    <thetext>Comment on attachment 178299
Patch

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

&gt; Source/WebCore/loader/FrameLoader.cpp:1297
&gt; +    if (isDrag)
&gt; +        loader.get()-&gt;setTriggeringAction(NavigationAction(request.resourceRequest(), NavigationTypeDragInitiated));

I don’t think it makes much sense to override the action here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786950</commentid>
    <comment_count>7</comment_count>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2012-12-09 20:42:48 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; 
&gt; Please wrap lines.

Will fix.

&gt; 
&gt; Ditto. Also, you don’t have to repeat this description here since it’s included in WebCore.

Ditto. (It wasn&apos;t clear to me from the contributor instructions what to do when a patch spans multiple sub-projects; now I know.

&gt; 
&gt; &gt; Source/WebCore/loader/FrameLoader.cpp:1266
&gt; &gt; +void FrameLoader::load(const FrameLoadRequest&amp; passedRequest, bool isDrag)
&gt; 
&gt; Would it make sense to add a new member variable to FrameLoadRequest or add a new type to FrameLoadType instead?

What were you thinking in terms of a new FrameLoadType? From what I can see, the only method that lets you pass one in, FrameLoader::loadWithNavigationAction(), is private, and I don&apos;t necessarily want to make it public just for this.

I do like the idea of adding a member variable to FrameLoadRequest, however, and that seems like a better approach than my admittedly inelegant first pass. I will take a look.

Thanks for reading the patch!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>786952</commentid>
    <comment_count>8</comment_count>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2012-12-09 20:47:50 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 178299 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=178299&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/loader/FrameLoader.cpp:1297
&gt; &gt; +    if (isDrag)
&gt; &gt; +        loader.get()-&gt;setTriggeringAction(NavigationAction(request.resourceRequest(), NavigationTypeDragInitiated));
&gt; 
&gt; I don’t think it makes much sense to override the action here.

Do you think it should be done deeper down, such as in FrameLoader::loadWithDocumentLoader(), where the triggering action is currently set if empty?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>787055</commentid>
    <comment_count>9</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2012-12-10 00:22:27 -0800</bug_when>
    <thetext>What is the use case for distinguishing loads that are drag initiated? Also, please don&apos;t add an overload of FrameLoader::load().  If this data is needed, it should probably be incorporated into the FrameLoadRequest.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790227</commentid>
    <comment_count>10</comment_count>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2012-12-12 20:20:50 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; What is the use case for distinguishing loads that are drag initiated? Also, please don&apos;t add an overload of FrameLoader::load().  If this data is needed, it should probably be incorporated into the FrameLoadRequest.

I agree that overloading load() is suboptimal; I will rework and submit a patch that modifies FrameLoadRequest.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791279</commentid>
    <comment_count>11</comment_count>
      <attachid>178299</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-12-13 20:25:23 -0800</bug_when>
    <thetext>Comment on attachment 178299
Patch

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

&gt;&gt;&gt; Source/WebCore/loader/FrameLoader.cpp:1297
&gt;&gt;&gt; +        loader.get()-&gt;setTriggeringAction(NavigationAction(request.resourceRequest(), NavigationTypeDragInitiated));
&gt;&gt; 
&gt;&gt; I don’t think it makes much sense to override the action here.
&gt; 
&gt; Do you think it should be done deeper down, such as in FrameLoader::loadWithDocumentLoader(), where the triggering action is currently set if empty?

Yes. I thought I explicitly stated in my previous comment but it got cut off somehow :/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791716</commentid>
    <comment_count>12</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-12-14 11:02:15 -0800</bug_when>
    <thetext>A few points from IRC discussion:

- care should be taken to not break WebKit1 API, as these navigation types are basically typecast to an API type;

- the concept of drag is not very well defined - a drag from Finder is very different from an HTML link drag.

- is drag really the only case that needs to be addressed? For example, I&apos;d test AppleScript.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178291</attachid>
            <date>2012-12-07 15:03:37 -0800</date>
            <delta_ts>2012-12-07 16:30:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104166-20121207150101.patch</filename>
            <type>text/plain</type>
            <size>8035</size>
            <attacher name="Conrad Shultz">conrad_shultz</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2OTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDgzY2ExNWU5NGQzZWU1
ZjFlMDVkNzQ1MzYzMzYyZTcyNzNjYzA1Yi4uMDQwNmFkZDI5MDUwMTM2OTMwZDRiM2I0MWQxNGY4
ZDM0YzFlNWE2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTEyLTA3ICBDb25y
YWQgU2h1bHR6ICA8Y29ucmFkX3NodWx0ekBhcHBsZS5jb20+CisKKyAgICAgICAgTmF2aWdhdGlv
biBiZWd1biBpbiByZXNwb25zZSB0byBhIGRyYWcgc2hvdWxkIGhhdmUgYSB1bmlxdWUgTmF2aWdh
dGlvblR5cGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwNDE2NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisJQ3VycmVu
dGx5LCBuYXZpZ2F0aW9uIGNvbW1lbmNlZCBpbiBEcmFnQ29udHJvbGxlcjo6cGVyZm9ybURyYWco
KSwgdmlhIEZyYW1lTG9hZGVyOjpsb2FkKCksIGVuZHMgdXAgYXMgdHlwZSBOYXZpZ2F0aW9uVHlw
ZU90aGVyLiBJbiBjZXJ0YWluIHNpdHVhdGlvbnMgaXQgd291bGQgYmUgZGVzaXJhYmxlIGZvciBj
bGllbnQgY29kZSB0byBiZSBhYmxlIHRvIGRpc3Rpbmd1aXNoIGRyYWctaW5pdGlhdGVkIG5hdmln
YXRpb24gZnJvbSBvdGhlciB0eXBlcyBvZiBuYXZpZ2F0aW9uLiBUbyB0aGlzIGVuZCwgdGhpcyBw
YXRjaCBhZGRzIGEgbmV3IG5hdmlnYXRpb24gdHlwZSAoTmF2aWdhdGlvblR5cGVEcmFnSW5pdGlh
dGVkKSBhbmQgYW4gYXNzb2NpYXRlZCBXS0ZyYW1lTmF2aWdhdGlvblR5cGUgKGtXS0ZyYW1lTmF2
aWdhdGlvblR5cGVEcmFnSW5pdGlhdGVkKSwgYW5kIHJldmlzZXMsIHBhcnRpY3VsYXJseSwgRHJh
Z0NvbnRyb2xsZXIgYW5kIEZyYW1lTG9hZGVyIHRvIHNldCB0aGlzIG5hdmlnYXRpb24gdHlwZSBh
Y2NvcmRpbmdseS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGRvZXMgbm90IGFmZmVjdCBsYXlv
dXQuCisKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RnJhbWVMb2FkZXI6OmxvYWQpOgorCUNhbGwgb3ZlcmxvYWRlZCBsb2FkKCkgZnVuY3Rpb24g
YWNjZXB0aW5nIGEgYm9vbGVhbiBpc0RyYWcsIGZhbHNlIGJ5IGRlZmF1bHQuCisgICAgICAgIChX
ZWJDb3JlKToKKwlOZXcgZnVuY3Rpb247IG1pZ3JhdGUgZXhpc3RpbmcgbG9hZCgpIGZ1bmN0aW9u
YWxpdHkgYW5kLCBpZiB0aGUgY2FsbGVyIGluZGljYXRlcyBsb2FkaW5nIGlzIGluIHJlc3BvbnNl
IHRvIGEgZHJhZywKKwlhZmZpcm1hdGl2ZWx5IHNldCB0aGUgdHJpZ2dlcmluZyBOYXZpZ2F0aW9u
QWN0aW9uIHRvIGJlIG9mIHRoZSBuZXcgdHlwZSBOYXZpZ2F0aW9uVHlwZURyYWdJbml0aWF0ZWQu
CisKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuaDoKKyAgICAgICAgKEZyYW1lTG9hZGVy
KToKKwlEZWNsYXJlIG5ldyBwdWJsaWMgbG9hZCgpIG1ldGhvZCBhY2NlcHRpbmcgYSBib29sZWFu
IGlzRHJhZyBhcmd1bWVudC4KKworICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlclR5cGVzLmg6
CisJRGVjbGFyZSBuZXcgTmF2aWdhdGlvblR5cGVEcmFnSW5pdGlhdGVkLCBkZWxpYmVyYXRlbHkg
YXBwZW5kZWQgdGhlIGV4aXN0aW5nIGVudW0gdG8gYXZvaWQgYW55IGJpbmFyeSBjb21wYXRpYmls
aXR5IGlzc3VlcworCXdpdGggY2xpZW50cyB0aGF0IG1heSBiZSB1c2luZyBoYXJkY29kZWQgdHlw
ZXMuCisKKyAgICAgICAgKiBwYWdlL0RyYWdDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkRyYWdDb250cm9sbGVyOjpwZXJmb3JtRHJhZyk6CisJQ2FsbCBuZXcgRnJhbWVMb2FkOjps
b2FkKCkgQVBJIHdpdGggaXNEcmFnID0gdHJ1ZS4KKwogMjAxMi0xMi0wNyAgUm9iZXJ0IEhvZ2Fu
ICA8cm9iZXJ0QHdlYmtpdC5vcmc+CiAKICAgICAgICAgUkVHUkVTU0lPTihyMTI3MTYzKTogQ29u
dGVudCBpcyBvZmZzZXQgdG8gdGhlIHJpZ2h0IGF0IHJlYS5ydQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IGJmYjY3
ZTY0ODU1NzdlODJkMGFjYzZkY2ZlNTdiYmIzMmMwNjQyMjYuLjAyZWQ1NjQwZGFmNDIyMDM5M2Ix
N2UyMzM3YmU1MDYyNDk4YWU4YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAxMi0x
Mi0wNyAgQ29ucmFkIFNodWx0eiAgPGNvbnJhZF9zaHVsdHpAYXBwbGUuY29tPgorCisgICAgICAg
IE5hdmlnYXRpb24gYmVndW4gaW4gcmVzcG9uc2UgdG8gYSBkcmFnIHNob3VsZCBoYXZlIGEgdW5p
cXVlIE5hdmlnYXRpb25UeXBlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDQxNjYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDdXJyZW50bHksIG5hdmlnYXRpb24gY29tbWVuY2VkIGluIERyYWdDb250cm9s
bGVyOjpwZXJmb3JtRHJhZygpLCB2aWEgRnJhbWVMb2FkZXI6OmxvYWQoKSwgZW5kcyB1cCBhcyB0
eXBlIE5hdmlnYXRpb25UeXBlT3RoZXIuIEluIGNlcnRhaW4gc2l0dWF0aW9ucyBpdCB3b3VsZCBi
ZSBkZXNpcmFibGUgZm9yIGNsaWVudCBjb2RlIHRvIGJlIGFibGUgdG8gZGlzdGluZ3Vpc2ggZHJh
Zy1pbml0aWF0ZWQgbmF2aWdhdGlvbiBmcm9tIG90aGVyIHR5cGVzIG9mIG5hdmlnYXRpb24uIFRv
IHRoaXMgZW5kLCB0aGlzIHBhdGNoIGFkZHMgYSBuZXcgbmF2aWdhdGlvbiB0eXBlIChOYXZpZ2F0
aW9uVHlwZURyYWdJbml0aWF0ZWQpIGFuZCBhbiBhc3NvY2lhdGVkIFdLRnJhbWVOYXZpZ2F0aW9u
VHlwZSAoa1dLRnJhbWVOYXZpZ2F0aW9uVHlwZURyYWdJbml0aWF0ZWQpLCBhbmQgcmV2aXNlcywg
cGFydGljdWxhcmx5LCBEcmFnQ29udHJvbGxlciBhbmQgRnJhbWVMb2FkZXIgdG8gc2V0IHRoaXMg
bmF2aWdhdGlvbiB0eXBlIGFjY29yZGluZ2x5LgorCisgICAgICAgICogU2hhcmVkL0FQSS9jL1dL
UGFnZUxvYWRUeXBlcy5oOgorCURlY2xhcmUgbmV3IGtXS0ZyYW1lTmF2aWdhdGlvblR5cGVEcmFn
SW5pdGlhdGVkLCBkZWxpYmVyYXRlbHkgYXBwZW5kZWQgdGhlIGV4aXN0aW5nIGVudW0gdG8gYXZv
aWQgYW55IGJpbmFyeSBjb21wYXRpYmlsaXR5IGlzc3VlcworCXdpdGggY2xpZW50cyB0aGF0IG1h
eSBiZSB1c2luZyBoYXJkY29kZWQgdHlwZXMuCisKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tT
aGFyZWRBUElDYXN0Lmg6CisgICAgICAgIChXZWJLaXQ6OnRvQVBJKToKKwlBZGQgbWFwcGluZyBm
cm9tIE5hdmlnYXRpb25UeXBlRHJhZ0luaXRpYXRlZCB0byBrV0tGcmFtZU5hdmlnYXRpb25UeXBl
RHJhZ0luaXRpYXRlZC4KKwogMjAxMi0xMi0wNyAgSmFlaHVuIExpbSAgPGxqYWVodW4ubGltQHNh
bXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxdW1dLMl0gQWRkIGV3a19zZXR0aW5ncyBBUElzIGZv
ciB0ZXh0IGF1dG9zaXppbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFt
ZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCmluZGV4
IDk3NDQxYjQxYjZhNmUyZTQyOWFlNTIxYmE0ZmE3NWZiZDZiMGQyMzUuLjQ3ODM3ZWViYzM4ZmJl
NTQ1YWRiYWRjYzA2ZGZlZDcyMjM0MjIzYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9h
ZGVyLmNwcApAQCAtMTI2MCw2ICsxMjYwLDExIEBAIFN1YnN0aXR1dGVEYXRhIEZyYW1lTG9hZGVy
OjpkZWZhdWx0U3Vic3RpdHV0ZURhdGFGb3JVUkwoY29uc3QgS1VSTCYgdXJsKQogCiB2b2lkIEZy
YW1lTG9hZGVyOjpsb2FkKGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHBhc3NlZFJlcXVlc3QpCiB7
CisgICAgbG9hZChwYXNzZWRSZXF1ZXN0LCAwKTsKK30KKwordm9pZCBGcmFtZUxvYWRlcjo6bG9h
ZChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiBwYXNzZWRSZXF1ZXN0LCBib29sIGlzRHJhZykKK3sK
ICAgICBGcmFtZUxvYWRSZXF1ZXN0IHJlcXVlc3QocGFzc2VkUmVxdWVzdCk7CiAKICAgICBpZiAo
bV9pblN0b3BBbGxMb2FkZXJzKQpAQCAtMTI4Nyw2ICsxMjkyLDEwIEBAIHZvaWQgRnJhbWVMb2Fk
ZXI6OmxvYWQoY29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgcGFzc2VkUmVxdWVzdCkKICAgICBSZWZQ
dHI8RG9jdW1lbnRMb2FkZXI+IGxvYWRlciA9IG1fY2xpZW50LT5jcmVhdGVEb2N1bWVudExvYWRl
cihyZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCByZXF1ZXN0LnN1YnN0aXR1dGVEYXRhKCkpOwog
ICAgIGlmIChyZXF1ZXN0LmxvY2tIaXN0b3J5KCkgJiYgbV9kb2N1bWVudExvYWRlcikKICAgICAg
ICAgbG9hZGVyLT5zZXRDbGllbnRSZWRpcmVjdFNvdXJjZUZvckhpc3RvcnkobV9kb2N1bWVudExv
YWRlci0+ZGlkQ3JlYXRlR2xvYmFsSGlzdG9yeUVudHJ5KCkgPyBtX2RvY3VtZW50TG9hZGVyLT51
cmxGb3JIaXN0b3J5KCkuc3RyaW5nKCkgOiBtX2RvY3VtZW50TG9hZGVyLT5jbGllbnRSZWRpcmVj
dFNvdXJjZUZvckhpc3RvcnkoKSk7CisKKyAgICBpZiAoaXNEcmFnKQorICAgICAgICBsb2FkZXIu
Z2V0KCktPnNldFRyaWdnZXJpbmdBY3Rpb24oTmF2aWdhdGlvbkFjdGlvbihyZXF1ZXN0LnJlc291
cmNlUmVxdWVzdCgpLCBOYXZpZ2F0aW9uVHlwZURyYWdJbml0aWF0ZWQpKTsKKwogICAgIGxvYWQo
bG9hZGVyLmdldCgpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zy
YW1lTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAppbmRleCA4
YTQzNWM4OTVhODJiMDk0NzVmNjRmYjliY2Q5ZmI1M2Y4YjZhMTI2Li4xZDM2YzlmMWIxYjlmMjkw
ZDRjN2ZjMGNkOGI3OTc5N2QyOTMyMDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIu
aApAQCAtMTA1LDYgKzEwNSw3IEBAIHB1YmxpYzoKICAgICAgICAgUGFzc1JlZlB0cjxFdmVudD4s
IFBhc3NSZWZQdHI8Rm9ybVN0YXRlPiwgU2hvdWxkU2VuZFJlZmVycmVyKTsKIAogICAgIHZvaWQg
bG9hZChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0Jik7CisgICAgdm9pZCBsb2FkKGNvbnN0IEZyYW1l
TG9hZFJlcXVlc3QmLCBib29sIGlzRHJhZyk7CiAKICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8
IEVOQUJMRShNSFRNTCkKICAgICB2b2lkIGxvYWRBcmNoaXZlKFBhc3NSZWZQdHI8QXJjaGl2ZT4p
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyVHlwZXMuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlclR5cGVzLmgKaW5kZXggOWUxYjZiYzll
YjlmOGM5MzU4MjMwZGUzODZjNTZkODkwNzM0ZmZiMi4uNjliOTI4MjY0YTg5NWVjYjQ0ZTYzYWU2
YmVhNjdjZDcwNGFkNjU3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1l
TG9hZGVyVHlwZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJUeXBl
cy5oCkBAIC02NSw3ICs2NSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgTmF2aWdh
dGlvblR5cGVCYWNrRm9yd2FyZCwKICAgICAgICAgTmF2aWdhdGlvblR5cGVSZWxvYWQsCiAgICAg
ICAgIE5hdmlnYXRpb25UeXBlRm9ybVJlc3VibWl0dGVkLAotICAgICAgICBOYXZpZ2F0aW9uVHlw
ZU90aGVyCisgICAgICAgIE5hdmlnYXRpb25UeXBlT3RoZXIsCisgICAgICAgIE5hdmlnYXRpb25U
eXBlRHJhZ0luaXRpYXRlZAogICAgIH07CiAKICAgICBlbnVtIENsZWFyUHJvdmlzaW9uYWxJdGVt
UG9saWN5IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRHJhZ0NvbnRyb2xsZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9EcmFnQ29udHJvbGxlci5jcHAKaW5kZXggM2EwZGQx
NmQyNmFjMjA5NjRjOWRiOTVjZGFhZmQyMjhhYWVlODllNi4uMjVkM2ZlZTgyOWJiY2ViMDBlOTZi
NjBmYTY1ODc5NjYxZWQ2YWJjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9EcmFn
Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9EcmFnQ29udHJvbGxlci5j
cHAKQEAgLTIzOCw3ICsyMzgsNyBAQCBib29sIERyYWdDb250cm9sbGVyOjpwZXJmb3JtRHJhZyhE
cmFnRGF0YSogZHJhZ0RhdGEpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIG1fY2xpZW50
LT53aWxsUGVyZm9ybURyYWdEZXN0aW5hdGlvbkFjdGlvbihEcmFnRGVzdGluYXRpb25BY3Rpb25M
b2FkLCBkcmFnRGF0YSk7Ci0gICAgbV9wYWdlLT5tYWluRnJhbWUoKS0+bG9hZGVyKCktPmxvYWQo
RnJhbWVMb2FkUmVxdWVzdChtX3BhZ2UtPm1haW5GcmFtZSgpLCBSZXNvdXJjZVJlcXVlc3QoZHJh
Z0RhdGEtPmFzVVJMKG1fcGFnZS0+bWFpbkZyYW1lKCkpKSkpOworICAgIG1fcGFnZS0+bWFpbkZy
YW1lKCktPmxvYWRlcigpLT5sb2FkKEZyYW1lTG9hZFJlcXVlc3QobV9wYWdlLT5tYWluRnJhbWUo
KSwgUmVzb3VyY2VSZXF1ZXN0KGRyYWdEYXRhLT5hc1VSTChtX3BhZ2UtPm1haW5GcmFtZSgpKSkp
LCB0cnVlKTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvU2hhcmVkL0FQSS9jL1dLUGFnZUxvYWRUeXBlcy5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVk
L0FQSS9jL1dLUGFnZUxvYWRUeXBlcy5oCmluZGV4IDY3NTAwYjQwZjE5MGNkZjZkMTEwNTQzOGYz
NDQ5MTMzNmU1ZTZjOTguLjBkNjRmNWE2NmY2YmI2MjdjZTYxMjQyMGFiNWY3OTM4OGM3N2Y5ZmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1BhZ2VMb2FkVHlwZXMu
aAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tQYWdlTG9hZFR5cGVzLmgKQEAg
LTM2LDcgKzM2LDggQEAgZW51bSB7CiAgICAga1dLRnJhbWVOYXZpZ2F0aW9uVHlwZUJhY2tGb3J3
YXJkID0gMiwKICAgICBrV0tGcmFtZU5hdmlnYXRpb25UeXBlUmVsb2FkID0gMywKICAgICBrV0tG
cmFtZU5hdmlnYXRpb25UeXBlRm9ybVJlc3VibWl0dGVkID0gNCwKLSAgICBrV0tGcmFtZU5hdmln
YXRpb25UeXBlT3RoZXIgPSA1CisgICAga1dLRnJhbWVOYXZpZ2F0aW9uVHlwZU90aGVyID0gNSwK
KyAgICBrV0tGcmFtZU5hdmlnYXRpb25UeXBlRHJhZ0luaXRpYXRlZCA9IDYKIH07CiB0eXBlZGVm
IHVpbnQzMl90IFdLRnJhbWVOYXZpZ2F0aW9uVHlwZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oCmluZGV4IDM4MGNkMjVjMjk2N2YzZDcwYTA3NTFj
NzQzMGI4Y2ZiMzdhNDVhNDAuLmQ4ZDVkNTYwMjFmN2I2YmUxZWY4OGZkMGE2NzEwNTZiNjcwOGY3
MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNh
c3QuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmgK
QEAgLTczMyw2ICs3MzMsOSBAQCBpbmxpbmUgV0tGcmFtZU5hdmlnYXRpb25UeXBlIHRvQVBJKFdl
YkNvcmU6Ok5hdmlnYXRpb25UeXBlIHR5cGUpCiAgICAgY2FzZSBXZWJDb3JlOjpOYXZpZ2F0aW9u
VHlwZU90aGVyOgogICAgICAgICB3a1R5cGUgPSBrV0tGcmFtZU5hdmlnYXRpb25UeXBlT3RoZXI7
CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgV2ViQ29yZTo6TmF2aWdhdGlvblR5cGVEcmFnSW5p
dGlhdGVkOgorICAgICAgICB3a1R5cGUgPSBrV0tGcmFtZU5hdmlnYXRpb25UeXBlRHJhZ0luaXRp
YXRlZDsKKyAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIAogICAgIHJldHVybiB3a1R5cGU7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178299</attachid>
            <date>2012-12-07 16:30:02 -0800</date>
            <delta_ts>2012-12-13 20:25:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104166-20121207162726.patch</filename>
            <type>text/plain</type>
            <size>8112</size>
            <attacher name="Conrad Shultz">conrad_shultz</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2OTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDgzY2ExNWU5NGQzZWU1
ZjFlMDVkNzQ1MzYzMzYyZTcyNzNjYzA1Yi4uMzBjNjkwYWNkYTEzZjQ1NDNhMmEwYTg1YzJjYzk4
YWFlYjc3YTFlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTEyLTA3ICBDb25y
YWQgU2h1bHR6ICA8Y29ucmFkX3NodWx0ekBhcHBsZS5jb20+CisKKyAgICAgICAgTmF2aWdhdGlv
biBiZWd1biBpbiByZXNwb25zZSB0byBhIGRyYWcgc2hvdWxkIGhhdmUgYSB1bmlxdWUgTmF2aWdh
dGlvblR5cGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwNDE2NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEN1cnJlbnRseSwgbmF2aWdhdGlvbiBjb21tZW5jZWQgaW4gRHJhZ0NvbnRyb2xsZXI6OnBlcmZv
cm1EcmFnKCksIHZpYSBGcmFtZUxvYWRlcjo6bG9hZCgpLCBlbmRzIHVwIGFzIHR5cGUgTmF2aWdh
dGlvblR5cGVPdGhlci4gSW4gY2VydGFpbiBzaXR1YXRpb25zIGl0IHdvdWxkIGJlIGRlc2lyYWJs
ZSBmb3IgY2xpZW50IGNvZGUgdG8gYmUgYWJsZSB0byBkaXN0aW5ndWlzaCBkcmFnLWluaXRpYXRl
ZCBuYXZpZ2F0aW9uIGZyb20gb3RoZXIgdHlwZXMgb2YgbmF2aWdhdGlvbi4gVG8gdGhpcyBlbmQs
IHRoaXMgcGF0Y2ggYWRkcyBhIG5ldyBuYXZpZ2F0aW9uIHR5cGUgKE5hdmlnYXRpb25UeXBlRHJh
Z0luaXRpYXRlZCkgYW5kIGFuIGFzc29jaWF0ZWQgV0tGcmFtZU5hdmlnYXRpb25UeXBlIChrV0tG
cmFtZU5hdmlnYXRpb25UeXBlRHJhZ0luaXRpYXRlZCksIGFuZCByZXZpc2VzLCBwYXJ0aWN1bGFy
bHksIERyYWdDb250cm9sbGVyIGFuZCBGcmFtZUxvYWRlciB0byBzZXQgdGhpcyBuYXZpZ2F0aW9u
IHR5cGUgYWNjb3JkaW5nbHkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBkb2VzIG5vdCBhZmZl
Y3QgbGF5b3V0LgorCisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkKToKKyAgICAgICAgQ2FsbCBvdmVybG9hZGVkIGxv
YWQoKSBmdW5jdGlvbiBhY2NlcHRpbmcgYSBib29sZWFuIGlzRHJhZywgZmFsc2UgYnkgZGVmYXVs
dC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICBOZXcgZnVuY3Rpb247IG1pZ3JhdGUgZXhp
c3RpbmcgbG9hZCgpIGZ1bmN0aW9uYWxpdHkgYW5kLCBpZiB0aGUgY2FsbGVyIGluZGljYXRlcyBs
b2FkaW5nIGlzIGluIHJlc3BvbnNlIHRvIGEgZHJhZywKKyAgICAgICAgYWZmaXJtYXRpdmVseSBz
ZXQgdGhlIHRyaWdnZXJpbmcgTmF2aWdhdGlvbkFjdGlvbiB0byBiZSBvZiB0aGUgbmV3IHR5cGUg
TmF2aWdhdGlvblR5cGVEcmFnSW5pdGlhdGVkLgorCisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9h
ZGVyLmg6CisgICAgICAgIChGcmFtZUxvYWRlcik6CisgICAgICAgIERlY2xhcmUgbmV3IHB1Ymxp
YyBsb2FkKCkgbWV0aG9kIGFjY2VwdGluZyBhIGJvb2xlYW4gaXNEcmFnIGFyZ3VtZW50LgorCisg
ICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyVHlwZXMuaDoKKyAgICAgICAgRGVjbGFyZSBuZXcg
TmF2aWdhdGlvblR5cGVEcmFnSW5pdGlhdGVkLCBkZWxpYmVyYXRlbHkgYXBwZW5kZWQgdGhlIGV4
aXN0aW5nIGVudW0gdG8gYXZvaWQgYW55IGJpbmFyeSBjb21wYXRpYmlsaXR5IGlzc3VlcworICAg
ICAgICB3aXRoIGNsaWVudHMgdGhhdCBtYXkgYmUgdXNpbmcgaGFyZGNvZGVkIHR5cGVzLgorCisg
ICAgICAgICogcGFnZS9EcmFnQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEcmFn
Q29udHJvbGxlcjo6cGVyZm9ybURyYWcpOgorICAgICAgICBDYWxsIG5ldyBGcmFtZUxvYWQ6Omxv
YWQoKSBBUEkgd2l0aCBpc0RyYWcgPSB0cnVlLgorCiAyMDEyLTEyLTA3ICBSb2JlcnQgSG9nYW4g
IDxyb2JlcnRAd2Via2l0Lm9yZz4KIAogICAgICAgICBSRUdSRVNTSU9OKHIxMjcxNjMpOiBDb250
ZW50IGlzIG9mZnNldCB0byB0aGUgcmlnaHQgYXQgcmVhLnJ1CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYmZiNjdl
NjQ4NTU3N2U4MmQwYWNjNmRjZmU1N2JiYjMyYzA2NDIyNi4uNTY3ZDZhZjgzZmRmNmJhYTBjYmU2
MWFjOWQ4MzY4YzFiOGFjYmU4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTEy
LTA3ICBDb25yYWQgU2h1bHR6ICA8Y29ucmFkX3NodWx0ekBhcHBsZS5jb20+CisKKyAgICAgICAg
TmF2aWdhdGlvbiBiZWd1biBpbiByZXNwb25zZSB0byBhIGRyYWcgc2hvdWxkIGhhdmUgYSB1bmlx
dWUgTmF2aWdhdGlvblR5cGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEwNDE2NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEN1cnJlbnRseSwgbmF2aWdhdGlvbiBjb21tZW5jZWQgaW4gRHJhZ0NvbnRyb2xs
ZXI6OnBlcmZvcm1EcmFnKCksIHZpYSBGcmFtZUxvYWRlcjo6bG9hZCgpLCBlbmRzIHVwIGFzIHR5
cGUgTmF2aWdhdGlvblR5cGVPdGhlci4gSW4gY2VydGFpbiBzaXR1YXRpb25zIGl0IHdvdWxkIGJl
IGRlc2lyYWJsZSBmb3IgY2xpZW50IGNvZGUgdG8gYmUgYWJsZSB0byBkaXN0aW5ndWlzaCBkcmFn
LWluaXRpYXRlZCBuYXZpZ2F0aW9uIGZyb20gb3RoZXIgdHlwZXMgb2YgbmF2aWdhdGlvbi4gVG8g
dGhpcyBlbmQsIHRoaXMgcGF0Y2ggYWRkcyBhIG5ldyBuYXZpZ2F0aW9uIHR5cGUgKE5hdmlnYXRp
b25UeXBlRHJhZ0luaXRpYXRlZCkgYW5kIGFuIGFzc29jaWF0ZWQgV0tGcmFtZU5hdmlnYXRpb25U
eXBlIChrV0tGcmFtZU5hdmlnYXRpb25UeXBlRHJhZ0luaXRpYXRlZCksIGFuZCByZXZpc2VzLCBw
YXJ0aWN1bGFybHksIERyYWdDb250cm9sbGVyIGFuZCBGcmFtZUxvYWRlciB0byBzZXQgdGhpcyBu
YXZpZ2F0aW9uIHR5cGUgYWNjb3JkaW5nbHkuCisKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tQ
YWdlTG9hZFR5cGVzLmg6CisgICAgICAgIERlY2xhcmUgbmV3IGtXS0ZyYW1lTmF2aWdhdGlvblR5
cGVEcmFnSW5pdGlhdGVkLCBkZWxpYmVyYXRlbHkgYXBwZW5kZWQgdGhlIGV4aXN0aW5nIGVudW0g
dG8gYXZvaWQgYW55IGJpbmFyeSBjb21wYXRpYmlsaXR5IGlzc3VlcworICAgICAgICB3aXRoIGNs
aWVudHMgdGhhdCBtYXkgYmUgdXNpbmcgaGFyZGNvZGVkIHR5cGVzLgorCisgICAgICAgICogU2hh
cmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oOgorICAgICAgICAoV2ViS2l0Ojp0b0FQSSk6Cisg
ICAgICAgIEFkZCBtYXBwaW5nIGZyb20gTmF2aWdhdGlvblR5cGVEcmFnSW5pdGlhdGVkIHRvIGtX
S0ZyYW1lTmF2aWdhdGlvblR5cGVEcmFnSW5pdGlhdGVkLgorCiAyMDEyLTEyLTA3ICBKYWVodW4g
TGltICA8bGphZWh1bi5saW1Ac2Ftc3VuZy5jb20+CiAKICAgICAgICAgW0VGTF1bV0syXSBBZGQg
ZXdrX3NldHRpbmdzIEFQSXMgZm9yIHRleHQgYXV0b3NpemluZwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
cmFtZUxvYWRlci5jcHAKaW5kZXggOTc0NDFiNDFiNmE2ZTJlNDI5YWU1MjFiYTRmYTc1ZmJkNmIw
ZDIzNS4uNDc4MzdlZWJjMzhmYmU1NDVhZGJhZGNjMDZkZmVkNzIyMzQyMjNiMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC0xMjYwLDYgKzEyNjAsMTEgQEAgU3Vic3Rp
dHV0ZURhdGEgRnJhbWVMb2FkZXI6OmRlZmF1bHRTdWJzdGl0dXRlRGF0YUZvclVSTChjb25zdCBL
VVJMJiB1cmwpCiAKIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWQoY29uc3QgRnJhbWVMb2FkUmVxdWVz
dCYgcGFzc2VkUmVxdWVzdCkKIHsKKyAgICBsb2FkKHBhc3NlZFJlcXVlc3QsIDApOworfQorCit2
b2lkIEZyYW1lTG9hZGVyOjpsb2FkKGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHBhc3NlZFJlcXVl
c3QsIGJvb2wgaXNEcmFnKQorewogICAgIEZyYW1lTG9hZFJlcXVlc3QgcmVxdWVzdChwYXNzZWRS
ZXF1ZXN0KTsKIAogICAgIGlmIChtX2luU3RvcEFsbExvYWRlcnMpCkBAIC0xMjg3LDYgKzEyOTIs
MTAgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZChjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiBwYXNz
ZWRSZXF1ZXN0KQogICAgIFJlZlB0cjxEb2N1bWVudExvYWRlcj4gbG9hZGVyID0gbV9jbGllbnQt
PmNyZWF0ZURvY3VtZW50TG9hZGVyKHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCksIHJlcXVlc3Qu
c3Vic3RpdHV0ZURhdGEoKSk7CiAgICAgaWYgKHJlcXVlc3QubG9ja0hpc3RvcnkoKSAmJiBtX2Rv
Y3VtZW50TG9hZGVyKQogICAgICAgICBsb2FkZXItPnNldENsaWVudFJlZGlyZWN0U291cmNlRm9y
SGlzdG9yeShtX2RvY3VtZW50TG9hZGVyLT5kaWRDcmVhdGVHbG9iYWxIaXN0b3J5RW50cnkoKSA/
IG1fZG9jdW1lbnRMb2FkZXItPnVybEZvckhpc3RvcnkoKS5zdHJpbmcoKSA6IG1fZG9jdW1lbnRM
b2FkZXItPmNsaWVudFJlZGlyZWN0U291cmNlRm9ySGlzdG9yeSgpKTsKKworICAgIGlmIChpc0Ry
YWcpCisgICAgICAgIGxvYWRlci5nZXQoKS0+c2V0VHJpZ2dlcmluZ0FjdGlvbihOYXZpZ2F0aW9u
QWN0aW9uKHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCksIE5hdmlnYXRpb25UeXBlRHJhZ0luaXRp
YXRlZCkpOworCiAgICAgbG9hZChsb2FkZXIuZ2V0KCkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
cmFtZUxvYWRlci5oCmluZGV4IDhhNDM1Yzg5NWE4MmIwOTQ3NWY2NGZiOWJjZDlmYjUzZjhiNmEx
MjYuLjFkMzZjOWYxYjFiOWYyOTBkNGM3ZmMwY2Q4Yjc5Nzk3ZDI5MzIwMGIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9GcmFtZUxvYWRlci5oCkBAIC0xMDUsNiArMTA1LDcgQEAgcHVibGljOgogICAgICAg
ICBQYXNzUmVmUHRyPEV2ZW50PiwgUGFzc1JlZlB0cjxGb3JtU3RhdGU+LCBTaG91bGRTZW5kUmVm
ZXJyZXIpOwogCiAgICAgdm9pZCBsb2FkKGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmKTsKKyAgICB2
b2lkIGxvYWQoY29uc3QgRnJhbWVMb2FkUmVxdWVzdCYsIGJvb2wgaXNEcmFnKTsKIAogI2lmIEVO
QUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIHZvaWQgbG9hZEFyY2hpdmUo
UGFzc1JlZlB0cjxBcmNoaXZlPik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RnJhbWVMb2FkZXJUeXBlcy5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyVHlw
ZXMuaAppbmRleCA5ZTFiNmJjOWViOWY4YzkzNTgyMzBkZTM4NmM1NmQ4OTA3MzRmZmIyLi42OWI5
MjgyNjRhODk1ZWNiNDRlNjNhZTZiZWE2N2NkNzA0YWQ2NTcxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJUeXBlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlclR5cGVzLmgKQEAgLTY1LDcgKzY1LDggQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgICAgICBOYXZpZ2F0aW9uVHlwZUJhY2tGb3J3YXJkLAogICAgICAgICBOYXZpZ2F0
aW9uVHlwZVJlbG9hZCwKICAgICAgICAgTmF2aWdhdGlvblR5cGVGb3JtUmVzdWJtaXR0ZWQsCi0g
ICAgICAgIE5hdmlnYXRpb25UeXBlT3RoZXIKKyAgICAgICAgTmF2aWdhdGlvblR5cGVPdGhlciwK
KyAgICAgICAgTmF2aWdhdGlvblR5cGVEcmFnSW5pdGlhdGVkCiAgICAgfTsKIAogICAgIGVudW0g
Q2xlYXJQcm92aXNpb25hbEl0ZW1Qb2xpY3kgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9EcmFnQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9s
bGVyLmNwcAppbmRleCAzYTBkZDE2ZDI2YWMyMDk2NGM5ZGI5NWNkYWFmZDIyOGFhZWU4OWU2Li4y
NWQzZmVlODI5YmJjZWIwMGU5NmI2MGZhNjU4Nzk2NjFlZDZhYmMzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0RyYWdDb250cm9sbGVyLmNwcApAQCAtMjM4LDcgKzIzOCw3IEBAIGJvb2wgRHJhZ0NvbnRy
b2xsZXI6OnBlcmZvcm1EcmFnKERyYWdEYXRhKiBkcmFnRGF0YSkKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogCiAgICAgbV9jbGllbnQtPndpbGxQZXJmb3JtRHJhZ0Rlc3RpbmF0aW9uQWN0aW9uKERy
YWdEZXN0aW5hdGlvbkFjdGlvbkxvYWQsIGRyYWdEYXRhKTsKLSAgICBtX3BhZ2UtPm1haW5GcmFt
ZSgpLT5sb2FkZXIoKS0+bG9hZChGcmFtZUxvYWRSZXF1ZXN0KG1fcGFnZS0+bWFpbkZyYW1lKCks
IFJlc291cmNlUmVxdWVzdChkcmFnRGF0YS0+YXNVUkwobV9wYWdlLT5tYWluRnJhbWUoKSkpKSk7
CisgICAgbV9wYWdlLT5tYWluRnJhbWUoKS0+bG9hZGVyKCktPmxvYWQoRnJhbWVMb2FkUmVxdWVz
dChtX3BhZ2UtPm1haW5GcmFtZSgpLCBSZXNvdXJjZVJlcXVlc3QoZHJhZ0RhdGEtPmFzVVJMKG1f
cGFnZS0+bWFpbkZyYW1lKCkpKSksIHRydWUpOwogICAgIHJldHVybiB0cnVlOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tQYWdlTG9hZFR5cGVzLmggYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tQYWdlTG9hZFR5cGVzLmgKaW5kZXggNjc1MDBi
NDBmMTkwY2RmNmQxMTA1NDM4ZjM0NDkxMzM2ZTVlNmM5OC4uMGQ2NGY1YTY2ZjZiYjYyN2NlNjEy
NDIwYWI1Zjc5Mzg4Yzc3ZjlmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQ
SS9jL1dLUGFnZUxvYWRUeXBlcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9X
S1BhZ2VMb2FkVHlwZXMuaApAQCAtMzYsNyArMzYsOCBAQCBlbnVtIHsKICAgICBrV0tGcmFtZU5h
dmlnYXRpb25UeXBlQmFja0ZvcndhcmQgPSAyLAogICAgIGtXS0ZyYW1lTmF2aWdhdGlvblR5cGVS
ZWxvYWQgPSAzLAogICAgIGtXS0ZyYW1lTmF2aWdhdGlvblR5cGVGb3JtUmVzdWJtaXR0ZWQgPSA0
LAotICAgIGtXS0ZyYW1lTmF2aWdhdGlvblR5cGVPdGhlciA9IDUKKyAgICBrV0tGcmFtZU5hdmln
YXRpb25UeXBlT3RoZXIgPSA1LAorICAgIGtXS0ZyYW1lTmF2aWdhdGlvblR5cGVEcmFnSW5pdGlh
dGVkID0gNgogfTsKIHR5cGVkZWYgdWludDMyX3QgV0tGcmFtZU5hdmlnYXRpb25UeXBlOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0Lmgg
Yi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmgKaW5kZXggMzgw
Y2QyNWMyOTY3ZjNkNzBhMDc1MWM3NDMwYjhjZmIzN2E0NWE0MC4uZDhkNWQ1NjAyMWY3YjZiZTFl
Zjg4ZmQwYTY3MTA1NmI2NzA4ZjcyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkv
Yy9XS1NoYXJlZEFQSUNhc3QuaApAQCAtNzMzLDYgKzczMyw5IEBAIGlubGluZSBXS0ZyYW1lTmF2
aWdhdGlvblR5cGUgdG9BUEkoV2ViQ29yZTo6TmF2aWdhdGlvblR5cGUgdHlwZSkKICAgICBjYXNl
IFdlYkNvcmU6Ok5hdmlnYXRpb25UeXBlT3RoZXI6CiAgICAgICAgIHdrVHlwZSA9IGtXS0ZyYW1l
TmF2aWdhdGlvblR5cGVPdGhlcjsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBXZWJDb3JlOjpO
YXZpZ2F0aW9uVHlwZURyYWdJbml0aWF0ZWQ6CisgICAgICAgIHdrVHlwZSA9IGtXS0ZyYW1lTmF2
aWdhdGlvblR5cGVEcmFnSW5pdGlhdGVkOworICAgICAgICBicmVhazsKICAgICB9CiAgICAgCiAg
ICAgcmV0dXJuIHdrVHlwZTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>