<?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>59477</bug_id>
          
          <creation_ts>2011-04-26 11:48:35 -0700</creation_ts>
          <short_desc>Loss of precision errors throughout the codebase spotted by GCC 4.6</short_desc>
          <delta_ts>2011-04-26 16:33:40 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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="Xan Lopez">xan.lopez</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>392602</commentid>
    <comment_count>0</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2011-04-26 11:48:35 -0700</bug_when>
    <thetext>GCC 4.6 seems to be more picky about trying to stuff 64bit values into 32bit variables (as it should!). All the cases seem safe to fix by forcefully casting the value, since it seems either impossible (ByteCodeGenerator, UTF8, ...) or extremely unlikely (the string length in FontGtk) that the value would overflow a 32bit value. At worst, we are not really making things worse, but of course in some cases it might make sense to change the code to not force a cast here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>392610</commentid>
    <comment_count>1</comment_count>
      <attachid>91136</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2011-04-26 11:54:27 -0700</bug_when>
    <thetext>Created attachment 91136
precission.diff</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393024</commentid>
    <comment_count>2</comment_count>
      <attachid>91136</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-04-26 16:33:11 -0700</bug_when>
    <thetext>Comment on attachment 91136
precission.diff

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

I think that this should be split into parts that domain experts could look at.

&gt; Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp:2102
&gt; +    SwitchInfo info = { static_cast&lt;uint32_t&gt;(instructions().size()), type };

I think that this patch is making things worse in that once this warning is enabled in some other compiler, we won&apos;t see the issues. It&apos;s not obvious to me that malicious code can&apos;t create 4 billion instructions.

&gt; Source/JavaScriptCore/wtf/unicode/UTF8.cpp:236
&gt; +static const UChar32 offsetsFromUTF8[6] = { 0x00000000UL, 0x00003080UL, 0x000E2080UL, 0x03C82080UL, static_cast&lt;const UChar32&gt;(0xFA082080UL), static_cast&lt;const UChar32&gt;(0x82082080UL) };

Can this be fixed by not using UChar32? These are not Unicode characters, these are magic numbers.

&gt; Source/WebCore/plugins/PluginPackage.cpp:348
&gt; +        static_cast&lt;unsigned int&gt;(m_lastModified)

We don&apos;t use &quot;unsigned int&quot;, we use &quot;unsigned&quot;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>91136</attachid>
            <date>2011-04-26 11:54:27 -0700</date>
            <delta_ts>2011-04-26 16:33:11 -0700</delta_ts>
            <desc>precission.diff</desc>
            <filename>precission.diff</filename>
            <type>text/plain</type>
            <size>8218</size>
            <attacher name="Xan Lopez">xan.lopez</attacher>
            
              <data encoding="base64">RnJvbSBjN2UwYTcwOGMzNDhhYWU1NzVhOGQ5YWM4NDU5YzZjNTk5ZTkxMTllIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBYYW4gTG9wZXogPHhsb3BlekBpZ2FsaWEuY29tPgpEYXRlOiBU
dWUsIDI2IEFwciAyMDExIDExOjUzOjI2IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gU291cmNlL1dl
YkNvcmU6CgoyMDExLTA0LTI2ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgIExvc3Mgb2YgcHJlY2lzc2lv
biBlcnJvcnMgdGhyb3VnaG91dCB0aGUgY29kZWJhc2Ugc3BvdHRlZCBieSBHQ0MgNC42CiAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU5NDc3CgogICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0ZvbnRHdGsuY3BwOgogICAgICAgIChXZWJDb3JlOjpG
b250OjpkcmF3Q29tcGxleFRleHQpOiB0aGUgQVBJIGV4cGVjdHMgYW5kIGludCBhcnJheSwKICAg
ICAgICBzbyBjYXN0IGFjY29yZGluZ2x5LgogICAgICAgICogcGx1Z2lucy9QbHVnaW5QYWNrYWdl
LmNwcDoKICAgICAgICAoV2ViQ29yZTo6UGx1Z2luUGFja2FnZTo6aGFzaCk6IGNhc3Qgc2l6ZV90
IHRvIHVuc2lnbmVkIGludCwgdGhlCiAgICAgICAgQVBJIHJlcXVpcmVzIGl0LgoKU291cmNlL0ph
dmFTY3JpcHRDb3JlOgoKMjAxMS0wNC0yNiAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+
CgogICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICBMb3NzIG9mIHBy
ZWNpc3Npb24gZXJyb3JzIHRocm91Z2hvdXQgdGhlIGNvZGViYXNlIHNwb3R0ZWQgYnkgR0NDIDQu
NgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01OTQ3NwoK
ICAgICAgICAqIGJ5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5jcHA6CiAgICAgICAgKEpT
Qzo6Qnl0ZWNvZGVHZW5lcmF0b3I6OmVtaXRDYXRjaCk6IHNpemVfdCBpcyBub3QgbmVjZXNhcmls
eQogICAgICAgIDMyYml0IGluIGFsbCBwbGF0Zm9ybXMsIGJ1dCB3ZSBjYW5ub3Qgb3ZlcmZsb3cg
aW4gdGhpcyBwYXJ0aWN1bGFyCiAgICAgICAgY2FzZS4KICAgICAgICAoSlNDOjpCeXRlY29kZUdl
bmVyYXRvcjo6YmVnaW5Td2l0Y2gpOiBkaXR0by4KICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nUHJv
dG90eXBlLmNwcDoKICAgICAgICAoSlNDOjpzdHJpbmdQcm90b0Z1bmNSZXBsYWNlKTogY2FzdCBz
aXplX3QgdG8gaW50LCBpdCdzIHdoYXQgdGhlCiAgICAgICAgQVBJIGV4cGVjdHMuCiAgICAgICAg
KiB3dGYvdW5pY29kZS9VVEY4LmNwcDogbG9uZyB1bnNpZ25lZCBpcyBsYXJnZXIgdGhhbiBVQ2hh
cjMyIG9uCiAgICAgICAgNjRiaXQsIGJ1dCB0aGUgY29uc3RhbnQgZml0cyBpbiAzMmJpdHMuCi0t
LQogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgfCAg
IDE4ICsrKysrKysrKysrKysrKysrKwogLi4uL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRv
ci5jcHAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcCAgfCAgICAyICstCiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvd3RmL3VuaWNvZGUvVVRGOC5jcHAgICAgICAgICB8ICAgIDMgKy0tCiBTb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKysrKysrKysrKysr
KysKIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9Gb250R3RrLmNwcCAgIHwg
ICAgMiArLQogU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5QYWNrYWdlLmNwcCAgICAgICAg
ICAgfCAgICAyICstCiA3IGZpbGVzIGNoYW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDggZGVsZXRp
b25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggNDRhZGE1NS4uM2E0Yjc0MSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDQtMjYgIFhhbiBM
b3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIExvc3Mgb2YgcHJlY2lzc2lvbiBlcnJvcnMgdGhyb3VnaG91dCB0
aGUgY29kZWJhc2Ugc3BvdHRlZCBieSBHQ0MgNC42CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD01OTQ3NworCisgICAgICAgICogYnl0ZWNvbXBpbGVyL0J5
dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVHZW5lcmF0b3I6OmVt
aXRDYXRjaCk6IHNpemVfdCBpcyBub3QgbmVjZXNhcmlseQorICAgICAgICAzMmJpdCBpbiBhbGwg
cGxhdGZvcm1zLCBidXQgd2UgY2Fubm90IG92ZXJmbG93IGluIHRoaXMgcGFydGljdWxhcgorICAg
ICAgICBjYXNlLgorICAgICAgICAoSlNDOjpCeXRlY29kZUdlbmVyYXRvcjo6YmVnaW5Td2l0Y2gp
OiBkaXR0by4KKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAg
IChKU0M6OnN0cmluZ1Byb3RvRnVuY1JlcGxhY2UpOiBjYXN0IHNpemVfdCB0byBpbnQsIGl0J3Mg
d2hhdCB0aGUKKyAgICAgICAgQVBJIGV4cGVjdHMuCisgICAgICAgICogd3RmL3VuaWNvZGUvVVRG
OC5jcHA6IGxvbmcgdW5zaWduZWQgaXMgbGFyZ2VyIHRoYW4gVUNoYXIzMiBvbgorICAgICAgICA2
NGJpdCwgYnV0IHRoZSBjb25zdGFudCBmaXRzIGluIDMyYml0cy4KKwogMjAxMS0wNC0yMiAgWGFu
IExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVy
L0J5dGVjb2RlR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGls
ZXIvQnl0ZWNvZGVHZW5lcmF0b3IuY3BwCmluZGV4IDM2MTZjN2QuLjQzMDg3MDcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5lcmF0b3Iu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5l
cmF0b3IuY3BwCkBAIC0yMDUwLDkgKzIwNTAsOSBAQCBSZWdpc3RlcklEKiBCeXRlY29kZUdlbmVy
YXRvcjo6ZW1pdENhdGNoKFJlZ2lzdGVySUQqIHRhcmdldFJlZ2lzdGVyLCBMYWJlbCogc3Rhcgog
ewogICAgIG1fdXNlc0V4Y2VwdGlvbnMgPSB0cnVlOwogI2lmIEVOQUJMRShKSVQpCi0gICAgSGFu
ZGxlckluZm8gaW5mbyA9IHsgc3RhcnQtPmJpbmQoMCwgMCksIGVuZC0+YmluZCgwLCAwKSwgaW5z
dHJ1Y3Rpb25zKCkuc2l6ZSgpLCBtX2R5bmFtaWNTY29wZURlcHRoICsgbV9iYXNlU2NvcGVEZXB0
aCwgQ29kZUxvY2F0aW9uTGFiZWwoKSB9OworICAgIEhhbmRsZXJJbmZvIGluZm8gPSB7IHN0YXJ0
LT5iaW5kKDAsIDApLCBlbmQtPmJpbmQoMCwgMCksIHN0YXRpY19jYXN0PHVpbnQzMl90PihpbnN0
cnVjdGlvbnMoKS5zaXplKCkpLCBtX2R5bmFtaWNTY29wZURlcHRoICsgbV9iYXNlU2NvcGVEZXB0
aCwgQ29kZUxvY2F0aW9uTGFiZWwoKSB9OwogI2Vsc2UKLSAgICBIYW5kbGVySW5mbyBpbmZvID0g
eyBzdGFydC0+YmluZCgwLCAwKSwgZW5kLT5iaW5kKDAsIDApLCBpbnN0cnVjdGlvbnMoKS5zaXpl
KCksIG1fZHluYW1pY1Njb3BlRGVwdGggKyBtX2Jhc2VTY29wZURlcHRoIH07CisgICAgSGFuZGxl
ckluZm8gaW5mbyA9IHsgc3RhcnQtPmJpbmQoMCwgMCksIGVuZC0+YmluZCgwLCAwKSwgc3RhdGlj
X2Nhc3Q8dWludDMyX3Q+KGluc3RydWN0aW9ucygpLnNpemUoKSksIG1fZHluYW1pY1Njb3BlRGVw
dGggKyBtX2Jhc2VTY29wZURlcHRoIH07CiAjZW5kaWYKIAogICAgIG1fY29kZUJsb2NrLT5hZGRF
eGNlcHRpb25IYW5kbGVyKGluZm8pOwpAQCAtMjA5OSw3ICsyMDk5LDcgQEAgdm9pZCBCeXRlY29k
ZUdlbmVyYXRvcjo6ZW1pdFB1c2hOZXdTY29wZShSZWdpc3RlcklEKiBkc3QsIGNvbnN0IElkZW50
aWZpZXImIHByb3AKIAogdm9pZCBCeXRlY29kZUdlbmVyYXRvcjo6YmVnaW5Td2l0Y2goUmVnaXN0
ZXJJRCogc2NydXRpbmVlUmVnaXN0ZXIsIFN3aXRjaEluZm86OlN3aXRjaFR5cGUgdHlwZSkKIHsK
LSAgICBTd2l0Y2hJbmZvIGluZm8gPSB7IGluc3RydWN0aW9ucygpLnNpemUoKSwgdHlwZSB9Owor
ICAgIFN3aXRjaEluZm8gaW5mbyA9IHsgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGluc3RydWN0aW9u
cygpLnNpemUoKSksIHR5cGUgfTsKICAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICAgICAgY2FzZSBT
d2l0Y2hJbmZvOjpTd2l0Y2hJbW1lZGlhdGU6CiAgICAgICAgICAgICBlbWl0T3Bjb2RlKG9wX3N3
aXRjaF9pbW0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3Ry
aW5nUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1By
b3RvdHlwZS5jcHAKaW5kZXggOTExMTJhNS4uZTc5ZDBlZCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwCkBAIC00NjMsNyArNDYzLDcg
QEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBzdHJpbmdQcm90b0Z1bmNSZXBsYWNlKEV4
ZWNTdGF0ZSogZXhlYykKICAgICB9CiAgICAgCiAgICAgc2l6ZV90IG1hdGNoRW5kID0gbWF0Y2hQ
b3MgKyBtYXRjaExlbjsKLSAgICBpbnQgb3ZlY3RvclsyXSA9IHsgbWF0Y2hQb3MsIG1hdGNoRW5k
IH07CisgICAgaW50IG92ZWN0b3JbMl0gPSB7IHN0YXRpY19jYXN0PGludD4obWF0Y2hQb3MpLCBz
dGF0aWNfY2FzdDxpbnQ+KG1hdGNoRW5kKSB9OwogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
anNTdHJpbmcoZXhlYywgc291cmNlLnN1YnN0cmluZ1NoYXJpbmdJbXBsKDAsIG1hdGNoUG9zKSwg
c3Vic3RpdHV0ZUJhY2tyZWZlcmVuY2VzKHJlcGxhY2VtZW50U3RyaW5nLCBzb3VyY2UsIG92ZWN0
b3IsIDApLCBzb3VyY2Uuc3Vic3RyaW5nU2hhcmluZ0ltcGwobWF0Y2hFbmQpKSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdW5pY29kZS9VVEY4LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdW5pY29kZS9VVEY4LmNwcAppbmRleCAzYTg4OTA2Li44
MzE5YTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3VuaWNvZGUvVVRG
OC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi91bmljb2RlL1VURjguY3BwCkBA
IC0yMzMsOCArMjMzLDcgQEAgc3RhdGljIGJvb2wgaXNMZWdhbFVURjgoY29uc3QgdW5zaWduZWQg
Y2hhciogc291cmNlLCBpbnQgbGVuZ3RoKQogLy8gTWFnaWMgdmFsdWVzIHN1YnRyYWN0ZWQgZnJv
bSBhIGJ1ZmZlciB2YWx1ZSBkdXJpbmcgVVRGOCBjb252ZXJzaW9uLgogLy8gVGhpcyB0YWJsZSBj
b250YWlucyBhcyBtYW55IHZhbHVlcyBhcyB0aGVyZSBtaWdodCBiZSB0cmFpbGluZyBieXRlcwog
Ly8gaW4gYSBVVEYtOCBzZXF1ZW5jZS4KLXN0YXRpYyBjb25zdCBVQ2hhcjMyIG9mZnNldHNGcm9t
VVRGOFs2XSA9IHsgMHgwMDAwMDAwMFVMLCAweDAwMDAzMDgwVUwsIDB4MDAwRTIwODBVTCwgCi0g
ICAgICAgICAgICAweDAzQzgyMDgwVUwsIDB4RkEwODIwODBVTCwgMHg4MjA4MjA4MFVMIH07Citz
dGF0aWMgY29uc3QgVUNoYXIzMiBvZmZzZXRzRnJvbVVURjhbNl0gPSB7IDB4MDAwMDAwMDBVTCwg
MHgwMDAwMzA4MFVMLCAweDAwMEUyMDgwVUwsIDB4MDNDODIwODBVTCwgc3RhdGljX2Nhc3Q8Y29u
c3QgVUNoYXIzMj4oMHhGQTA4MjA4MFVMKSwgc3RhdGljX2Nhc3Q8Y29uc3QgVUNoYXIzMj4oMHg4
MjA4MjA4MFVMKSB9OwogCiBzdGF0aWMgaW5saW5lIFVDaGFyMzIgcmVhZFVURjhTZXF1ZW5jZShj
b25zdCBjaGFyKiYgc2VxdWVuY2UsIHVuc2lnbmVkIGxlbmd0aCkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBm
YjVhN2JiLi5hMDFkNmM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDQtMjYg
IFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIExvc3Mgb2YgcHJlY2lzc2lvbiBlcnJvcnMgdGhyb3Vn
aG91dCB0aGUgY29kZWJhc2Ugc3BvdHRlZCBieSBHQ0MgNC42CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01OTQ3NworCisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvZ3RrL0ZvbnRHdGsuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6ZHJhd0Nv
bXBsZXhUZXh0KTogdGhlIEFQSSBleHBlY3RzIGFuZCBpbnQgYXJyYXksCisgICAgICAgIHNvIGNh
c3QgYWNjb3JkaW5nbHkuCisgICAgICAgICogcGx1Z2lucy9QbHVnaW5QYWNrYWdlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlBsdWdpblBhY2thZ2U6Omhhc2gpOiBjYXN0IHNpemVfdCB0byB1bnNp
Z25lZCBpbnQsIHRoZQorICAgICAgICBBUEkgcmVxdWlyZXMgaXQuCisKIDIwMTEtMDQtMjIgIFhh
biBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3RrL0ZvbnRHdGsuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0Zv
bnRHdGsuY3BwCmluZGV4IDk3N2FhNjIuLmU0ZmE3YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9Gb250R3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvRm9udEd0ay5jcHAKQEAgLTI5MSw3ICsyOTEsNyBAQCB2
b2lkIEZvbnQ6OmRyYXdDb21wbGV4VGV4dChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0
IFRleHRSdW4mIHJ1biwgY29uc3QgRgogICAgIFBhbmdvUmVnaW9uVHlwZSBwYXJ0aWFsUmVnaW9u
ID0gMDsKICAgICBjaGFyKiBzdGFydCA9IGdfdXRmOF9vZmZzZXRfdG9fcG9pbnRlcih1dGY4LCBm
cm9tKTsKICAgICBjaGFyKiBlbmQgPSBnX3V0Zjhfb2Zmc2V0X3RvX3BvaW50ZXIoc3RhcnQsIHRv
IC0gZnJvbSk7Ci0gICAgaW50IHJhbmdlc1tdID0ge3N0YXJ0IC0gdXRmOCwgZW5kIC0gdXRmOH07
CisgICAgaW50IHJhbmdlc1tdID0ge3N0YXRpY19jYXN0PGludD4oc3RhcnQgLSB1dGY4KSwgc3Rh
dGljX2Nhc3Q8aW50PihlbmQgLSB1dGY4KX07CiAgICAgcGFydGlhbFJlZ2lvbiA9IGdka19wYW5n
b19sYXlvdXRfbGluZV9nZXRfY2xpcF9yZWdpb24obGF5b3V0TGluZSwgMCwgMCwgcmFuZ2VzLCAx
KTsKIAogICAgIGRyYXdHbHlwaHNTaGFkb3coY29udGV4dCwgcG9pbnQsIGxheW91dExpbmUsIHBh
cnRpYWxSZWdpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5Q
YWNrYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luUGFja2FnZS5jcHAKaW5k
ZXggMjg1ZjVjNS4uNDM3NjY4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9Q
bHVnaW5QYWNrYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblBhY2th
Z2UuY3BwCkBAIC0zNDUsNyArMzQ1LDcgQEAgdW5zaWduZWQgUGx1Z2luUGFja2FnZTo6aGFzaCgp
IGNvbnN0CiB7CiAgICAgdW5zaWduZWQgaGFzaENvZGVzW10gPSB7CiAgICAgICAgIG1fcGF0aC5p
bXBsKCktPmhhc2goKSwKLSAgICAgICAgbV9sYXN0TW9kaWZpZWQKKyAgICAgICAgc3RhdGljX2Nh
c3Q8dW5zaWduZWQgaW50PihtX2xhc3RNb2RpZmllZCkKICAgICB9OwogCiAgICAgcmV0dXJuIFN0
cmluZ0hhc2hlcjo6aGFzaE1lbW9yeTxzaXplb2YoaGFzaENvZGVzKT4oaGFzaENvZGVzKTsKLS0g
CjEuNy40LjQKCg==
</data>
<flag name="review"
          id="83919"
          type_id="1"
          status="-"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>