<?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>93848</bug_id>
          
          <creation_ts>2012-08-13 08:03:35 -0700</creation_ts>
          <short_desc>[BlackBerry] Rounding error somewhere when translating CompositingLayer &apos;s for in-region scrolling</short_desc>
          <delta_ts>2012-08-13 12:26:29 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit BlackBerry</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antonio Gomes">tonikitoo</reporter>
          <assigned_to name="Antonio Gomes">tonikitoo</assigned_to>
          <cc>mifenton</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>693666</commentid>
    <comment_count>0</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-08-13 08:03:35 -0700</bug_when>
    <thetext>I can notice specially when zooming to the maximum and slowing pan the
in-region scrollable block.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693699</commentid>
    <comment_count>1</comment_count>
      <attachid>158012</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-08-13 09:00:34 -0700</bug_when>
    <thetext>Created attachment 158012
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693700</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-13 09:03:31 -0700</bug_when>
    <thetext>Attachment 158012 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit/blackberry/Api/InRegionScrol...&quot; exit_code: 1
Source/WebKit/blackberry/Api/InRegionScroller.cpp:222:  An else statement can be removed when the prior &quot;if&quot; concludes with a return, break, continue or goto statement.  [readability/control_flow] [4]
Total errors found: 1 in 5 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>693711</commentid>
    <comment_count>3</comment_count>
      <attachid>158012</attachid>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2012-08-13 09:22:44 -0700</bug_when>
    <thetext>Comment on attachment 158012
patch

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

&gt; Source/WebKit/blackberry/Api/InRegionScroller.cpp:65
&gt; +    // FIXME: Negative values won&apos;t work with map{To,From}Transform methods.

map{To,From}Transform. a space?

&gt; Source/WebKit/blackberry/ChangeLog:8
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +

missing description here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693735</commentid>
    <comment_count>4</comment_count>
      <attachid>158012</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-08-13 09:40:57 -0700</bug_when>
    <thetext>Comment on attachment 158012
patch

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

&gt;&gt; Source/WebKit/blackberry/ChangeLog:8
&gt;&gt; +
&gt; 
&gt; missing description here?

I added description per-method below. Is that enough?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693841</commentid>
    <comment_count>5</comment_count>
      <attachid>158012</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-08-13 11:10:41 -0700</bug_when>
    <thetext>Comment on attachment 158012
patch

modified version coming,..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693891</commentid>
    <comment_count>6</comment_count>
      <attachid>158061</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-08-13 11:42:37 -0700</bug_when>
    <thetext>Created attachment 158061
patch v2

Patch caches a LayerWebKitThread as the camouflaged object, intead of a RenderLayer.

In a follow up patch that will get RefPtr&apos;ed but can not happen quite yet &apos;cause that needs some refactoring first. On it next</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693943</commentid>
    <comment_count>7</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-08-13 12:26:29 -0700</bug_when>
    <thetext>Committed http://trac.webkit.org/changeset/125434</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>158012</attachid>
            <date>2012-08-13 09:00:34 -0700</date>
            <delta_ts>2012-08-13 11:42:37 -0700</delta_ts>
            <desc>patch</desc>
            <filename>0001-BlackBerry-Rounding-error-somewhere-when-translating.patch</filename>
            <type>text/plain</type>
            <size>11767</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSA1NjJjMDM0MTRmMTYyMzgyMWU3YTVkMzIwYjAzOWNhYjc1ZTE2MTMzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KRGF0ZTog
TW9uLCAxMyBBdWcgMjAxMiAxMTo1ODozNSAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIFtCbGFja0Jl
cnJ5XSBSb3VuZGluZyBlcnJvciBzb21ld2hlcmUgd2hlbiB0cmFuc2xhdGluZwogQ29tcG9zaXRp
bmdMYXllciAncyBmb3IgaW4tcmVnaW9uIHNjcm9sbGluZwogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTkzODQ4IFBSICMxOTA5ODYKClJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgpQYXRjaCBieSBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KCiogQXBpL0lu
UmVnaW9uU2Nyb2xsZXIuY3BwOgooQmxhY2tCZXJyeTo6V2ViS2l0OjpJblJlZ2lvblNjcm9sbGVy
OjpzZXRTY3JvbGxQb3NpdGlvbkNvbXBvc2l0aW5nVGhyZWFkKToKQ2hhbmdlZCB0aGUgQVBJIG5h
bWUgdG8gbWF0Y2ggb3RoZXIgdGhyZWFkIHNwZWNpZmljIG1ldGhvZHMgbmFtaW5nLgooV2ViS2l0
KToKKEJsYWNrQmVycnk6OldlYktpdDo6SW5SZWdpb25TY3JvbGxlcjo6c2V0U2Nyb2xsUG9zaXRp
b25XZWJLaXRUaHJlYWQpOgpBZGRlZCBhIHNldFNjcm9sbFBvc2l0aW9uLWxpa2UgbWV0aG9kIHRv
IEluUmVnaW9uU2Nyb2xsZXIgcHVibGljIEFQSS4gVXNlZAp0b2dldGhlciB3aXRoIGl0cyBVSS10
aHJlYWQgY291bnRlcnBhcnQsIGl0IGNhbiBmaXggc29tZSByb3VuZGluZwplcnJvcnMgd2UgaGF2
ZSBkdWUgdG8gbWl4aW5nIDo6c2V0U2Nyb2xsUG9zaXRpb24gYW5kIDo6c2Nyb2xsQnkgbWV0aG9k
cy4KKEJsYWNrQmVycnk6OldlYktpdDo6SW5SZWdpb25TY3JvbGxlclByaXZhdGU6OnNldFNjcm9s
bFBvc2l0aW9uQ29tcG9zaXRpbmdUaHJlYWQpOgpNZXRob2QgcmVuYW1lZC4gU2VlIHJlYXNvbnMg
YWJvdmUuCihCbGFja0JlcnJ5OjpXZWJLaXQ6OkluUmVnaW9uU2Nyb2xsZXJQcml2YXRlOjpzZXRT
Y3JvbGxQb3NpdGlvbldlYktpdFRocmVhZCk6CkNhbGxzIGZvd2FyZHMgdGhlIGNhbGwgdG8gOjpz
ZXRMYXllclNjcm9sbFBvc2l0aW9uIChiZWxvdykuCihCbGFja0JlcnJ5OjpXZWJLaXQ6OkluUmVn
aW9uU2Nyb2xsZXJQcml2YXRlOjpzZXRMYXllclNjcm9sbFBvc2l0aW9uKToKU2V0cyB0aGUgc2Ny
b2xsIHBvc2l0aW9uIG9mIGEgZ2l2ZW4gUmVuZGVyTGF5ZXIuCiogQXBpL0luUmVnaW9uU2Nyb2xs
ZXIuaDoKKEluUmVnaW9uU2Nyb2xsZXIpOgoqIEFwaS9JblJlZ2lvblNjcm9sbGVyX3AuaDoKKFdl
YkNvcmUpOgooSW5SZWdpb25TY3JvbGxlclByaXZhdGUpOgoqIFdlYktpdFN1cHBvcnQvSW5SZWdp
b25TY3JvbGxhYmxlQXJlYS5jcHA6CihCbGFja0JlcnJ5OjpXZWJLaXQ6OkluUmVnaW9uU2Nyb2xs
YWJsZUFyZWE6OkluUmVnaW9uU2Nyb2xsYWJsZUFyZWEpOgpDYWNoZSB0aGUgUmVuZGVyTGF5ZXIg
b2JqZWN0IGFzc29jaWF0ZWQgdG8gYSBnaXZlbiBzY3JvbGxhYmxlIGFyZWEKaW5zdGVhZCBvZiBp
dHMgTGF5ZXJDb21wb3NpdGluZ1RocmVhZC4gVGhpcyB3YXkgd2UgY2FuIHVzZSBpdCBmb3IKc2Ny
b2xsaW5nIGZyb20gYm90aCBDb21wb3NpdGluZy9VSSBhbmQgV2ViS2l0IHRocmVhZHMuCi0tLQog
U291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9JblJlZ2lvblNjcm9sbGVyLmNwcCAgfCAgIDYw
ICsrKysrKysrKysrKysrKysrKy0tCiBTb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0luUmVn
aW9uU2Nyb2xsZXIuaCAgICB8ICAgIDMgKy0KIFNvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkv
SW5SZWdpb25TY3JvbGxlcl9wLmggIHwgICAgOCArKy0KIFNvdXJjZS9XZWJLaXQvYmxhY2tiZXJy
eS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgIHwgICAzMyArKysrKysrKysrKwogLi4uL1dlYktp
dFN1cHBvcnQvSW5SZWdpb25TY3JvbGxhYmxlQXJlYS5jcHAgICAgICAgfCAgICAzICstCiA1IGZp
bGVzIGNoYW5nZWQsIDk4IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9JblJlZ2lvblNjcm9sbGVyLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlci5jcHAKaW5kZXggMDkw
MTJjMS4uYTkyNTgxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9J
blJlZ2lvblNjcm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0lu
UmVnaW9uU2Nyb2xsZXIuY3BwCkBAIC0yNiw5ICsyNiwxMSBAQAogI2luY2x1ZGUgIkluUmVnaW9u
U2Nyb2xsYWJsZUFyZWEuaCIKICNpbmNsdWRlICJJblJlZ2lvblNjcm9sbGVyX3AuaCIKICNpbmNs
dWRlICJMYXllckNvbXBvc2l0aW5nVGhyZWFkLmgiCisjaW5jbHVkZSAiTGF5ZXJXZWJLaXRUaHJl
YWQuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUmVuZGVyQm94LmgiCiAjaW5jbHVk
ZSAiUmVuZGVyTGF5ZXIuaCIKKyNpbmNsdWRlICJSZW5kZXJMYXllckJhY2tpbmcuaCIKICNpbmNs
dWRlICJSZW5kZXJPYmplY3QuaCIKICNpbmNsdWRlICJSZW5kZXJWaWV3LmgiCiAjaW5jbHVkZSAi
V2ViUGFnZV9wLmgiCkBAIC01NiwxMCArNTgsMjAgQEAgSW5SZWdpb25TY3JvbGxlcjo6fkluUmVn
aW9uU2Nyb2xsZXIoKQogICAgIGRlbGV0ZSBkOwogfQogCi1ib29sIEluUmVnaW9uU2Nyb2xsZXI6
OmNvbXBvc2l0ZWRTZXRTY3JvbGxQb3NpdGlvbih1bnNpZ25lZCBjYW1vdWZsYWdlZExheWVyLCBj
b25zdCBQbGF0Zm9ybTo6SW50UG9pbnQmIHNjcm9sbFBvc2l0aW9uKQorYm9vbCBJblJlZ2lvblNj
cm9sbGVyOjpzZXRTY3JvbGxQb3NpdGlvbkNvbXBvc2l0aW5nVGhyZWFkKHVuc2lnbmVkIGNhbW91
ZmxhZ2VkTGF5ZXIsIGNvbnN0IFBsYXRmb3JtOjpJbnRQb2ludCYgc2Nyb2xsUG9zaXRpb24pCiB7
CiAgICAgQVNTRVJUKFBsYXRmb3JtOjp1c2VySW50ZXJmYWNlVGhyZWFkTWVzc2FnZUNsaWVudCgp
LT5pc0N1cnJlbnRUaHJlYWQoKSk7Ci0gICAgcmV0dXJuIGQtPmNvbXBvc2l0ZWRTZXRTY3JvbGxQ
b3NpdGlvbihjYW1vdWZsYWdlZExheWVyLCBkLT5tX3dlYlBhZ2UtPm1hcEZyb21UcmFuc2Zvcm1l
ZChzY3JvbGxQb3NpdGlvbikpOworCisgICAgLy8gRklYTUU6IE5lZ2F0aXZlIHZhbHVlcyB3b24n
dCB3b3JrIHdpdGggbWFwe1RvLEZyb219VHJhbnNmb3JtIG1ldGhvZHMuCisgICAgcmV0dXJuIGQt
PnNldFNjcm9sbFBvc2l0aW9uQ29tcG9zaXRpbmdUaHJlYWQoY2Ftb3VmbGFnZWRMYXllciwgZC0+
bV93ZWJQYWdlLT5tYXBGcm9tVHJhbnNmb3JtZWQoc2Nyb2xsUG9zaXRpb24pKTsKK30KKworYm9v
bCBJblJlZ2lvblNjcm9sbGVyOjpzZXRTY3JvbGxQb3NpdGlvbldlYktpdFRocmVhZCh1bnNpZ25l
ZCBjYW1vdWZsYWdlZExheWVyLCBjb25zdCBQbGF0Zm9ybTo6SW50UG9pbnQmIHNjcm9sbFBvc2l0
aW9uKQoreworICAgIEFTU0VSVChQbGF0Zm9ybTo6d2ViS2l0VGhyZWFkTWVzc2FnZUNsaWVudCgp
LT5pc0N1cnJlbnRUaHJlYWQoKSk7CisKKyAgICAvLyBGSVhNRTogTmVnYXRpdmUgdmFsdWVzIHdv
bid0IHdvcmsgd2l0aCBtYXB7VG8sRnJvbX1UcmFuc2Zvcm0gbWV0aG9kcy4KKyAgICByZXR1cm4g
ZC0+c2V0U2Nyb2xsUG9zaXRpb25XZWJLaXRUaHJlYWQoY2Ftb3VmbGFnZWRMYXllciwgZC0+bV93
ZWJQYWdlLT5tYXBGcm9tVHJhbnNmb3JtZWQoc2Nyb2xsUG9zaXRpb24pKTsKIH0KIAogSW5SZWdp
b25TY3JvbGxlclByaXZhdGU6OkluUmVnaW9uU2Nyb2xsZXJQcml2YXRlKFdlYlBhZ2VQcml2YXRl
KiB3ZWJQYWdlUHJpdmF0ZSkKQEAgLTkyLDE1ICsxMDQsMjUgQEAgYm9vbCBJblJlZ2lvblNjcm9s
bGVyUHJpdmF0ZTo6Y2FuU2Nyb2xsKCkgY29uc3QKICAgICByZXR1cm4gaGFzTm9kZSgpOwogfQog
Ci1ib29sIEluUmVnaW9uU2Nyb2xsZXJQcml2YXRlOjpjb21wb3NpdGVkU2V0U2Nyb2xsUG9zaXRp
b24odW5zaWduZWQgY2Ftb3VmbGFnZWRMYXllciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHNj
cm9sbFBvc2l0aW9uKQorYm9vbCBJblJlZ2lvblNjcm9sbGVyUHJpdmF0ZTo6c2V0U2Nyb2xsUG9z
aXRpb25Db21wb3NpdGluZ1RocmVhZCh1bnNpZ25lZCBjYW1vdWZsYWdlZExheWVyLCBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsUG9zaXRpb24pCiB7Ci0gICAgTGF5ZXJDb21wb3NpdGlu
Z1RocmVhZCogc2Nyb2xsTGF5ZXIgPSByZWludGVycHJldF9jYXN0PExheWVyQ29tcG9zaXRpbmdU
aHJlYWQqPihjYW1vdWZsYWdlZExheWVyKTsKLSAgICBzY3JvbGxMYXllci0+b3ZlcnJpZGUoKS0+
c2V0Qm91bmRzT3JpZ2luKFdlYkNvcmU6OkZsb2F0UG9pbnQoc2Nyb2xsUG9zaXRpb24ueCgpLCBz
Y3JvbGxQb3NpdGlvbi55KCkpKTsKKyAgICBMYXllckNvbXBvc2l0aW5nVGhyZWFkKiBzY3JvbGxM
YXllciA9IHJlaW50ZXJwcmV0X2Nhc3Q8UmVuZGVyTGF5ZXIqPihjYW1vdWZsYWdlZExheWVyKS0+
YmFja2luZygpLT5zY3JvbGxpbmdMYXllcigpLT5wbGF0Zm9ybUxheWVyKCktPmxheWVyQ29tcG9z
aXRpbmdUaHJlYWQoKTsKKworICAgIC8vIEZJWE1FOiBDbGFtcCBtYXhpbXVtIGFuZCBtaW5pbXVt
IHNjcm9sbCBwb3NpdGlvbnMgYXMgYSBsYXN0IGF0dGVtcHQgdG8gZml4IHJvdW5kIGVycm9ycy4K
KyAgICBzY3JvbGxMYXllci0+b3ZlcnJpZGUoKS0+c2V0Qm91bmRzT3JpZ2luKHNjcm9sbFBvc2l0
aW9uKTsKIAogICAgIG1fd2ViUGFnZS0+c2NoZWR1bGVDb21wb3NpdGluZ1J1bigpOwogICAgIHJl
dHVybiB0cnVlOwogfQogCitib29sIEluUmVnaW9uU2Nyb2xsZXJQcml2YXRlOjpzZXRTY3JvbGxQ
b3NpdGlvbldlYktpdFRocmVhZCh1bnNpZ25lZCBjYW1vdWZsYWdlZExheWVyLCBjb25zdCBXZWJD
b3JlOjpJbnRQb2ludCYgc2Nyb2xsUG9zaXRpb24pCit7CisgICAgUmVuZGVyTGF5ZXIqIGxheWVy
ID0gcmVpbnRlcnByZXRfY2FzdDxSZW5kZXJMYXllcio+KGNhbW91ZmxhZ2VkTGF5ZXIpOworICAg
IEFTU0VSVChsYXllcik7CisgICAgLy8gRklYTUU6IENsYW1wIG1heGltdW0gYW5kIG1pbmltdW0g
c2Nyb2xsIHBvc2l0aW9ucyBhcyBhIGxhc3QgYXR0ZW1wdCB0byBmaXggcm91bmQgZXJyb3JzLgor
ICAgIHJldHVybiBzZXRMYXllclNjcm9sbFBvc2l0aW9uKGxheWVyLCBzY3JvbGxQb3NpdGlvbik7
Cit9CisKIGJvb2wgSW5SZWdpb25TY3JvbGxlclByaXZhdGU6OnNjcm9sbEJ5KGNvbnN0IFBsYXRm
b3JtOjpJbnRTaXplJiBkZWx0YSkKIHsKICAgICBBU1NFUlQoUGxhdGZvcm06OndlYmtpdFRocmVh
ZE1lc3NhZ2VDbGllbnQoKS0+aXNDdXJyZW50VGhyZWFkKCkpOwpAQCAtMTkyLDYgKzIxNCwzNCBA
QCBzdGQ6OnZlY3RvcjxQbGF0Zm9ybTo6U2Nyb2xsVmlld0Jhc2UqPiBJblJlZ2lvblNjcm9sbGVy
UHJpdmF0ZTo6aW5SZWdpb25TY3JvbGxhYgogICAgIHJldHVybiB2YWxpZFJldHVybjsKIH0KIAor
Ym9vbCBJblJlZ2lvblNjcm9sbGVyUHJpdmF0ZTo6c2V0TGF5ZXJTY3JvbGxQb3NpdGlvbihSZW5k
ZXJMYXllciogbGF5ZXIsIGNvbnN0IEludFBvaW50JiBzY3JvbGxQb3NpdGlvbikKK3sKKyAgICBS
ZW5kZXJPYmplY3QqIGxheWVyUmVuZGVyZXIgPSBsYXllci0+cmVuZGVyZXIoKTsKKyAgICBBU1NF
UlQobGF5ZXJSZW5kZXJlcik7CisKKyAgICBpZiAobGF5ZXJSZW5kZXJlci0+aXNSZW5kZXJWaWV3
KCkpIHsgLy8gI2RvY3VtZW50IGNhc2UKKworICAgICAgICBGcmFtZVZpZXcqIHZpZXcgPSB0b1Jl
bmRlclZpZXcobGF5ZXJSZW5kZXJlciktPmZyYW1lVmlldygpOworICAgICAgICBBU1NFUlQodmll
dyk7CisKKyAgICAgICAgRnJhbWUqIGZyYW1lID0gdmlldy0+ZnJhbWUoKTsKKyAgICAgICAgQVNT
RVJUX1VOVVNFRChmcmFtZSwgZnJhbWUpOworCisgICAgICAgIHZpZXctPnNldFNjcm9sbFBvc2l0
aW9uKHNjcm9sbFBvc2l0aW9uKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICB9IGVsc2Ug
eyAvLyBSZW5kZXJCb3gtYmFzZWQgZWxlbWVudHMgY2FzZSAoc2Nyb2xsYWJsZSBib3hlcyAoZGl2
J3MsIHAncywgdGV4dGFyZWEncywgZXRjKSkuCisKKyAgICAgICAgbGF5ZXItPnNjcm9sbFRvT2Zm
c2V0KHNjcm9sbFBvc2l0aW9uLngoKSwgc2Nyb2xsUG9zaXRpb24ueSgpKTsKKyAgICAgICAgLy8g
RklYTUVfYWdvbWVzOiBQbGVhc2UgcmVjaGVjayBpZiBpdCBpcyBuZWVkZWQgc3RpbGwhCisgICAg
ICAgIGxheWVyLT5yZW5kZXJlcigpLT5yZXBhaW50KHRydWUpOworICAgICAgICByZXR1cm4gdHJ1
ZTsKKyAgICB9CisKKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gZmFsc2U7
Cit9CisKIGJvb2wgSW5SZWdpb25TY3JvbGxlclByaXZhdGU6OnNjcm9sbE5vZGVSZWN1cnNpdmVs
eShXZWJDb3JlOjpOb2RlKiBub2RlLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBkZWx0YSkKIHsK
ICAgICBpZiAoZGVsdGEuaXNaZXJvKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNr
YmVycnkvQXBpL0luUmVnaW9uU2Nyb2xsZXIuaCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9B
cGkvSW5SZWdpb25TY3JvbGxlci5oCmluZGV4IGVkMzdhZmMuLmExZTViY2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlci5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlci5oCkBAIC0zMyw3ICsz
Myw4IEBAIHB1YmxpYzoKICAgICBJblJlZ2lvblNjcm9sbGVyKFdlYlBhZ2VQcml2YXRlKik7CiAg
ICAgfkluUmVnaW9uU2Nyb2xsZXIoKTsKIAotICAgIGJvb2wgY29tcG9zaXRlZFNldFNjcm9sbFBv
c2l0aW9uKHVuc2lnbmVkIC8qY2Ftb3VmbGFnZWRMYXllciovLCBjb25zdCBQbGF0Zm9ybTo6SW50
UG9pbnQmIC8qc2Nyb2xsUG9zaXRpb24qLyk7CisgICAgYm9vbCBzZXRTY3JvbGxQb3NpdGlvbkNv
bXBvc2l0aW5nVGhyZWFkKHVuc2lnbmVkIC8qY2Ftb3VmbGFnZWRMYXllciovLCBjb25zdCBQbGF0
Zm9ybTo6SW50UG9pbnQmIC8qc2Nyb2xsUG9zaXRpb24qLyk7CisgICAgYm9vbCBzZXRTY3JvbGxQ
b3NpdGlvbldlYktpdFRocmVhZCh1bnNpZ25lZCAvKmNhbW91ZmxhZ2VkTGF5ZXIqLywgY29uc3Qg
UGxhdGZvcm06OkludFBvaW50JiAvKnNjcm9sbFBvc2l0aW9uKi8pOwogCiBwcml2YXRlOgogICAg
IGZyaWVuZCBjbGFzcyBXZWJQYWdlUHJpdmF0ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
YmxhY2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlcl9wLmggYi9Tb3VyY2UvV2ViS2l0L2JsYWNr
YmVycnkvQXBpL0luUmVnaW9uU2Nyb2xsZXJfcC5oCmluZGV4IGJjNDdmOTYuLmUzMjM5M2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlcl9w
LmgKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9JblJlZ2lvblNjcm9sbGVyX3Au
aApAQCAtMjksNiArMjksNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBGcmFtZTsKIGNs
YXNzIE5vZGU7CiBjbGFzcyBSZW5kZXJPYmplY3Q7CitjbGFzcyBSZW5kZXJMYXllcjsKIH0KIAog
bmFtZXNwYWNlIEJsYWNrQmVycnkgewpAQCAtNDgsMTMgKzQ5LDE4IEBAIHB1YmxpYzoKICAgICBi
b29sIGhhc05vZGUoKSBjb25zdDsKIAogICAgIGJvb2wgc2Nyb2xsQnkoY29uc3QgUGxhdGZvcm06
OkludFNpemUmIGRlbHRhKTsKLSAgICBib29sIGNvbXBvc2l0ZWRTZXRTY3JvbGxQb3NpdGlvbih1
bnNpZ25lZCBjYW1vdWZsYWdlZExheWVyLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xs
UG9zaXRpb24pOworCisgICAgYm9vbCBzZXRTY3JvbGxQb3NpdGlvbkNvbXBvc2l0aW5nVGhyZWFk
KHVuc2lnbmVkIGNhbW91ZmxhZ2VkTGF5ZXIsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBzY3Jv
bGxQb3NpdGlvbik7CisgICAgYm9vbCBzZXRTY3JvbGxQb3NpdGlvbldlYktpdFRocmVhZCh1bnNp
Z25lZCBjYW1vdWZsYWdlZExheWVyLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsUG9z
aXRpb24pOwogCiAgICAgc3RkOjp2ZWN0b3I8UGxhdGZvcm06OlNjcm9sbFZpZXdCYXNlKj4gaW5S
ZWdpb25TY3JvbGxhYmxlQXJlYXNGb3JQb2ludChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpOwog
CiAgICAgV2ViUGFnZVByaXZhdGUqIG1fd2ViUGFnZTsKIAogcHJpdmF0ZToKKyAgICBib29sIHNl
dExheWVyU2Nyb2xsUG9zaXRpb24oV2ViQ29yZTo6UmVuZGVyTGF5ZXIqLCBjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCYgc2Nyb2xsUG9zaXRpb24pOworCisgICAgLy8gT2Jzb2xldGUgY29kZXBhdGgu
CiAgICAgYm9vbCBzY3JvbGxOb2RlUmVjdXJzaXZlbHkoV2ViQ29yZTo6Tm9kZSosIGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIGRlbHRhKTsKICAgICBib29sIHNjcm9sbFJlbmRlcmVyKFdlYkNvcmU6
OlJlbmRlck9iamVjdCosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGRlbHRhKTsKICAgICB2b2lk
IGFkanVzdFNjcm9sbERlbHRhKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBtYXhPZmZzZXQsIGNv
bnN0IFdlYkNvcmU6OkludFBvaW50JiBjdXJyZW50T2Zmc2V0LCBXZWJDb3JlOjpJbnRTaXplJiBk
ZWx0YSkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZwppbmRleCA3Y2EyNGRjLi5k
OTRiMjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAor
MjAxMi0wOC0xMyAgQW50b25pbyBHb21lcyAgPGFnb21lc0ByaW0uY29tPgorCisgICAgICAgIFtC
bGFja0JlcnJ5XSBSb3VuZGluZyBlcnJvciBzb21ld2hlcmUgd2hlbiB0cmFuc2xhdGluZyBDb21w
b3NpdGluZ0xheWVyICdzIGZvciBpbi1yZWdpb24gc2Nyb2xsaW5nCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05Mzg0OAorICAgICAgICBQUiAjMTkwOTg2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBBcGkv
SW5SZWdpb25TY3JvbGxlci5jcHA6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OkluUmVn
aW9uU2Nyb2xsZXI6OnNldFNjcm9sbFBvc2l0aW9uQ29tcG9zaXRpbmdUaHJlYWQpOgorICAgICAg
ICBDaGFuZ2VkIHRoZSBBUEkgbmFtZSB0byBtYXRjaCBvdGhlciB0aHJlYWQgc3BlY2lmaWMgbWV0
aG9kcyBuYW1pbmcuCisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAoQmxhY2tCZXJyeTo6V2Vi
S2l0OjpJblJlZ2lvblNjcm9sbGVyOjpzZXRTY3JvbGxQb3NpdGlvbldlYktpdFRocmVhZCk6Cisg
ICAgICAgIEFkZGVkIGEgc2V0U2Nyb2xsUG9zaXRpb24tbGlrZSBtZXRob2QgdG8gSW5SZWdpb25T
Y3JvbGxlciBwdWJsaWMgQVBJLiBVc2VkCisgICAgICAgIHRvZ2V0aGVyIHdpdGggaXRzIFVJLXRo
cmVhZCBjb3VudGVycGFydCwgaXQgY2FuIGZpeCBzb21lIHJvdW5kaW5nCisgICAgICAgIGVycm9y
cyB3ZSBoYXZlIGR1ZSB0byBtaXhpbmcgOjpzZXRTY3JvbGxQb3NpdGlvbiBhbmQgOjpzY3JvbGxC
eSBtZXRob2RzLgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpJblJlZ2lvblNjcm9sbGVy
UHJpdmF0ZTo6c2V0U2Nyb2xsUG9zaXRpb25Db21wb3NpdGluZ1RocmVhZCk6CisgICAgICAgIE1l
dGhvZCByZW5hbWVkLiBTZWUgcmVhc29ucyBhYm92ZS4KKyAgICAgICAgKEJsYWNrQmVycnk6Oldl
YktpdDo6SW5SZWdpb25TY3JvbGxlclByaXZhdGU6OnNldFNjcm9sbFBvc2l0aW9uV2ViS2l0VGhy
ZWFkKToKKyAgICAgICAgQ2FsbHMgZm93YXJkcyB0aGUgY2FsbCB0byA6OnNldExheWVyU2Nyb2xs
UG9zaXRpb24gKGJlbG93KS4KKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5SZWdpb25T
Y3JvbGxlclByaXZhdGU6OnNldExheWVyU2Nyb2xsUG9zaXRpb24pOgorICAgICAgICBTZXRzIHRo
ZSBzY3JvbGwgcG9zaXRpb24gb2YgYSBnaXZlbiBSZW5kZXJMYXllci4KKyAgICAgICAgKiBBcGkv
SW5SZWdpb25TY3JvbGxlci5oOgorICAgICAgICAoSW5SZWdpb25TY3JvbGxlcik6CisgICAgICAg
ICogQXBpL0luUmVnaW9uU2Nyb2xsZXJfcC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAg
IChJblJlZ2lvblNjcm9sbGVyUHJpdmF0ZSk6CisgICAgICAgICogV2ViS2l0U3VwcG9ydC9JblJl
Z2lvblNjcm9sbGFibGVBcmVhLmNwcDoKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5S
ZWdpb25TY3JvbGxhYmxlQXJlYTo6SW5SZWdpb25TY3JvbGxhYmxlQXJlYSk6CisgICAgICAgIENh
Y2hlIHRoZSBSZW5kZXJMYXllciBvYmplY3QgYXNzb2NpYXRlZCB0byBhIGdpdmVuIHNjcm9sbGFi
bGUgYXJlYQorICAgICAgICBpbnN0ZWFkIG9mIGl0cyBMYXllckNvbXBvc2l0aW5nVGhyZWFkLiBU
aGlzIHdheSB3ZSBjYW4gdXNlIGl0IGZvcgorICAgICAgICBzY3JvbGxpbmcgZnJvbSBib3RoIENv
bXBvc2l0aW5nL1VJIGFuZCBXZWJLaXQgdGhyZWFkcy4KKwogMjAxMi0wOC0wOCAgSmFja3kgSmlh
bmcgIDx6aGFqaWFuZ0ByaW0uY29tPgogCiAgICAgICAgIFtCbGFja0JlcnJ5XSBJbXBsZW1lbnQg
YWJvdXQ6bWVtb3J5LWxpdmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9X
ZWJLaXRTdXBwb3J0L0luUmVnaW9uU2Nyb2xsYWJsZUFyZWEuY3BwIGIvU291cmNlL1dlYktpdC9i
bGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvSW5SZWdpb25TY3JvbGxhYmxlQXJlYS5jcHAKaW5kZXgg
ZDQyMDU5ZS4uMGY0ZTA3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dl
YktpdFN1cHBvcnQvSW5SZWdpb25TY3JvbGxhYmxlQXJlYS5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvSW5SZWdpb25TY3JvbGxhYmxlQXJlYS5jcHAKQEAg
LTIwLDcgKzIwLDYgQEAKICNpbmNsdWRlICJJblJlZ2lvblNjcm9sbGFibGVBcmVhLmgiCiAKICNp
bmNsdWRlICJGcmFtZS5oIgotI2luY2x1ZGUgIkxheWVyQ29tcG9zaXRpbmdUaHJlYWQuaCIKICNp
bmNsdWRlICJMYXllcldlYktpdFRocmVhZC5oIgogI2luY2x1ZGUgIlJlbmRlckJveC5oIgogI2lu
Y2x1ZGUgIlJlbmRlckxheWVyLmgiCkBAIC05MCw3ICs4OSw3IEBAIEluUmVnaW9uU2Nyb2xsYWJs
ZUFyZWE6OkluUmVnaW9uU2Nyb2xsYWJsZUFyZWEoV2ViUGFnZVByaXZhdGUqIHdlYlBhZ2UsIFJl
bmRlckxhCiAgICAgICAgIGlmIChtX2xheWVyLT51c2VzQ29tcG9zaXRlZFNjcm9sbGluZygpKSB7
CiAgICAgICAgICAgICBtX3N1cHBvcnRzQ29tcG9zaXRlZFNjcm9sbGluZyA9IHRydWU7CiAgICAg
ICAgICAgICBBU1NFUlQobV9sYXllci0+YmFja2luZygpLT5oYXNTY3JvbGxpbmdMYXllcigpKTsK
LSAgICAgICAgICAgIG1fY2FjaGVkQ29tcG9zaXRlZFNjcm9sbGFibGVMYXllciA9IHJlaW50ZXJw
cmV0X2Nhc3Q8dW5zaWduZWQ+KG1fbGF5ZXItPmJhY2tpbmcoKS0+c2Nyb2xsaW5nTGF5ZXIoKS0+
cGxhdGZvcm1MYXllcigpLT5sYXllckNvbXBvc2l0aW5nVGhyZWFkKCkpOworICAgICAgICAgICAg
bV9jYWNoZWRDb21wb3NpdGVkU2Nyb2xsYWJsZUxheWVyID0gcmVpbnRlcnByZXRfY2FzdDx1bnNp
Z25lZD4obV9sYXllcik7CiAgICAgICAgIH0KIAogICAgICAgICBtX292ZXJzY3JvbGxMaW1pdEZh
Y3RvciA9IDAuMDsKLS0gCjEuNy41LjQKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>158061</attachid>
            <date>2012-08-13 11:42:37 -0700</date>
            <delta_ts>2012-08-13 11:46:33 -0700</delta_ts>
            <desc>patch v2</desc>
            <filename>0001-BlackBerry-Rounding-error-somewhere-when-translating.patch</filename>
            <type>text/plain</type>
            <size>13374</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSAxNDkzMzlmZDJmZDhlYWM0NWZhOTc5NzEwYWM5N2I2NDIzYmQ4OTY3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KRGF0ZTog
TW9uLCAxMyBBdWcgMjAxMiAxMTo1ODozNSAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIFtCbGFja0Jl
cnJ5XSBSb3VuZGluZyBlcnJvciBzb21ld2hlcmUgd2hlbiB0cmFuc2xhdGluZwogQ29tcG9zaXRp
bmdMYXllciAncyBmb3IgaW4tcmVnaW9uIHNjcm9sbGluZwogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTkzODQ4IFBSICMxOTA5ODYKClJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgpQYXRjaCBieSBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KClBhdGNoIGFk
ZHMgYSBXZWJLaXQgdGhyZWFkIHNldFNjcm9sbFBvc2l0aW9uLWxpa2UgQVBJIHRvIEluUmVnaW9u
U2Nyb2xsZXIuCkl0IGZpeGVzIGEgbWlzbWF0Y2ggd2UgaGFkIG9mIHNldHRpbmcgYSBsYXllcidz
IHNjcm9sbCBwb3NpdGluZyBkaXJlY3RseSB2aWEKOjpzZXRTY3JvbGxQb3NpdGlvbiBvbiB0aGUg
VUkgdGhyZWFkLCBidXQgZGlzcGF0Y2hpbmcgYSBjb2FsZXNjZWFibGUKc2Nyb2xsQnkoZGVsdGEp
IG1lc3NhZ2UgdG8gV2ViS2l0IHRocmVhZC4KCiogQXBpL0luUmVnaW9uU2Nyb2xsZXIuY3BwOgoo
QmxhY2tCZXJyeTo6V2ViS2l0OjpJblJlZ2lvblNjcm9sbGVyOjpzZXRTY3JvbGxQb3NpdGlvbkNv
bXBvc2l0aW5nVGhyZWFkKToKQ2hhbmdlZCB0aGUgQVBJIG5hbWUgdG8gbWF0Y2ggb3RoZXIgdGhy
ZWFkIHNwZWNpZmljIG1ldGhvZHMgbmFtaW5nLgooV2ViS2l0KToKKEJsYWNrQmVycnk6OldlYktp
dDo6SW5SZWdpb25TY3JvbGxlcjo6c2V0U2Nyb2xsUG9zaXRpb25XZWJLaXRUaHJlYWQpOgpBZGRl
ZCBhIHNldFNjcm9sbFBvc2l0aW9uLWxpa2UgbWV0aG9kIHRvIEluUmVnaW9uU2Nyb2xsZXIgcHVi
bGljIEFQSS4gVXNlZAp0b2dldGhlciB3aXRoIGl0cyBVSS10aHJlYWQgY291bnRlcnBhcnQsIGl0
IGNhbiBmaXggc29tZSByb3VuZGluZwplcnJvcnMgd2UgaGF2ZSBkdWUgdG8gbWl4aW5nIDo6c2V0
U2Nyb2xsUG9zaXRpb24gYW5kIDo6c2Nyb2xsQnkgbWV0aG9kcy4KKEJsYWNrQmVycnk6OldlYktp
dDo6SW5SZWdpb25TY3JvbGxlclByaXZhdGU6OnNldFNjcm9sbFBvc2l0aW9uQ29tcG9zaXRpbmdU
aHJlYWQpOgpNZXRob2QgcmVuYW1lZC4gU2VlIHJlYXNvbnMgYWJvdmUuCihCbGFja0JlcnJ5OjpX
ZWJLaXQ6OkluUmVnaW9uU2Nyb2xsZXJQcml2YXRlOjpzZXRTY3JvbGxQb3NpdGlvbldlYktpdFRo
cmVhZCk6CkNhbGxzIGZvd2FyZHMgdGhlIGNhbGwgdG8gOjpzZXRMYXllclNjcm9sbFBvc2l0aW9u
IChiZWxvdykuCihCbGFja0JlcnJ5OjpXZWJLaXQ6OkluUmVnaW9uU2Nyb2xsZXJQcml2YXRlOjpz
ZXRMYXllclNjcm9sbFBvc2l0aW9uKToKU2V0cyB0aGUgc2Nyb2xsIHBvc2l0aW9uIG9mIGEgZ2l2
ZW4gUmVuZGVyTGF5ZXIuCiogQXBpL0luUmVnaW9uU2Nyb2xsZXIuaDoKKEluUmVnaW9uU2Nyb2xs
ZXIpOgoqIEFwaS9JblJlZ2lvblNjcm9sbGVyX3AuaDoKKFdlYkNvcmUpOgooSW5SZWdpb25TY3Jv
bGxlclByaXZhdGUpOgoqIFdlYktpdFN1cHBvcnQvSW5SZWdpb25TY3JvbGxhYmxlQXJlYS5jcHA6
CihCbGFja0JlcnJ5OjpXZWJLaXQ6OkluUmVnaW9uU2Nyb2xsYWJsZUFyZWE6OkluUmVnaW9uU2Ny
b2xsYWJsZUFyZWEpOgpDYWNoZSB0aGUgUmVuZGVyTGF5ZXIgb2JqZWN0IGFzc29jaWF0ZWQgdG8g
YSBnaXZlbiBzY3JvbGxhYmxlIGFyZWEKaW5zdGVhZCBvZiBpdHMgTGF5ZXJDb21wb3NpdGluZ1Ro
cmVhZC4gVGhpcyB3YXkgd2UgY2FuIHVzZSBpdCBmb3IKc2Nyb2xsaW5nIGZyb20gYm90aCBDb21w
b3NpdGluZy9VSSBhbmQgV2ViS2l0IHRocmVhZHMuCi0tLQogLi4uL2dyYXBoaWNzL2JsYWNrYmVy
cnkvTGF5ZXJXZWJLaXRUaHJlYWQuaCAgICAgICAgfCAgICAyICsKIFNvdXJjZS9XZWJLaXQvYmxh
Y2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlci5jcHAgIHwgICA2NSArKysrKysrKysrKysrKysr
KystLQogU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9JblJlZ2lvblNjcm9sbGVyLmggICAg
fCAgICAzICstCiBTb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0luUmVnaW9uU2Nyb2xsZXJf
cC5oICB8ICAgIDggKystCiBTb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICB8ICAgMzggKysrKysrKysrKysKIC4uLi9XZWJLaXRTdXBwb3J0L0luUmVnaW9u
U2Nyb2xsYWJsZUFyZWEuY3BwICAgICAgIHwgICAgMyArLQogNiBmaWxlcyBjaGFuZ2VkLCAxMTAg
aW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9ibGFja2JlcnJ5L0xheWVyV2ViS2l0VGhyZWFkLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ibGFja2JlcnJ5L0xheWVyV2ViS2l0VGhyZWFk
LmgKaW5kZXggNTY0OTQyZC4uYTkzNGQ0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYmxhY2tiZXJyeS9MYXllcldlYktpdFRocmVhZC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2JsYWNrYmVycnkvTGF5ZXJXZWJLaXRUaHJlYWQu
aApAQCAtMTMzLDYgKzEzMyw4IEBAIHB1YmxpYzoKICAgICBJbWFnZSogY29udGVudHMoKSBjb25z
dCB7IHJldHVybiBtX2NvbnRlbnRzLmdldCgpOyB9CiAKICAgICB2b2lkIHNldE93bmVyKEdyYXBo
aWNzTGF5ZXJCbGFja0JlcnJ5KiBvd25lcikgeyBtX293bmVyID0gb3duZXI7IH0KKyAgICAvLyBO
T1RFOiBDYW4gYmUgMC4KKyAgICBHcmFwaGljc0xheWVyQmxhY2tCZXJyeSogb3duZXIoKSBjb25z
dCB7IHJldHVybiBtX293bmVyOyB9CiAKICAgICBib29sIGRyYXdzQ29udGVudCgpIGNvbnN0IHsg
cmV0dXJuIG1fb3duZXIgJiYgbV9vd25lci0+ZHJhd3NDb250ZW50KCk7IH0KICAgICB2b2lkIHNl
dERyYXdhYmxlKGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0Fw
aS9JblJlZ2lvblNjcm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvSW5S
ZWdpb25TY3JvbGxlci5jcHAKaW5kZXggMDkwMTJjMS4uZWE5ZjcyZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9JblJlZ2lvblNjcm9sbGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0luUmVnaW9uU2Nyb2xsZXIuY3BwCkBAIC0yNiw5ICsy
NiwxMSBAQAogI2luY2x1ZGUgIkluUmVnaW9uU2Nyb2xsYWJsZUFyZWEuaCIKICNpbmNsdWRlICJJ
blJlZ2lvblNjcm9sbGVyX3AuaCIKICNpbmNsdWRlICJMYXllckNvbXBvc2l0aW5nVGhyZWFkLmgi
CisjaW5jbHVkZSAiTGF5ZXJXZWJLaXRUaHJlYWQuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5j
bHVkZSAiUmVuZGVyQm94LmgiCiAjaW5jbHVkZSAiUmVuZGVyTGF5ZXIuaCIKKyNpbmNsdWRlICJS
ZW5kZXJMYXllckJhY2tpbmcuaCIKICNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIKICNpbmNsdWRl
ICJSZW5kZXJWaWV3LmgiCiAjaW5jbHVkZSAiV2ViUGFnZV9wLmgiCkBAIC01NiwxMCArNTgsMjAg
QEAgSW5SZWdpb25TY3JvbGxlcjo6fkluUmVnaW9uU2Nyb2xsZXIoKQogICAgIGRlbGV0ZSBkOwog
fQogCi1ib29sIEluUmVnaW9uU2Nyb2xsZXI6OmNvbXBvc2l0ZWRTZXRTY3JvbGxQb3NpdGlvbih1
bnNpZ25lZCBjYW1vdWZsYWdlZExheWVyLCBjb25zdCBQbGF0Zm9ybTo6SW50UG9pbnQmIHNjcm9s
bFBvc2l0aW9uKQorYm9vbCBJblJlZ2lvblNjcm9sbGVyOjpzZXRTY3JvbGxQb3NpdGlvbkNvbXBv
c2l0aW5nVGhyZWFkKHVuc2lnbmVkIGNhbW91ZmxhZ2VkTGF5ZXIsIGNvbnN0IFBsYXRmb3JtOjpJ
bnRQb2ludCYgc2Nyb2xsUG9zaXRpb24pCiB7CiAgICAgQVNTRVJUKFBsYXRmb3JtOjp1c2VySW50
ZXJmYWNlVGhyZWFkTWVzc2FnZUNsaWVudCgpLT5pc0N1cnJlbnRUaHJlYWQoKSk7Ci0gICAgcmV0
dXJuIGQtPmNvbXBvc2l0ZWRTZXRTY3JvbGxQb3NpdGlvbihjYW1vdWZsYWdlZExheWVyLCBkLT5t
X3dlYlBhZ2UtPm1hcEZyb21UcmFuc2Zvcm1lZChzY3JvbGxQb3NpdGlvbikpOworCisgICAgLy8g
RklYTUU6IE5lZ2F0aXZlIHZhbHVlcyB3b24ndCB3b3JrIHdpdGggbWFwe1RvLEZyb219VHJhbnNm
b3JtIG1ldGhvZHMuCisgICAgcmV0dXJuIGQtPnNldFNjcm9sbFBvc2l0aW9uQ29tcG9zaXRpbmdU
aHJlYWQoY2Ftb3VmbGFnZWRMYXllciwgZC0+bV93ZWJQYWdlLT5tYXBGcm9tVHJhbnNmb3JtZWQo
c2Nyb2xsUG9zaXRpb24pKTsKK30KKworYm9vbCBJblJlZ2lvblNjcm9sbGVyOjpzZXRTY3JvbGxQ
b3NpdGlvbldlYktpdFRocmVhZCh1bnNpZ25lZCBjYW1vdWZsYWdlZExheWVyLCBjb25zdCBQbGF0
Zm9ybTo6SW50UG9pbnQmIHNjcm9sbFBvc2l0aW9uKQoreworICAgIEFTU0VSVChQbGF0Zm9ybTo6
d2ViS2l0VGhyZWFkTWVzc2FnZUNsaWVudCgpLT5pc0N1cnJlbnRUaHJlYWQoKSk7CisKKyAgICAv
LyBGSVhNRTogTmVnYXRpdmUgdmFsdWVzIHdvbid0IHdvcmsgd2l0aCBtYXB7VG8sRnJvbX1UcmFu
c2Zvcm0gbWV0aG9kcy4KKyAgICByZXR1cm4gZC0+c2V0U2Nyb2xsUG9zaXRpb25XZWJLaXRUaHJl
YWQoY2Ftb3VmbGFnZWRMYXllciwgZC0+bV93ZWJQYWdlLT5tYXBGcm9tVHJhbnNmb3JtZWQoc2Ny
b2xsUG9zaXRpb24pKTsKIH0KIAogSW5SZWdpb25TY3JvbGxlclByaXZhdGU6OkluUmVnaW9uU2Ny
b2xsZXJQcml2YXRlKFdlYlBhZ2VQcml2YXRlKiB3ZWJQYWdlUHJpdmF0ZSkKQEAgLTkyLDE1ICsx
MDQsMzUgQEAgYm9vbCBJblJlZ2lvblNjcm9sbGVyUHJpdmF0ZTo6Y2FuU2Nyb2xsKCkgY29uc3QK
ICAgICByZXR1cm4gaGFzTm9kZSgpOwogfQogCi1ib29sIEluUmVnaW9uU2Nyb2xsZXJQcml2YXRl
Ojpjb21wb3NpdGVkU2V0U2Nyb2xsUG9zaXRpb24odW5zaWduZWQgY2Ftb3VmbGFnZWRMYXllciwg
Y29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHNjcm9sbFBvc2l0aW9uKQorYm9vbCBJblJlZ2lvblNj
cm9sbGVyUHJpdmF0ZTo6c2V0U2Nyb2xsUG9zaXRpb25Db21wb3NpdGluZ1RocmVhZCh1bnNpZ25l
ZCBjYW1vdWZsYWdlZExheWVyLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsUG9zaXRp
b24pCiB7Ci0gICAgTGF5ZXJDb21wb3NpdGluZ1RocmVhZCogc2Nyb2xsTGF5ZXIgPSByZWludGVy
cHJldF9jYXN0PExheWVyQ29tcG9zaXRpbmdUaHJlYWQqPihjYW1vdWZsYWdlZExheWVyKTsKLSAg
ICBzY3JvbGxMYXllci0+b3ZlcnJpZGUoKS0+c2V0Qm91bmRzT3JpZ2luKFdlYkNvcmU6OkZsb2F0
UG9pbnQoc2Nyb2xsUG9zaXRpb24ueCgpLCBzY3JvbGxQb3NpdGlvbi55KCkpKTsKKyAgICBMYXll
ckNvbXBvc2l0aW5nVGhyZWFkKiBzY3JvbGxMYXllciA9IHJlaW50ZXJwcmV0X2Nhc3Q8TGF5ZXJX
ZWJLaXRUaHJlYWQqPihjYW1vdWZsYWdlZExheWVyKS0+bGF5ZXJDb21wb3NpdGluZ1RocmVhZCgp
OwogCisgICAgLy8gRklYTUU6IENsYW1wIG1heGltdW0gYW5kIG1pbmltdW0gc2Nyb2xsIHBvc2l0
aW9ucyBhcyBhIGxhc3QgYXR0ZW1wdCB0byBmaXggcm91bmQgZXJyb3JzLgorICAgIHNjcm9sbExh
eWVyLT5vdmVycmlkZSgpLT5zZXRCb3VuZHNPcmlnaW4oc2Nyb2xsUG9zaXRpb24pOwogICAgIG1f
d2ViUGFnZS0+c2NoZWR1bGVDb21wb3NpdGluZ1J1bigpOwogICAgIHJldHVybiB0cnVlOwogfQog
Citib29sIEluUmVnaW9uU2Nyb2xsZXJQcml2YXRlOjpzZXRTY3JvbGxQb3NpdGlvbldlYktpdFRo
cmVhZCh1bnNpZ25lZCBjYW1vdWZsYWdlZExheWVyLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYg
c2Nyb2xsUG9zaXRpb24pCit7CisgICAgUmVuZGVyTGF5ZXIqIGxheWVyID0gMDsKKworICAgIExh
eWVyV2ViS2l0VGhyZWFkKiBsYXllcldlYktpdFRocmVhZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8TGF5
ZXJXZWJLaXRUaHJlYWQqPihjYW1vdWZsYWdlZExheWVyKTsKKyAgICBBU1NFUlQobGF5ZXJXZWJL
aXRUaHJlYWQpOworICAgIGlmIChsYXllcldlYktpdFRocmVhZC0+b3duZXIoKSkgeworICAgICAg
ICBHcmFwaGljc0xheWVyKiBncmFwaGljc0xheWVyID0gbGF5ZXJXZWJLaXRUaHJlYWQtPm93bmVy
KCk7CisgICAgICAgIFJlbmRlckxheWVyQmFja2luZyogYmFja2luZyA9IHN0YXRpY19jYXN0PFJl
bmRlckxheWVyQmFja2luZyo+KGdyYXBoaWNzTGF5ZXItPmNsaWVudCgpKTsKKyAgICAgICAgbGF5
ZXIgPSBiYWNraW5nLT5vd25pbmdMYXllcigpOworICAgIH0KKworICAgIGlmICghbGF5ZXIpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIC8vIEZJWE1FOiBDbGFtcCBtYXhpbXVtIGFuZCBt
aW5pbXVtIHNjcm9sbCBwb3NpdGlvbnMgYXMgYSBsYXN0IGF0dGVtcHQgdG8gZml4IHJvdW5kIGVy
cm9ycy4KKyAgICByZXR1cm4gc2V0TGF5ZXJTY3JvbGxQb3NpdGlvbihsYXllciwgc2Nyb2xsUG9z
aXRpb24pOworfQorCiBib29sIEluUmVnaW9uU2Nyb2xsZXJQcml2YXRlOjpzY3JvbGxCeShjb25z
dCBQbGF0Zm9ybTo6SW50U2l6ZSYgZGVsdGEpCiB7CiAgICAgQVNTRVJUKFBsYXRmb3JtOjp3ZWJr
aXRUaHJlYWRNZXNzYWdlQ2xpZW50KCktPmlzQ3VycmVudFRocmVhZCgpKTsKQEAgLTE5Miw2ICsy
MjQsMjkgQEAgc3RkOjp2ZWN0b3I8UGxhdGZvcm06OlNjcm9sbFZpZXdCYXNlKj4gSW5SZWdpb25T
Y3JvbGxlclByaXZhdGU6OmluUmVnaW9uU2Nyb2xsYWIKICAgICByZXR1cm4gdmFsaWRSZXR1cm47
CiB9CiAKK2Jvb2wgSW5SZWdpb25TY3JvbGxlclByaXZhdGU6OnNldExheWVyU2Nyb2xsUG9zaXRp
b24oUmVuZGVyTGF5ZXIqIGxheWVyLCBjb25zdCBJbnRQb2ludCYgc2Nyb2xsUG9zaXRpb24pCit7
CisgICAgUmVuZGVyT2JqZWN0KiBsYXllclJlbmRlcmVyID0gbGF5ZXItPnJlbmRlcmVyKCk7Cisg
ICAgQVNTRVJUKGxheWVyUmVuZGVyZXIpOworCisgICAgaWYgKGxheWVyUmVuZGVyZXItPmlzUmVu
ZGVyVmlldygpKSB7IC8vICNkb2N1bWVudCBjYXNlLgorICAgICAgICBGcmFtZVZpZXcqIHZpZXcg
PSB0b1JlbmRlclZpZXcobGF5ZXJSZW5kZXJlciktPmZyYW1lVmlldygpOworICAgICAgICBBU1NF
UlQodmlldyk7CisKKyAgICAgICAgRnJhbWUqIGZyYW1lID0gdmlldy0+ZnJhbWUoKTsKKyAgICAg
ICAgQVNTRVJUX1VOVVNFRChmcmFtZSwgZnJhbWUpOworCisgICAgICAgIHZpZXctPnNldFNjcm9s
bFBvc2l0aW9uKHNjcm9sbFBvc2l0aW9uKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQor
CisgICAgLy8gUmVuZGVyQm94LWJhc2VkIGVsZW1lbnRzIGNhc2UgKHNjcm9sbGFibGUgYm94ZXMg
KGRpdidzLCBwJ3MsIHRleHRhcmVhJ3MsIGV0YykpLgorICAgIGxheWVyLT5zY3JvbGxUb09mZnNl
dChzY3JvbGxQb3NpdGlvbi54KCksIHNjcm9sbFBvc2l0aW9uLnkoKSk7CisgICAgLy8gRklYTUVf
YWdvbWVzOiBQbGVhc2UgcmVjaGVjayBpZiBpdCBpcyBuZWVkZWQgc3RpbGwhCisgICAgbGF5ZXIt
PnJlbmRlcmVyKCktPnJlcGFpbnQodHJ1ZSk7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIGJvb2wg
SW5SZWdpb25TY3JvbGxlclByaXZhdGU6OnNjcm9sbE5vZGVSZWN1cnNpdmVseShXZWJDb3JlOjpO
b2RlKiBub2RlLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBkZWx0YSkKIHsKICAgICBpZiAoZGVs
dGEuaXNaZXJvKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0lu
UmVnaW9uU2Nyb2xsZXIuaCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvSW5SZWdpb25T
Y3JvbGxlci5oCmluZGV4IGMzZDkzYTcuLmJiZGQ5NGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvYmxhY2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
YmxhY2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlci5oCkBAIC0zNSw3ICszNSw4IEBAIHB1Ymxp
YzoKICAgICBJblJlZ2lvblNjcm9sbGVyKFdlYlBhZ2VQcml2YXRlKik7CiAgICAgfkluUmVnaW9u
U2Nyb2xsZXIoKTsKIAotICAgIGJvb2wgY29tcG9zaXRlZFNldFNjcm9sbFBvc2l0aW9uKHVuc2ln
bmVkIC8qY2Ftb3VmbGFnZWRMYXllciovLCBjb25zdCBQbGF0Zm9ybTo6SW50UG9pbnQmIC8qc2Ny
b2xsUG9zaXRpb24qLyk7CisgICAgYm9vbCBzZXRTY3JvbGxQb3NpdGlvbkNvbXBvc2l0aW5nVGhy
ZWFkKHVuc2lnbmVkIGNhbW91ZmxhZ2VkTGF5ZXIsIGNvbnN0IFBsYXRmb3JtOjpJbnRQb2ludCYg
LypzY3JvbGxQb3NpdGlvbiovKTsKKyAgICBib29sIHNldFNjcm9sbFBvc2l0aW9uV2ViS2l0VGhy
ZWFkKHVuc2lnbmVkIGNhbW91ZmxhZ2VkTGF5ZXIsIGNvbnN0IFBsYXRmb3JtOjpJbnRQb2ludCYg
LypzY3JvbGxQb3NpdGlvbiovKTsKIAogcHJpdmF0ZToKICAgICBmcmllbmQgY2xhc3MgV2ViUGFn
ZVByaXZhdGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0luUmVn
aW9uU2Nyb2xsZXJfcC5oIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9JblJlZ2lvblNj
cm9sbGVyX3AuaAppbmRleCBiYzQ3Zjk2Li5lMzIzOTNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2JsYWNrYmVycnkvQXBpL0luUmVnaW9uU2Nyb2xsZXJfcC5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvYmxhY2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlcl9wLmgKQEAgLTI5LDYgKzI5LDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgRnJhbWU7CiBjbGFzcyBOb2RlOwogY2xhc3MgUmVu
ZGVyT2JqZWN0OworY2xhc3MgUmVuZGVyTGF5ZXI7CiB9CiAKIG5hbWVzcGFjZSBCbGFja0JlcnJ5
IHsKQEAgLTQ4LDEzICs0OSwxOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBoYXNOb2RlKCkgY29uc3Q7
CiAKICAgICBib29sIHNjcm9sbEJ5KGNvbnN0IFBsYXRmb3JtOjpJbnRTaXplJiBkZWx0YSk7Ci0g
ICAgYm9vbCBjb21wb3NpdGVkU2V0U2Nyb2xsUG9zaXRpb24odW5zaWduZWQgY2Ftb3VmbGFnZWRM
YXllciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHNjcm9sbFBvc2l0aW9uKTsKKworICAgIGJv
b2wgc2V0U2Nyb2xsUG9zaXRpb25Db21wb3NpdGluZ1RocmVhZCh1bnNpZ25lZCBjYW1vdWZsYWdl
ZExheWVyLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgc2Nyb2xsUG9zaXRpb24pOworICAgIGJv
b2wgc2V0U2Nyb2xsUG9zaXRpb25XZWJLaXRUaHJlYWQodW5zaWduZWQgY2Ftb3VmbGFnZWRMYXll
ciwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHNjcm9sbFBvc2l0aW9uKTsKIAogICAgIHN0ZDo6
dmVjdG9yPFBsYXRmb3JtOjpTY3JvbGxWaWV3QmFzZSo+IGluUmVnaW9uU2Nyb2xsYWJsZUFyZWFz
Rm9yUG9pbnQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKTsKIAogICAgIFdlYlBhZ2VQcml2YXRl
KiBtX3dlYlBhZ2U7CiAKIHByaXZhdGU6CisgICAgYm9vbCBzZXRMYXllclNjcm9sbFBvc2l0aW9u
KFdlYkNvcmU6OlJlbmRlckxheWVyKiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHNjcm9sbFBv
c2l0aW9uKTsKKworICAgIC8vIE9ic29sZXRlIGNvZGVwYXRoLgogICAgIGJvb2wgc2Nyb2xsTm9k
ZVJlY3Vyc2l2ZWx5KFdlYkNvcmU6Ok5vZGUqLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBkZWx0
YSk7CiAgICAgYm9vbCBzY3JvbGxSZW5kZXJlcihXZWJDb3JlOjpSZW5kZXJPYmplY3QqLCBjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiBkZWx0YSk7CiAgICAgdm9pZCBhZGp1c3RTY3JvbGxEZWx0YShj
b25zdCBXZWJDb3JlOjpJbnRQb2ludCYgbWF4T2Zmc2V0LCBjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYgY3VycmVudE9mZnNldCwgV2ViQ29yZTo6SW50U2l6ZSYgZGVsdGEpIGNvbnN0OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
YmxhY2tiZXJyeS9DaGFuZ2VMb2cKaW5kZXggOTRmN2JlMi4uMmExZjM1MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Js
YWNrYmVycnkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMTItMDgtMTMgIEFudG9uaW8g
R29tZXMgIDxhZ29tZXNAcmltLmNvbT4KKworICAgICAgICBbQmxhY2tCZXJyeV0gUm91bmRpbmcg
ZXJyb3Igc29tZXdoZXJlIHdoZW4gdHJhbnNsYXRpbmcgQ29tcG9zaXRpbmdMYXllciAncyBmb3Ig
aW4tcmVnaW9uIHNjcm9sbGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9OTM4NDgKKyAgICAgICAgUFIgIzE5MDk4NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhdGNoIGFkZHMgYSBXZWJLaXQgdGhyZWFk
IHNldFNjcm9sbFBvc2l0aW9uLWxpa2UgQVBJIHRvIEluUmVnaW9uU2Nyb2xsZXIuCisgICAgICAg
IEl0IGZpeGVzIGEgbWlzbWF0Y2ggd2UgaGFkIG9mIHNldHRpbmcgYSBsYXllcidzIHNjcm9sbCBw
b3NpdGluZyBkaXJlY3RseSB2aWEKKyAgICAgICAgOjpzZXRTY3JvbGxQb3NpdGlvbiBvbiB0aGUg
VUkgdGhyZWFkLCBidXQgZGlzcGF0Y2hpbmcgYSBjb2FsZXNjZWFibGUKKyAgICAgICAgc2Nyb2xs
QnkoZGVsdGEpIG1lc3NhZ2UgdG8gV2ViS2l0IHRocmVhZC4KKworICAgICAgICAqIEFwaS9JblJl
Z2lvblNjcm9sbGVyLmNwcDoKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5SZWdpb25T
Y3JvbGxlcjo6c2V0U2Nyb2xsUG9zaXRpb25Db21wb3NpdGluZ1RocmVhZCk6CisgICAgICAgIENo
YW5nZWQgdGhlIEFQSSBuYW1lIHRvIG1hdGNoIG90aGVyIHRocmVhZCBzcGVjaWZpYyBtZXRob2Rz
IG5hbWluZy4KKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6
OkluUmVnaW9uU2Nyb2xsZXI6OnNldFNjcm9sbFBvc2l0aW9uV2ViS2l0VGhyZWFkKToKKyAgICAg
ICAgQWRkZWQgYSBzZXRTY3JvbGxQb3NpdGlvbi1saWtlIG1ldGhvZCB0byBJblJlZ2lvblNjcm9s
bGVyIHB1YmxpYyBBUEkuIFVzZWQKKyAgICAgICAgdG9nZXRoZXIgd2l0aCBpdHMgVUktdGhyZWFk
IGNvdW50ZXJwYXJ0LCBpdCBjYW4gZml4IHNvbWUgcm91bmRpbmcKKyAgICAgICAgZXJyb3JzIHdl
IGhhdmUgZHVlIHRvIG1peGluZyA6OnNldFNjcm9sbFBvc2l0aW9uIGFuZCA6OnNjcm9sbEJ5IG1l
dGhvZHMuCisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OkluUmVnaW9uU2Nyb2xsZXJQcml2
YXRlOjpzZXRTY3JvbGxQb3NpdGlvbkNvbXBvc2l0aW5nVGhyZWFkKToKKyAgICAgICAgTWV0aG9k
IHJlbmFtZWQuIFNlZSByZWFzb25zIGFib3ZlLgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0
OjpJblJlZ2lvblNjcm9sbGVyUHJpdmF0ZTo6c2V0U2Nyb2xsUG9zaXRpb25XZWJLaXRUaHJlYWQp
OgorICAgICAgICBDYWxscyBmb3dhcmRzIHRoZSBjYWxsIHRvIDo6c2V0TGF5ZXJTY3JvbGxQb3Np
dGlvbiAoYmVsb3cpLgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpJblJlZ2lvblNjcm9s
bGVyUHJpdmF0ZTo6c2V0TGF5ZXJTY3JvbGxQb3NpdGlvbik6CisgICAgICAgIFNldHMgdGhlIHNj
cm9sbCBwb3NpdGlvbiBvZiBhIGdpdmVuIFJlbmRlckxheWVyLgorICAgICAgICAqIEFwaS9JblJl
Z2lvblNjcm9sbGVyLmg6CisgICAgICAgIChJblJlZ2lvblNjcm9sbGVyKToKKyAgICAgICAgKiBB
cGkvSW5SZWdpb25TY3JvbGxlcl9wLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKElu
UmVnaW9uU2Nyb2xsZXJQcml2YXRlKToKKyAgICAgICAgKiBXZWJLaXRTdXBwb3J0L0luUmVnaW9u
U2Nyb2xsYWJsZUFyZWEuY3BwOgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpJblJlZ2lv
blNjcm9sbGFibGVBcmVhOjpJblJlZ2lvblNjcm9sbGFibGVBcmVhKToKKyAgICAgICAgQ2FjaGUg
dGhlIFJlbmRlckxheWVyIG9iamVjdCBhc3NvY2lhdGVkIHRvIGEgZ2l2ZW4gc2Nyb2xsYWJsZSBh
cmVhCisgICAgICAgIGluc3RlYWQgb2YgaXRzIExheWVyQ29tcG9zaXRpbmdUaHJlYWQuIFRoaXMg
d2F5IHdlIGNhbiB1c2UgaXQgZm9yCisgICAgICAgIHNjcm9sbGluZyBmcm9tIGJvdGggQ29tcG9z
aXRpbmcvVUkgYW5kIFdlYktpdCB0aHJlYWRzLgorCiAyMDEyLTA4LTEyICBBcnZpZCBOaWxzc29u
ICA8YW5pbHNzb25AcmltLmNvbT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0gVGFwIGhpZ2hsaWdo
dCBmbGFzaGVzIGNoZWNrZXJib2FyZCBhZnRlciBwaW5jaCB6b29tCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViS2l0U3VwcG9ydC9JblJlZ2lvblNjcm9sbGFibGVBcmVh
LmNwcCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0luUmVnaW9uU2Ny
b2xsYWJsZUFyZWEuY3BwCmluZGV4IGQ0MjA1OWUuLjc2NGQyMDggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0luUmVnaW9uU2Nyb2xsYWJsZUFyZWEu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0luUmVnaW9u
U2Nyb2xsYWJsZUFyZWEuY3BwCkBAIC0yMCw3ICsyMCw2IEBACiAjaW5jbHVkZSAiSW5SZWdpb25T
Y3JvbGxhYmxlQXJlYS5oIgogCiAjaW5jbHVkZSAiRnJhbWUuaCIKLSNpbmNsdWRlICJMYXllckNv
bXBvc2l0aW5nVGhyZWFkLmgiCiAjaW5jbHVkZSAiTGF5ZXJXZWJLaXRUaHJlYWQuaCIKICNpbmNs
dWRlICJSZW5kZXJCb3guaCIKICNpbmNsdWRlICJSZW5kZXJMYXllci5oIgpAQCAtOTAsNyArODks
NyBAQCBJblJlZ2lvblNjcm9sbGFibGVBcmVhOjpJblJlZ2lvblNjcm9sbGFibGVBcmVhKFdlYlBh
Z2VQcml2YXRlKiB3ZWJQYWdlLCBSZW5kZXJMYQogICAgICAgICBpZiAobV9sYXllci0+dXNlc0Nv
bXBvc2l0ZWRTY3JvbGxpbmcoKSkgewogICAgICAgICAgICAgbV9zdXBwb3J0c0NvbXBvc2l0ZWRT
Y3JvbGxpbmcgPSB0cnVlOwogICAgICAgICAgICAgQVNTRVJUKG1fbGF5ZXItPmJhY2tpbmcoKS0+
aGFzU2Nyb2xsaW5nTGF5ZXIoKSk7Ci0gICAgICAgICAgICBtX2NhY2hlZENvbXBvc2l0ZWRTY3Jv
bGxhYmxlTGF5ZXIgPSByZWludGVycHJldF9jYXN0PHVuc2lnbmVkPihtX2xheWVyLT5iYWNraW5n
KCktPnNjcm9sbGluZ0xheWVyKCktPnBsYXRmb3JtTGF5ZXIoKS0+bGF5ZXJDb21wb3NpdGluZ1Ro
cmVhZCgpKTsKKyAgICAgICAgICAgIG1fY2FjaGVkQ29tcG9zaXRlZFNjcm9sbGFibGVMYXllciA9
IHJlaW50ZXJwcmV0X2Nhc3Q8dW5zaWduZWQ+KG1fbGF5ZXItPmJhY2tpbmcoKS0+c2Nyb2xsaW5n
TGF5ZXIoKS0+cGxhdGZvcm1MYXllcigpKTsKICAgICAgICAgfQogCiAgICAgICAgIG1fb3ZlcnNj
cm9sbExpbWl0RmFjdG9yID0gMC4wOwotLSAKMS43LjUuNAoK
</data>
<flag name="review"
          id="168098"
          type_id="1"
          status="+"
          setter="yong.li.webkit"
    />
          </attachment>
      

    </bug>

</bugzilla>