<?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>87896</bug_id>
          
          <creation_ts>2012-05-30 13:39:37 -0700</creation_ts>
          <short_desc>Large number constant in TransformationMatrix::projectPoint overflows FractionalLayoutUnits with sub-pixel layout enabled</short_desc>
          <delta_ts>2012-06-01 20:18:18 -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>New Bugs</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="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>eae</cc>
    
    <cc>jamesr</cc>
    
    <cc>leviw</cc>
    
    <cc>shawnsingh</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>637643</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-30 13:39:37 -0700</bug_when>
    <thetext>ERROR: !(isInBounds(value)) in FractionalLayoutUnit.h on ducks.nhl.com with fractional layout ratio of 60:1
Requested by jamesr_ on #webkit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637677</commentid>
    <comment_count>1</comment_count>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2012-05-30 14:05:57 -0700</bug_when>
    <thetext>Updating title to reflect that many of these overflows are caused by the following lines:

// Using int max causes overflow when other code uses the projected point. To
// represent infinity yet reduce the risk of overflow, we use a large but
// not-too-large number here when clamping.
const int kLargeNumber = 10000000;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637714</commentid>
    <comment_count>2</comment_count>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-05-30 14:46:57 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Updating title to reflect that many of these overflows are caused by the following lines:
&gt; 
&gt; // Using int max causes overflow when other code uses the projected point. To
&gt; // represent infinity yet reduce the risk of overflow, we use a large but
&gt; // not-too-large number here when clamping.
&gt; const int kLargeNumber = 10000000;

An explanation is needed here.

This code is not the cause of overflow.  If anything, it actually reduced the occurrences of overflow... before I had created kLargeNumber, the code was using int_max, and that was also overflowing, even more quickly.

The actual cause of overflow is the way w &lt; 0 special case is handled in TransformationMatrix::projectPoint(), code which I did not change.  In that code, projectPoint is clamping to &quot;infinity&quot; when w &lt; 0.  The most correct fix, however, should not be clamping these values when w &lt;0.  Instead, it really needs to perform clipping in homogeneous coordinates.  An example of how clipping is implemented for chromium is in platform/graphics/chromium/cc/CCMathUtil.*  -- which I had written exactly because of this problem for our own rendering code.

Please feel free to adapt that code into WebCore TransformationMatrix.  However, please be aware that for hit testing, this may very likely require supporting hit testing for arbitrary polygons of up to 8 vertices.  Unfortunately, adding proper clipping to usage of transforms in WebCore is a very nontrivial task that will take one person several weeks, maybe even months.  Unfortunately I won&apos;t have time to help with that, but I&apos;m willing to discuss and answer questions, and the CCMathUtil code should be a helpful start for anyone who does take on this task.

Another alternate possibility is to require various code to be aware of the concept of &quot;infinity&quot; rather than directly using INT_MAX.  I&apos;m not sure what this would entail either, but I have encountered similar issues related to &quot;infiniteRects&quot; that were being operated on, thus causing overflow as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639786</commentid>
    <comment_count>3</comment_count>
      <attachid>145389</attachid>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2012-06-01 15:26:22 -0700</bug_when>
    <thetext>Created attachment 145389
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639805</commentid>
    <comment_count>4</comment_count>
      <attachid>145389</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-06-01 15:52:26 -0700</bug_when>
    <thetext>Comment on attachment 145389
Patch

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

&gt; Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp:579
&gt; +        const int kLargeNumber = 100000000 / kFixedPointDenominator;

style not: WebKit style for constants is to name them the same way all other variables are named, not kBlahBlah</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639806</commentid>
    <comment_count>5</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-06-01 15:53:58 -0700</bug_when>
    <thetext>a &quot;style not&quot; is halfway between a note and a nit.  Or maybe it&apos;s just a typo.  We&apos;ll never know the truth...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639811</commentid>
    <comment_count>6</comment_count>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-06-01 15:55:33 -0700</bug_when>
    <thetext>
If it works, its OK with me.  But... one little issue is gnawing at my mind about this.  In theory, kLargeNumber is supposed to represent infinity, and that&apos;s the only place its used in code where its supposed to represent infinity.

So, why does behavior get fixed when dividing by 60 to make it smaller?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639813</commentid>
    <comment_count>7</comment_count>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2012-06-01 15:56:48 -0700</bug_when>
    <thetext>Because 100000000 is too big for FractionalLayoutUnit&apos;s tiny mind.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639815</commentid>
    <comment_count>8</comment_count>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-06-01 15:58:45 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Because 100000000 is too big for FractionalLayoutUnit&apos;s tiny mind.

Got it.  so it overflows sooner beacuse of the more limited range.

anyway, if reviewrs are OK with it, its good for me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639816</commentid>
    <comment_count>9</comment_count>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2012-06-01 15:58:57 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Because 100000000 is too big for FractionalLayoutUnit&apos;s tiny mind.

Or more specifically, we&apos;ll later represent the projected point using LayoutUnits instead of integers. I&apos;m more curious why we don&apos;t do clamping instead of having an arbitrary constant to begin with, but in the meantime I&apos;d like to fix hit testing with 3d transforms ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639817</commentid>
    <comment_count>10</comment_count>
      <attachid>145395</attachid>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2012-06-01 15:59:57 -0700</bug_when>
    <thetext>Created attachment 145395
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639820</commentid>
    <comment_count>11</comment_count>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-06-01 16:04:40 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #7)
&gt; &gt; Because 100000000 is too big for FractionalLayoutUnit&apos;s tiny mind.
&gt; 
&gt; Or more specifically, we&apos;ll later represent the projected point using LayoutUnits instead of integers. I&apos;m more curious why we don&apos;t do clamping instead of having an arbitrary constant to begin with, but in the meantime I&apos;d like to fix hit testing with 3d transforms ;)

we don&apos;t do clamping to infinity because it causes overflow even more quickly than kLargeNumber.  It wouldn&apos;t be correct to &quot;clamp&quot; in any other way, the correct solution is to &quot;clipping&quot; in homogeneous coordinates, before divide-by-w.

we don&apos;t do &quot;clipping&quot; in homogeneous coordinates, before divide-by-w because of the situation described in Comment #2.  It will take a gargantuan effort to support that in WebCore at this time.

hope that answers the question?  We could always just discuss it offline later, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639936</commentid>
    <comment_count>12</comment_count>
      <attachid>145395</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-01 20:18:13 -0700</bug_when>
    <thetext>Comment on attachment 145395
Patch for landing

Clearing flags on attachment: 145395

Committed r119310: &lt;http://trac.webkit.org/changeset/119310&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639937</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-01 20:18:18 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>145389</attachid>
            <date>2012-06-01 15:26:22 -0700</date>
            <delta_ts>2012-06-01 15:59:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87896-20120601152621.patch</filename>
            <type>text/plain</type>
            <size>2166</size>
            <attacher name="Levi Weintraub">leviw</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExOTI4OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA2LTAxICBMZXZpIFdl
aW50cmF1YiAgPGxldml3QGNocm9taXVtLm9yZz4KKworICAgICAgICBMYXJnZSBudW1iZXIgY29u
c3RhbnQgaW4gVHJhbnNmb3JtYXRpb25NYXRyaXg6OnByb2plY3RQb2ludCBvdmVyZmxvd3MgRnJh
Y3Rpb25hbExheW91dFVuaXRzIHdpdGggc3ViLXBpeGVsIGxheW91dCBlbmFibGVkCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04Nzg5NgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGtMYXJnZU51bWJlciBpcyBt
ZWFudCB0byBhdm9pZCBvdmVyZmxvd2luZyB3aGVuIHByb2plY3RpbmcgYSBwb2ludCB0aHJvdWdo
IGEgdHJhbnNmb3JtLiBVbmZvcnR1bmF0ZWx5LAorICAgICAgICBkdWUgdG8gRnJhY3Rpb25hbExh
eW91dFVuaXQncyBkaW1pbmlzaGVkIHJhbmdlIGNvbXBhcmVkIHRvIGludGVnZXJzLCB3ZSB3ZXJl
IG92ZXJmbG93aW5nIGFueXdheXMuIFRoaXMKKyAgICAgICAgY2hhbmdlIGFkanVzdHMgb3VyIGxh
cmdlIG51bWJlciBieSB0aGUgc2FtZSB2YWx1ZSwgYnV0IGFkanVzdGVkIGZvciBvdXIgZGVub21p
bmF0b3IuCisKKyAgICAgICAgVGhpcyB3YXMgb3JpZ2luYWxseSBtaXNzZWQgYmVjYXVzZSB0cmFu
c2Zvcm1zLzNkIGlzIG1hcmtlZCBhcyBwYXNzL2ZhaWwgaW4gQ2hyb21pdW0ncyB0ZXN0X2V4cGVj
dGF0aW9ucy50eHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY2OTg5IHRyYWNrcyByZW1vdmluZyB0aGlzIHByb2JsZW0uCisKKyAgICAgICAgTm8gbmV3
IHRlc3RzLiBDb3ZlcmVkIGJ5IHRyYW5zZm9ybXMvM2QvaGl0LXRlc3RpbmcvcGVyc3BlY3RpdmUt
Y2xpcHBlZC5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL1Ry
YW5zZm9ybWF0aW9uTWF0cml4LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRyYW5zZm9ybWF0aW9u
TWF0cml4Ojpwcm9qZWN0UG9pbnQpOgorCiAyMDEyLTA2LTAxICBKYW1lcyBSb2JpbnNvbiAgPGph
bWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBVbnJldmlld2VkIGNvbXBp
bGUgZml4IGZvciByMTE5MjgzCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy90cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0cml4LmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0
cml4LmNwcAkocmV2aXNpb24gMTE5MjQ4KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdHJhbnNmb3Jtcy9UcmFuc2Zvcm1hdGlvbk1hdHJpeC5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTU3Niw3ICs1NzYsNyBAQCBGbG9hdFBvaW50IFRyYW5zZm9ybWF0aW9uTWF0cml4Ojpwcm9q
ZWN0CiAgICAgICAgIC8vIFVzaW5nIGludCBtYXggY2F1c2VzIG92ZXJmbG93IHdoZW4gb3RoZXIg
Y29kZSB1c2VzIHRoZSBwcm9qZWN0ZWQgcG9pbnQuIFRvCiAgICAgICAgIC8vIHJlcHJlc2VudCBp
bmZpbml0eSB5ZXQgcmVkdWNlIHRoZSByaXNrIG9mIG92ZXJmbG93LCB3ZSB1c2UgYSBsYXJnZSBi
dXQKICAgICAgICAgLy8gbm90LXRvby1sYXJnZSBudW1iZXIgaGVyZSB3aGVuIGNsYW1waW5nLgot
ICAgICAgICBjb25zdCBpbnQga0xhcmdlTnVtYmVyID0gMTAwMDAwMDAwOworICAgICAgICBjb25z
dCBpbnQga0xhcmdlTnVtYmVyID0gMTAwMDAwMDAwIC8ga0ZpeGVkUG9pbnREZW5vbWluYXRvcjsK
ICAgICAgICAgb3V0WCA9IGNvcHlzaWduKGtMYXJnZU51bWJlciwgb3V0WCk7CiAgICAgICAgIG91
dFkgPSBjb3B5c2lnbihrTGFyZ2VOdW1iZXIsIG91dFkpOwogICAgICAgICBpZiAoY2xhbXBlZCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>145395</attachid>
            <date>2012-06-01 15:59:57 -0700</date>
            <delta_ts>2012-06-01 20:18:13 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-87896-20120601155956.patch</filename>
            <type>text/plain</type>
            <size>2311</size>
            <attacher name="Levi Weintraub">leviw</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExOTI4OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA2LTAxICBMZXZpIFdl
aW50cmF1YiAgPGxldml3QGNocm9taXVtLm9yZz4KKworICAgICAgICBMYXJnZSBudW1iZXIgY29u
c3RhbnQgaW4gVHJhbnNmb3JtYXRpb25NYXRyaXg6OnByb2plY3RQb2ludCBvdmVyZmxvd3MgRnJh
Y3Rpb25hbExheW91dFVuaXRzIHdpdGggc3ViLXBpeGVsIGxheW91dCBlbmFibGVkCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04Nzg5NgorCisgICAgICAg
IFJldmlld2VkIGJ5IEphbWVzIFJvYmluc29uLgorCisgICAgICAgIGtMYXJnZU51bWJlciBpcyBt
ZWFudCB0byBhdm9pZCBvdmVyZmxvd2luZyB3aGVuIHByb2plY3RpbmcgYSBwb2ludCB0aHJvdWdo
IGEgdHJhbnNmb3JtLiBVbmZvcnR1bmF0ZWx5LAorICAgICAgICBkdWUgdG8gRnJhY3Rpb25hbExh
eW91dFVuaXQncyBkaW1pbmlzaGVkIHJhbmdlIGNvbXBhcmVkIHRvIGludGVnZXJzLCB3ZSB3ZXJl
IG92ZXJmbG93aW5nIGFueXdheXMuIFRoaXMKKyAgICAgICAgY2hhbmdlIGFkanVzdHMgb3VyIGxh
cmdlIG51bWJlciBieSB0aGUgc2FtZSB2YWx1ZSwgYnV0IGFkanVzdGVkIGZvciBvdXIgZGVub21p
bmF0b3IuCisKKyAgICAgICAgVGhpcyB3YXMgb3JpZ2luYWxseSBtaXNzZWQgYmVjYXVzZSB0cmFu
c2Zvcm1zLzNkIGlzIG1hcmtlZCBhcyBwYXNzL2ZhaWwgaW4gQ2hyb21pdW0ncyB0ZXN0X2V4cGVj
dGF0aW9ucy50eHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY2OTg5IHRyYWNrcyByZW1vdmluZyB0aGlzIHByb2JsZW0uCisKKyAgICAgICAgTm8gbmV3
IHRlc3RzLiBDb3ZlcmVkIGJ5IHRyYW5zZm9ybXMvM2QvaGl0LXRlc3RpbmcvcGVyc3BlY3RpdmUt
Y2xpcHBlZC5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL1Ry
YW5zZm9ybWF0aW9uTWF0cml4LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRyYW5zZm9ybWF0aW9u
TWF0cml4Ojpwcm9qZWN0UG9pbnQpOgorCiAyMDEyLTA2LTAxICBKYW1lcyBSb2JpbnNvbiAgPGph
bWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBVbnJldmlld2VkIGNvbXBp
bGUgZml4IGZvciByMTE5MjgzCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy90cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0cml4LmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0
cml4LmNwcAkocmV2aXNpb24gMTE5MjQ4KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdHJhbnNmb3Jtcy9UcmFuc2Zvcm1hdGlvbk1hdHJpeC5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTU3Niw5ICs1NzYsOSBAQCBGbG9hdFBvaW50IFRyYW5zZm9ybWF0aW9uTWF0cml4Ojpwcm9q
ZWN0CiAgICAgICAgIC8vIFVzaW5nIGludCBtYXggY2F1c2VzIG92ZXJmbG93IHdoZW4gb3RoZXIg
Y29kZSB1c2VzIHRoZSBwcm9qZWN0ZWQgcG9pbnQuIFRvCiAgICAgICAgIC8vIHJlcHJlc2VudCBp
bmZpbml0eSB5ZXQgcmVkdWNlIHRoZSByaXNrIG9mIG92ZXJmbG93LCB3ZSB1c2UgYSBsYXJnZSBi
dXQKICAgICAgICAgLy8gbm90LXRvby1sYXJnZSBudW1iZXIgaGVyZSB3aGVuIGNsYW1waW5nLgot
ICAgICAgICBjb25zdCBpbnQga0xhcmdlTnVtYmVyID0gMTAwMDAwMDAwOwotICAgICAgICBvdXRY
ID0gY29weXNpZ24oa0xhcmdlTnVtYmVyLCBvdXRYKTsKLSAgICAgICAgb3V0WSA9IGNvcHlzaWdu
KGtMYXJnZU51bWJlciwgb3V0WSk7CisgICAgICAgIGNvbnN0IGludCBsYXJnZU51bWJlciA9IDEw
MDAwMDAwMCAvIGtGaXhlZFBvaW50RGVub21pbmF0b3I7CisgICAgICAgIG91dFggPSBjb3B5c2ln
bihsYXJnZU51bWJlciwgb3V0WCk7CisgICAgICAgIG91dFkgPSBjb3B5c2lnbihsYXJnZU51bWJl
ciwgb3V0WSk7CiAgICAgICAgIGlmIChjbGFtcGVkKQogICAgICAgICAgICAgKmNsYW1wZWQgPSB0
cnVlOwogICAgIH0gZWxzZSBpZiAodyAhPSAxKSB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>