<?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>85751</bug_id>
          
          <creation_ts>2012-05-06 15:13:23 -0700</creation_ts>
          <short_desc>Shrink TextRun object size</short_desc>
          <delta_ts>2012-05-07 04:12:09 -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 Misc.</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="Rob Buis">rwlbuis</reporter>
          <assigned_to name="Rob Buis">rwlbuis</assigned_to>
          <cc>eric</cc>
    
    <cc>rakuco</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>617190</commentid>
    <comment_count>0</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-05-06 15:13:23 -0700</bug_when>
    <thetext>TextRun does not do a very good job of bit packing. Since most of the time this is an auto var, no big deal, but for SVG it is a member var of SVGTextMetricsBuilder, and thus RenderSVGText. It also is a member var in</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617191</commentid>
    <comment_count>1</comment_count>
      <attachid>140440</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-05-06 15:18:24 -0700</bug_when>
    <thetext>Created attachment 140440
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617203</commentid>
    <comment_count>2</comment_count>
      <attachid>140440</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-05-06 15:49:01 -0700</bug_when>
    <thetext>Comment on attachment 140440
Patch

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

&gt; Source/WebCore/platform/graphics/TextRun.h:170
&gt; +    ExpansionBehavior m_expansionBehavior : 2;

bitfield enums will fail on MSVC (since they&apos;re signed).

&gt; Source/WebCore/platform/graphics/TextRun.h:172
&gt; +    TextDirection m_direction : 1;

Similar problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617204</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-05-06 15:49:21 -0700</bug_when>
    <thetext>Also, if we&apos;re going to shrink the size of this, we should keep it small with a COMPILE_ASSERT.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617207</commentid>
    <comment_count>4</comment_count>
      <attachid>140442</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-05-06 16:08:25 -0700</bug_when>
    <thetext>Created attachment 140442
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617208</commentid>
    <comment_count>5</comment_count>
      <attachid>140442</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-05-06 16:12:36 -0700</bug_when>
    <thetext>Comment on attachment 140442
Patch

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

&gt; Source/WebCore/platform/graphics/TextRun.h:170
&gt; +    ExpansionBehavior m_expansionBehavior : 2;

Same problem as before.  MSVC will make the enum signed, and thus you&apos;ll have one fewer bit than you think you do. :)  I thought we had helper macros for this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617209</commentid>
    <comment_count>6</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-05-06 16:14:53 -0700</bug_when>
    <thetext>Hi Eric,

(In reply to comment #5)
&gt; (From update of attachment 140442 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=140442&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/TextRun.h:170
&gt; &gt; +    ExpansionBehavior m_expansionBehavior : 2;
&gt; 
&gt; Same problem as before.  MSVC will make the enum signed, and thus you&apos;ll have one fewer bit than you think you do. :)  I thought we had helper macros for this?

It is an unsigned in disguise!

typedef unsigned ExpansionBehavior;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617246</commentid>
    <comment_count>7</comment_count>
      <attachid>140442</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-05-06 18:09:52 -0700</bug_when>
    <thetext>Comment on attachment 140442
Patch

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

Can we add some compile time assertions to check if this is packed right, like we normally do in cases like this?

&gt;&gt;&gt; Source/WebCore/platform/graphics/TextRun.h:170
&gt;&gt;&gt; +    ExpansionBehavior m_expansionBehavior : 2;
&gt;&gt; 
&gt;&gt; Same problem as before.  MSVC will make the enum signed, and thus you&apos;ll have one fewer bit than you think you do. :)  I thought we had helper macros for this?
&gt; 
&gt; It is an unsigned in disguise!
&gt; 
&gt; typedef unsigned ExpansionBehavior;

Why not be explicit about it, given the likelihood of confusion?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617298</commentid>
    <comment_count>8</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-05-06 19:32:36 -0700</bug_when>
    <thetext>Hi Darin,

(In reply to comment #7)
&gt; (From update of attachment 140442 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=140442&amp;action=review
&gt; 
&gt; Can we add some compile time assertions to check if this is packed right, like we normally do in cases like this?

Good idea, did that before landing.

&gt; &gt;&gt;&gt; Source/WebCore/platform/graphics/TextRun.h:170
&gt; &gt;&gt;&gt; +    ExpansionBehavior m_expansionBehavior : 2;
&gt; &gt;&gt; 
&gt; &gt;&gt; Same problem as before.  MSVC will make the enum signed, and thus you&apos;ll have one fewer bit than you think you do. :)  I thought we had helper macros for this?
&gt; &gt; 
&gt; &gt; It is an unsigned in disguise!
&gt; &gt; 
&gt; &gt; typedef unsigned ExpansionBehavior;
&gt; 
&gt; Why not be explicit about it, given the likelihood of confusion?

I tried but unfortunately this would mean changing a lot of files that use this ExpansionBehavior. Let me know if you want a follow-up bug for that.
Cheers,

Rob.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617313</commentid>
    <comment_count>9</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-06 19:52:47 -0700</bug_when>
    <thetext>Build fix for r116260 landed in r116262.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617500</commentid>
    <comment_count>10</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-05-07 04:11:43 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; Build fix for r116260 landed in r116262.

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617501</commentid>
    <comment_count>11</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-05-07 04:12:09 -0700</bug_when>
    <thetext>Landed in r116260.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140440</attachid>
            <date>2012-05-06 15:18:24 -0700</date>
            <delta_ts>2012-05-06 16:07:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-85751-20120506181812.patch</filename>
            <type>text/plain</type>
            <size>3171</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2MjM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTExYzlkMGM4Mjg5YzZi
MmYxMjRlN2JiNjBlNzY2MGIyNjViMWY4NS4uNmFhODY1MWQ2NWU1OGY3ZTQ2MzdjYzcxMjYyMjA1
MjM2YTgzMDI0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE5IEBACiAyMDEyLTA1LTA2ICBSb2Ig
QnVpcyAgPHJidWlzQHJpbS5jb20+CiAKKyAgICAgICAgU2hyaW5rIFRleHRSdW4gb2JqZWN0IHNp
emUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1NzUx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVvcmRl
ciB0aGUgbWVtYmVyIHZhcmlhYmxlcyBpbiBUZXh0UnVuIHNvIGl0IHNocmlua3MgZnJvbSA1NiB0
byA0MCBieXRlcyBvbiBteSA2NC1iaXQgYnVpbGQuIFRoaXMgaXMgaW1wb3J0YW50CisgICAgICAg
IGZvciBTVkcsIHNpbmNlIFJlbmRlclNWR1RleHQgc2hyaW5rcyBiZWNhdXNlIG9mIHRoaXMuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9UZXh0UnVuLmg6CisgICAgICAgIChXZWJDb3Jl
OjpUZXh0UnVuOjpUZXh0UnVuKToKKyAgICAgICAgKFRleHRSdW4pOgorCisyMDEyLTA1LTA2ICBS
b2IgQnVpcyAgPHJidWlzQHJpbS5jb20+CisKICAgICAgICAgSW5saW5lQm94OjpzZXRIYXNCYWRQ
YXJlbnQgc2hvdWxkIGJlIGRlYnVnIG9ubHkKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTg1NzQ4CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL1RleHRSdW4uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL1RleHRSdW4uaAppbmRleCA3OGY3ZjljZDA5YjNjZmZkMDNkNjAyMzU2MWJhM2M1MzE0YTY0
ODYzLi40N2U1MzdjZDA5OTk2OWQ5ZjdjN2E4Y2E2NzQ0NjQ2NWNiNDhhZGZiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9UZXh0UnVuLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvVGV4dFJ1bi5oCkBAIC02MywxMSArNjMsMTEgQEAg
cHVibGljOgogICAgICAgICAsIG1fY2hhcmFjdGVyc0xlbmd0aChsZW4pCiAgICAgICAgICwgbV9s
ZW4obGVuKQogICAgICAgICAsIG1feHBvcyh4cG9zKQotICAgICAgICAsIG1fZXhwYW5zaW9uKGV4
cGFuc2lvbikKLSAgICAgICAgLCBtX2V4cGFuc2lvbkJlaGF2aW9yKGV4cGFuc2lvbkJlaGF2aW9y
KQogI2lmIEVOQUJMRShTVkcpCiAgICAgICAgICwgbV9ob3Jpem9udGFsR2x5cGhTdHJldGNoKDEp
CiAjZW5kaWYKKyAgICAgICAgLCBtX2V4cGFuc2lvbihleHBhbnNpb24pCisgICAgICAgICwgbV9l
eHBhbnNpb25CZWhhdmlvcihleHBhbnNpb25CZWhhdmlvcikKICAgICAgICAgLCBtX2FsbG93VGFi
cyhhbGxvd1RhYnMpCiAgICAgICAgICwgbV9kaXJlY3Rpb24oZGlyZWN0aW9uKQogICAgICAgICAs
IG1fZGlyZWN0aW9uYWxPdmVycmlkZShkaXJlY3Rpb25hbE92ZXJyaWRlKQpAQCAtODMsMTEgKzgz
LDExIEBAIHB1YmxpYzoKICAgICAgICAgLCBtX2NoYXJhY3RlcnNMZW5ndGgocy5sZW5ndGgoKSkK
ICAgICAgICAgLCBtX2xlbihzLmxlbmd0aCgpKQogICAgICAgICAsIG1feHBvcyh4cG9zKQotICAg
ICAgICAsIG1fZXhwYW5zaW9uKGV4cGFuc2lvbikKLSAgICAgICAgLCBtX2V4cGFuc2lvbkJlaGF2
aW9yKGV4cGFuc2lvbkJlaGF2aW9yKQogI2lmIEVOQUJMRShTVkcpCiAgICAgICAgICwgbV9ob3Jp
em9udGFsR2x5cGhTdHJldGNoKDEpCiAjZW5kaWYKKyAgICAgICAgLCBtX2V4cGFuc2lvbihleHBh
bnNpb24pCisgICAgICAgICwgbV9leHBhbnNpb25CZWhhdmlvcihleHBhbnNpb25CZWhhdmlvcikK
ICAgICAgICAgLCBtX2FsbG93VGFicyhhbGxvd1RhYnMpCiAgICAgICAgICwgbV9kaXJlY3Rpb24o
ZGlyZWN0aW9uKQogICAgICAgICAsIG1fZGlyZWN0aW9uYWxPdmVycmlkZShkaXJlY3Rpb25hbE92
ZXJyaWRlKQpAQCAtMTYzLDE4ICsxNjMsMTggQEAgcHJpdmF0ZToKICAgICAvLyBzdGFydCBvZiB0
aGUgY29udGFpbmluZyBibG9jay4gSW4gdGhlIGNhc2Ugb2YgcmlnaHQgYWxpZ25tZW50IG9yIGNl
bnRlciBhbGlnbm1lbnQsIGxlZnQgc3RhcnQgb2YKICAgICAvLyB0aGUgdGV4dCBsaW5lIGlzIG5v
dCB0aGUgc2FtZSBhcyBsZWZ0IHN0YXJ0IG9mIHRoZSBjb250YWluaW5nIGJsb2NrLgogICAgIGZs
b2F0IG1feHBvczsgIAotICAgIGZsb2F0IG1fZXhwYW5zaW9uOwotICAgIEV4cGFuc2lvbkJlaGF2
aW9yIG1fZXhwYW5zaW9uQmVoYXZpb3I7CiAjaWYgRU5BQkxFKFNWRykKICAgICBmbG9hdCBtX2hv
cml6b250YWxHbHlwaFN0cmV0Y2g7CiAjZW5kaWYKLSAgICBib29sIG1fYWxsb3dUYWJzOwotICAg
IFRleHREaXJlY3Rpb24gbV9kaXJlY3Rpb247Ci0gICAgYm9vbCBtX2RpcmVjdGlvbmFsT3ZlcnJp
ZGU7IC8vIFdhcyB0aGlzIGRpcmVjdGlvbiBzZXQgYnkgYW4gb3ZlcnJpZGUgY2hhcmFjdGVyLgot
ICAgIGJvb2wgbV9jaGFyYWN0ZXJTY2FuRm9yQ29kZVBhdGg7Ci0gICAgYm9vbCBtX2FwcGx5UnVu
Um91bmRpbmc7Ci0gICAgYm9vbCBtX2FwcGx5V29yZFJvdW5kaW5nOwotICAgIGJvb2wgbV9kaXNh
YmxlU3BhY2luZzsKKyAgICBmbG9hdCBtX2V4cGFuc2lvbjsKKyAgICBFeHBhbnNpb25CZWhhdmlv
ciBtX2V4cGFuc2lvbkJlaGF2aW9yIDogMjsKKyAgICBib29sIG1fYWxsb3dUYWJzIDogMTsKKyAg
ICBUZXh0RGlyZWN0aW9uIG1fZGlyZWN0aW9uIDogMTsKKyAgICBib29sIG1fZGlyZWN0aW9uYWxP
dmVycmlkZSA6IDE7IC8vIFdhcyB0aGlzIGRpcmVjdGlvbiBzZXQgYnkgYW4gb3ZlcnJpZGUgY2hh
cmFjdGVyLgorICAgIGJvb2wgbV9jaGFyYWN0ZXJTY2FuRm9yQ29kZVBhdGggOiAxOworICAgIGJv
b2wgbV9hcHBseVJ1blJvdW5kaW5nIDogMTsKKyAgICBib29sIG1fYXBwbHlXb3JkUm91bmRpbmcg
OiAxOworICAgIGJvb2wgbV9kaXNhYmxlU3BhY2luZyA6IDE7CiAgICAgUmVmUHRyPFJlbmRlcmlu
Z0NvbnRleHQ+IG1fcmVuZGVyaW5nQ29udGV4dDsKIH07CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140442</attachid>
            <date>2012-05-06 16:08:25 -0700</date>
            <delta_ts>2012-05-06 18:09:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-85751-20120506190814.patch</filename>
            <type>text/plain</type>
            <size>3795</size>
            <attacher name="Rob Buis">rwlbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2MjM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTExYzlkMGM4Mjg5YzZi
MmYxMjRlN2JiNjBlNzY2MGIyNjViMWY4NS4uNmFhODY1MWQ2NWU1OGY3ZTQ2MzdjYzcxMjYyMjA1
MjM2YTgzMDI0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE5IEBACiAyMDEyLTA1LTA2ICBSb2Ig
QnVpcyAgPHJidWlzQHJpbS5jb20+CiAKKyAgICAgICAgU2hyaW5rIFRleHRSdW4gb2JqZWN0IHNp
emUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1NzUx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVvcmRl
ciB0aGUgbWVtYmVyIHZhcmlhYmxlcyBpbiBUZXh0UnVuIHNvIGl0IHNocmlua3MgZnJvbSA1NiB0
byA0MCBieXRlcyBvbiBteSA2NC1iaXQgYnVpbGQuIFRoaXMgaXMgaW1wb3J0YW50CisgICAgICAg
IGZvciBTVkcsIHNpbmNlIFJlbmRlclNWR1RleHQgc2hyaW5rcyBiZWNhdXNlIG9mIHRoaXMuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9UZXh0UnVuLmg6CisgICAgICAgIChXZWJDb3Jl
OjpUZXh0UnVuOjpUZXh0UnVuKToKKyAgICAgICAgKFRleHRSdW4pOgorCisyMDEyLTA1LTA2ICBS
b2IgQnVpcyAgPHJidWlzQHJpbS5jb20+CisKICAgICAgICAgSW5saW5lQm94OjpzZXRIYXNCYWRQ
YXJlbnQgc2hvdWxkIGJlIGRlYnVnIG9ubHkKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTg1NzQ4CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL1RleHRSdW4uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL1RleHRSdW4uaAppbmRleCA3OGY3ZjljZDA5YjNjZmZkMDNkNjAyMzU2MWJhM2M1MzE0YTY0
ODYzLi5jMmQ4NmQ2ZTVjNjVmY2M5MmZlY2I4NmIxZGZiMjI0M2I1Y2M4NTA0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9UZXh0UnVuLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvVGV4dFJ1bi5oCkBAIC02MywxMSArNjMsMTEgQEAg
cHVibGljOgogICAgICAgICAsIG1fY2hhcmFjdGVyc0xlbmd0aChsZW4pCiAgICAgICAgICwgbV9s
ZW4obGVuKQogICAgICAgICAsIG1feHBvcyh4cG9zKQotICAgICAgICAsIG1fZXhwYW5zaW9uKGV4
cGFuc2lvbikKLSAgICAgICAgLCBtX2V4cGFuc2lvbkJlaGF2aW9yKGV4cGFuc2lvbkJlaGF2aW9y
KQogI2lmIEVOQUJMRShTVkcpCiAgICAgICAgICwgbV9ob3Jpem9udGFsR2x5cGhTdHJldGNoKDEp
CiAjZW5kaWYKKyAgICAgICAgLCBtX2V4cGFuc2lvbihleHBhbnNpb24pCisgICAgICAgICwgbV9l
eHBhbnNpb25CZWhhdmlvcihleHBhbnNpb25CZWhhdmlvcikKICAgICAgICAgLCBtX2FsbG93VGFi
cyhhbGxvd1RhYnMpCiAgICAgICAgICwgbV9kaXJlY3Rpb24oZGlyZWN0aW9uKQogICAgICAgICAs
IG1fZGlyZWN0aW9uYWxPdmVycmlkZShkaXJlY3Rpb25hbE92ZXJyaWRlKQpAQCAtODMsMTEgKzgz
LDExIEBAIHB1YmxpYzoKICAgICAgICAgLCBtX2NoYXJhY3RlcnNMZW5ndGgocy5sZW5ndGgoKSkK
ICAgICAgICAgLCBtX2xlbihzLmxlbmd0aCgpKQogICAgICAgICAsIG1feHBvcyh4cG9zKQotICAg
ICAgICAsIG1fZXhwYW5zaW9uKGV4cGFuc2lvbikKLSAgICAgICAgLCBtX2V4cGFuc2lvbkJlaGF2
aW9yKGV4cGFuc2lvbkJlaGF2aW9yKQogI2lmIEVOQUJMRShTVkcpCiAgICAgICAgICwgbV9ob3Jp
em9udGFsR2x5cGhTdHJldGNoKDEpCiAjZW5kaWYKKyAgICAgICAgLCBtX2V4cGFuc2lvbihleHBh
bnNpb24pCisgICAgICAgICwgbV9leHBhbnNpb25CZWhhdmlvcihleHBhbnNpb25CZWhhdmlvcikK
ICAgICAgICAgLCBtX2FsbG93VGFicyhhbGxvd1RhYnMpCiAgICAgICAgICwgbV9kaXJlY3Rpb24o
ZGlyZWN0aW9uKQogICAgICAgICAsIG1fZGlyZWN0aW9uYWxPdmVycmlkZShkaXJlY3Rpb25hbE92
ZXJyaWRlKQpAQCAtMTIwLDcgKzEyMCw3IEBAIHB1YmxpYzoKICAgICBmbG9hdCBleHBhbnNpb24o
KSBjb25zdCB7IHJldHVybiBtX2V4cGFuc2lvbjsgfQogICAgIGJvb2wgYWxsb3dzTGVhZGluZ0V4
cGFuc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1fZXhwYW5zaW9uQmVoYXZpb3IgJiBBbGxvd0xlYWRp
bmdFeHBhbnNpb247IH0KICAgICBib29sIGFsbG93c1RyYWlsaW5nRXhwYW5zaW9uKCkgY29uc3Qg
eyByZXR1cm4gbV9leHBhbnNpb25CZWhhdmlvciAmIEFsbG93VHJhaWxpbmdFeHBhbnNpb247IH0K
LSAgICBUZXh0RGlyZWN0aW9uIGRpcmVjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fZGlyZWN0aW9u
OyB9CisgICAgVGV4dERpcmVjdGlvbiBkaXJlY3Rpb24oKSBjb25zdCB7IHJldHVybiBzdGF0aWNf
Y2FzdDxUZXh0RGlyZWN0aW9uPihtX2RpcmVjdGlvbik7IH0KICAgICBib29sIHJ0bCgpIGNvbnN0
IHsgcmV0dXJuIG1fZGlyZWN0aW9uID09IFJUTDsgfQogICAgIGJvb2wgbHRyKCkgY29uc3QgeyBy
ZXR1cm4gbV9kaXJlY3Rpb24gPT0gTFRSOyB9CiAgICAgYm9vbCBkaXJlY3Rpb25hbE92ZXJyaWRl
KCkgY29uc3QgeyByZXR1cm4gbV9kaXJlY3Rpb25hbE92ZXJyaWRlOyB9CkBAIC0xNjMsMTggKzE2
MywxOCBAQCBwcml2YXRlOgogICAgIC8vIHN0YXJ0IG9mIHRoZSBjb250YWluaW5nIGJsb2NrLiBJ
biB0aGUgY2FzZSBvZiByaWdodCBhbGlnbm1lbnQgb3IgY2VudGVyIGFsaWdubWVudCwgbGVmdCBz
dGFydCBvZgogICAgIC8vIHRoZSB0ZXh0IGxpbmUgaXMgbm90IHRoZSBzYW1lIGFzIGxlZnQgc3Rh
cnQgb2YgdGhlIGNvbnRhaW5pbmcgYmxvY2suCiAgICAgZmxvYXQgbV94cG9zOyAgCi0gICAgZmxv
YXQgbV9leHBhbnNpb247Ci0gICAgRXhwYW5zaW9uQmVoYXZpb3IgbV9leHBhbnNpb25CZWhhdmlv
cjsKICNpZiBFTkFCTEUoU1ZHKQogICAgIGZsb2F0IG1faG9yaXpvbnRhbEdseXBoU3RyZXRjaDsK
ICNlbmRpZgotICAgIGJvb2wgbV9hbGxvd1RhYnM7Ci0gICAgVGV4dERpcmVjdGlvbiBtX2RpcmVj
dGlvbjsKLSAgICBib29sIG1fZGlyZWN0aW9uYWxPdmVycmlkZTsgLy8gV2FzIHRoaXMgZGlyZWN0
aW9uIHNldCBieSBhbiBvdmVycmlkZSBjaGFyYWN0ZXIuCi0gICAgYm9vbCBtX2NoYXJhY3RlclNj
YW5Gb3JDb2RlUGF0aDsKLSAgICBib29sIG1fYXBwbHlSdW5Sb3VuZGluZzsKLSAgICBib29sIG1f
YXBwbHlXb3JkUm91bmRpbmc7Ci0gICAgYm9vbCBtX2Rpc2FibGVTcGFjaW5nOworICAgIGZsb2F0
IG1fZXhwYW5zaW9uOworICAgIEV4cGFuc2lvbkJlaGF2aW9yIG1fZXhwYW5zaW9uQmVoYXZpb3Ig
OiAyOworICAgIHVuc2lnbmVkIG1fYWxsb3dUYWJzIDogMTsKKyAgICB1bnNpZ25lZCBtX2RpcmVj
dGlvbiA6IDE7CisgICAgdW5zaWduZWQgbV9kaXJlY3Rpb25hbE92ZXJyaWRlIDogMTsgLy8gV2Fz
IHRoaXMgZGlyZWN0aW9uIHNldCBieSBhbiBvdmVycmlkZSBjaGFyYWN0ZXIuCisgICAgdW5zaWdu
ZWQgbV9jaGFyYWN0ZXJTY2FuRm9yQ29kZVBhdGggOiAxOworICAgIHVuc2lnbmVkIG1fYXBwbHlS
dW5Sb3VuZGluZyA6IDE7CisgICAgdW5zaWduZWQgbV9hcHBseVdvcmRSb3VuZGluZyA6IDE7Cisg
ICAgdW5zaWduZWQgbV9kaXNhYmxlU3BhY2luZyA6IDE7CiAgICAgUmVmUHRyPFJlbmRlcmluZ0Nv
bnRleHQ+IG1fcmVuZGVyaW5nQ29udGV4dDsKIH07CiAK
</data>
<flag name="review"
          id="146292"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>