<?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>105758</bug_id>
          
          <creation_ts>2012-12-26 00:45:24 -0800</creation_ts>
          <short_desc>[TexMap] A Minor optimization of GraphicsLayerTransform.</short_desc>
          <delta_ts>2012-12-26 16:40:02 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</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="Dongseong Hwang">dongseong.hwang</reporter>
          <assigned_to name="Dongseong Hwang">dongseong.hwang</assigned_to>
          <cc>noam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>797252</commentid>
    <comment_count>0</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-12-26 00:45:24 -0800</bug_when>
    <thetext>Don&apos;t combine transforms if GraphicsLayerTransform isn&apos;t changed actually.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797253</commentid>
    <comment_count>1</comment_count>
      <attachid>180733</attachid>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-12-26 00:48:03 -0800</bug_when>
    <thetext>Created attachment 180733
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797389</commentid>
    <comment_count>2</comment_count>
      <attachid>180733</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-12-26 15:09:42 -0800</bug_when>
    <thetext>Comment on attachment 180733
Patch

This is redundant; We already perform those checks in GraphicsLayerTextureMapper.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797393</commentid>
    <comment_count>3</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-12-26 15:22:36 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 180733 [details])
&gt; This is redundant; We already perform those checks in GraphicsLayerTextureMapper.

But TextureMapperLayer::flushCompositingStateForThisLayerOnly can change GraphicsLayerTransform every flush.

Furthermore, animations can call setAnimatedTransform(const TransformationMatrix&amp; matrix) with the same matrix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797399</commentid>
    <comment_count>4</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-12-26 15:44:14 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 180733 [details] [details])
&gt; &gt; This is redundant; We already perform those checks in GraphicsLayerTextureMapper.
&gt; 
&gt; But TextureMapperLayer::flushCompositingStateForThisLayerOnly can change GraphicsLayerTransform every flush.
&gt; 
&gt; Furthermore, animations can call setAnimatedTransform(const TransformationMatrix&amp; matrix) with the same matrix.

OK, you should describe in the changelog what use cases this actually optimizes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797404</commentid>
    <comment_count>5</comment_count>
      <attachid>180764</attachid>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-12-26 15:52:49 -0800</bug_when>
    <thetext>Created attachment 180764
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797405</commentid>
    <comment_count>6</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-12-26 15:53:17 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; OK, you should describe in the changelog what use cases this actually optimizes.

Absolutely! I did.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797406</commentid>
    <comment_count>7</comment_count>
      <attachid>180764</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-12-26 15:55:41 -0800</bug_when>
    <thetext>Comment on attachment 180764
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        Don&apos;t combine transforms if GraphicsLayerTransform isn&apos;t changed actually.
&gt; +
&gt; +        Now this patch optimizes flushCompositingStateForThisLayerOnly() and
&gt; +        setAnimatedTransform() in TextureMapperLayer.

Only multiply the transformation matrices if the paramaters are actually changed.

This optimizes the code path called from flushCompositingStateForThisLayerOnly(), and potentially setAnimatedTransform().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797409</commentid>
    <comment_count>8</comment_count>
      <attachid>180765</attachid>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-12-26 16:22:33 -0800</bug_when>
    <thetext>Created attachment 180765
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797410</commentid>
    <comment_count>9</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-12-26 16:25:05 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; Only multiply the transformation matrices if the paramaters are actually changed.
&gt; 
&gt; This optimizes the code path called from flushCompositingStateForThisLayerOnly(), and potentially setAnimatedTransform().

I don&apos;t think it is not natural for you to do favor to me. Thank you very much!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797414</commentid>
    <comment_count>10</comment_count>
      <attachid>180765</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-26 16:39:58 -0800</bug_when>
    <thetext>Comment on attachment 180765
Patch

Clearing flags on attachment: 180765

Committed r138487: &lt;http://trac.webkit.org/changeset/138487&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797415</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-26 16:40:02 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180733</attachid>
            <date>2012-12-26 00:48:03 -0800</date>
            <delta_ts>2012-12-26 15:52:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105758-20121226174514.patch</filename>
            <type>text/plain</type>
            <size>2689</size>
            <attacher name="Dongseong Hwang">dongseong.hwang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NDY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmY1YTZhODgzYTljMjQw
Y2MxMDBlNjI4ZDIxOTA3Y2U1ZGVmODcxOS4uNWJhZjYwZTE3M2E2NzM0NTE5MDVlN2RkNWEwMzcy
MDFiZDcxZTc2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTEyLTI2ICBIdWFu
ZyBEb25nc3VuZyAgPGx1eHRlbGxhQGNvbXBhbnkxMDAubmV0PgorCisgICAgICAgIFtUZXhNYXBd
IEEgTWlub3Igb3B0aW1pemF0aW9uIG9mIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm0uCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU3NTgKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEb24ndCBjb21iaW5lIHRy
YW5zZm9ybXMgaWYgR3JhcGhpY3NMYXllclRyYW5zZm9ybSBpc24ndCBjaGFuZ2VkIGFjdHVhbGx5
LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gUmVmYWN0b3Jpbmcgb25seS4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzTGF5ZXJUcmFuc2Zvcm0uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6R3JhcGhpY3NMYXllclRyYW5zZm9ybTo6c2V0UG9zaXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6R3JhcGhpY3NMYXllclRyYW5zZm9ybTo6c2V0U2l6ZSk6CisgICAgICAgIChXZWJD
b3JlOjpHcmFwaGljc0xheWVyVHJhbnNmb3JtOjpzZXRBbmNob3JQb2ludCk6CisgICAgICAgIChX
ZWJDb3JlOjpHcmFwaGljc0xheWVyVHJhbnNmb3JtOjpzZXRGbGF0dGVuaW5nKToKKyAgICAgICAg
KFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06OnNldExvY2FsVHJhbnNmb3JtKToKKyAg
ICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06OnNldENoaWxkcmVuVHJhbnNm
b3JtKToKKwogMjAxMi0xMi0yNSAgSHVhbmcgRG9uZ3N1bmcgIDxsdXh0ZWxsYUBjb21wYW55MTAw
Lm5ldD4KIAogICAgICAgICBbVGV4TWFwXSBSZW1vdmUgdW51c2VkIG1lbWJlcnMgYW5kIG1ldGhv
ZHMgaW4gVGV4dHVyZU1hcHBlckxheWVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllclRyYW5zZm9ybS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0xheWVyVHJhbnNmb3JtLmNwcAppbmRleCA3N2Nh
Yzg3ZDY3NTIzNGM4YzkwNjZlMDg3MDM4OGQzY2IxMjQ2Mjc2Li45MDk2MTRmYmJkNjE4N2RkYmI5
NzMzNzkxYzg3ZDliYzk5MTAyNDA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9HcmFwaGljc0xheWVyVHJhbnNmb3JtLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0xheWVyVHJhbnNmb3JtLmNwcApAQCAtMzEsMzYg
KzMxLDQ4IEBAIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06OkdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm0o
KQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06OnNldFBvc2l0aW9uKGNvbnN0IEZsb2F0
UG9pbnQmIHBvc2l0aW9uKQogeworICAgIGlmIChtX3Bvc2l0aW9uID09IHBvc2l0aW9uKQorICAg
ICAgICByZXR1cm47CiAgICAgbV9wb3NpdGlvbiA9IHBvc2l0aW9uOwogICAgIG1fZGlydHkgPSB0
cnVlOwogfQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06OnNldFNpemUoY29uc3QgRmxv
YXRTaXplJiBzaXplKQogeworICAgIGlmIChtX3NpemUgPT0gc2l6ZSkKKyAgICAgICAgcmV0dXJu
OwogICAgIG1fc2l6ZSA9IHNpemU7CiAgICAgbV9kaXJ0eSA9IHRydWU7CiB9CiAKIHZvaWQgR3Jh
cGhpY3NMYXllclRyYW5zZm9ybTo6c2V0QW5jaG9yUG9pbnQoY29uc3QgRmxvYXRQb2ludDNEJiBh
bmNob3JQb2ludCkKIHsKKyAgICBpZiAobV9hbmNob3JQb2ludCA9PSBhbmNob3JQb2ludCkKKyAg
ICAgICAgcmV0dXJuOwogICAgIG1fYW5jaG9yUG9pbnQgPSBhbmNob3JQb2ludDsKICAgICBtX2Rp
cnR5ID0gdHJ1ZTsKIH0KIAogdm9pZCBHcmFwaGljc0xheWVyVHJhbnNmb3JtOjpzZXRGbGF0dGVu
aW5nKGJvb2wgZmxhdHRlbmluZykKIHsKKyAgICBpZiAobV9mbGF0dGVuaW5nID09IGZsYXR0ZW5p
bmcpCisgICAgICAgIHJldHVybjsKICAgICBtX2ZsYXR0ZW5pbmcgPSBmbGF0dGVuaW5nOwogICAg
IG1fZGlydHkgPSB0cnVlOwogfQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06OnNldExv
Y2FsVHJhbnNmb3JtKGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiB0cmFuc2Zvcm0pCiB7Cisg
ICAgaWYgKG1fbG9jYWwgPT0gdHJhbnNmb3JtKQorICAgICAgICByZXR1cm47CiAgICAgbV9sb2Nh
bCA9IHRyYW5zZm9ybTsKICAgICBtX2RpcnR5ID0gdHJ1ZTsKIH0KIAogdm9pZCBHcmFwaGljc0xh
eWVyVHJhbnNmb3JtOjpzZXRDaGlsZHJlblRyYW5zZm9ybShjb25zdCBUcmFuc2Zvcm1hdGlvbk1h
dHJpeCYgdHJhbnNmb3JtKQogeworICAgIGlmIChtX2NoaWxkcmVuID09IHRyYW5zZm9ybSkKKyAg
ICAgICAgcmV0dXJuOwogICAgIG1fY2hpbGRyZW4gPSB0cmFuc2Zvcm07CiAgICAgbV9kaXJ0eSA9
IHRydWU7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180764</attachid>
            <date>2012-12-26 15:52:49 -0800</date>
            <delta_ts>2012-12-26 16:22:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105758-20121227084957.patch</filename>
            <type>text/plain</type>
            <size>2824</size>
            <attacher name="Dongseong Hwang">dongseong.hwang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NDY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmY1YTZhODgzYTljMjQw
Y2MxMDBlNjI4ZDIxOTA3Y2U1ZGVmODcxOS4uNDMyNDQyYzkzNTVhOTMzMTI0ZTczZDRkZjQ1ZDc1
ZTg3OTNkMTZhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEyLTEyLTI2ICBIdWFu
ZyBEb25nc3VuZyAgPGx1eHRlbGxhQGNvbXBhbnkxMDAubmV0PgorCisgICAgICAgIFtUZXhNYXBd
IEEgTWlub3Igb3B0aW1pemF0aW9uIG9mIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm0uCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU3NTgKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEb24ndCBjb21iaW5lIHRy
YW5zZm9ybXMgaWYgR3JhcGhpY3NMYXllclRyYW5zZm9ybSBpc24ndCBjaGFuZ2VkIGFjdHVhbGx5
LgorCisgICAgICAgIE5vdyB0aGlzIHBhdGNoIG9wdGltaXplcyBmbHVzaENvbXBvc2l0aW5nU3Rh
dGVGb3JUaGlzTGF5ZXJPbmx5KCkgYW5kCisgICAgICAgIHNldEFuaW1hdGVkVHJhbnNmb3JtKCkg
aW4gVGV4dHVyZU1hcHBlckxheWVyLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gUmVmYWN0b3Jp
bmcgb25seS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzTGF5ZXJUcmFu
c2Zvcm0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllclRyYW5zZm9ybTo6c2V0
UG9zaXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllclRyYW5zZm9ybTo6c2V0
U2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyVHJhbnNmb3JtOjpzZXRBbmNo
b3JQb2ludCk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyVHJhbnNmb3JtOjpzZXRG
bGF0dGVuaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06OnNl
dExvY2FsVHJhbnNmb3JtKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJUcmFuc2Zv
cm06OnNldENoaWxkcmVuVHJhbnNmb3JtKToKKwogMjAxMi0xMi0yNSAgSHVhbmcgRG9uZ3N1bmcg
IDxsdXh0ZWxsYUBjb21wYW55MTAwLm5ldD4KIAogICAgICAgICBbVGV4TWFwXSBSZW1vdmUgdW51
c2VkIG1lbWJlcnMgYW5kIG1ldGhvZHMgaW4gVGV4dHVyZU1hcHBlckxheWVyLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NMYXllclRyYW5zZm9y
bS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0xheWVyVHJh
bnNmb3JtLmNwcAppbmRleCA3N2NhYzg3ZDY3NTIzNGM4YzkwNjZlMDg3MDM4OGQzY2IxMjQ2Mjc2
Li45MDk2MTRmYmJkNjE4N2RkYmI5NzMzNzkxYzg3ZDliYzk5MTAyNDA5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0xheWVyVHJhbnNmb3JtLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0xheWVyVHJh
bnNmb3JtLmNwcApAQCAtMzEsMzYgKzMxLDQ4IEBAIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06Okdy
YXBoaWNzTGF5ZXJUcmFuc2Zvcm0oKQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06OnNl
dFBvc2l0aW9uKGNvbnN0IEZsb2F0UG9pbnQmIHBvc2l0aW9uKQogeworICAgIGlmIChtX3Bvc2l0
aW9uID09IHBvc2l0aW9uKQorICAgICAgICByZXR1cm47CiAgICAgbV9wb3NpdGlvbiA9IHBvc2l0
aW9uOwogICAgIG1fZGlydHkgPSB0cnVlOwogfQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJUcmFuc2Zv
cm06OnNldFNpemUoY29uc3QgRmxvYXRTaXplJiBzaXplKQogeworICAgIGlmIChtX3NpemUgPT0g
c2l6ZSkKKyAgICAgICAgcmV0dXJuOwogICAgIG1fc2l6ZSA9IHNpemU7CiAgICAgbV9kaXJ0eSA9
IHRydWU7CiB9CiAKIHZvaWQgR3JhcGhpY3NMYXllclRyYW5zZm9ybTo6c2V0QW5jaG9yUG9pbnQo
Y29uc3QgRmxvYXRQb2ludDNEJiBhbmNob3JQb2ludCkKIHsKKyAgICBpZiAobV9hbmNob3JQb2lu
dCA9PSBhbmNob3JQb2ludCkKKyAgICAgICAgcmV0dXJuOwogICAgIG1fYW5jaG9yUG9pbnQgPSBh
bmNob3JQb2ludDsKICAgICBtX2RpcnR5ID0gdHJ1ZTsKIH0KIAogdm9pZCBHcmFwaGljc0xheWVy
VHJhbnNmb3JtOjpzZXRGbGF0dGVuaW5nKGJvb2wgZmxhdHRlbmluZykKIHsKKyAgICBpZiAobV9m
bGF0dGVuaW5nID09IGZsYXR0ZW5pbmcpCisgICAgICAgIHJldHVybjsKICAgICBtX2ZsYXR0ZW5p
bmcgPSBmbGF0dGVuaW5nOwogICAgIG1fZGlydHkgPSB0cnVlOwogfQogCiB2b2lkIEdyYXBoaWNz
TGF5ZXJUcmFuc2Zvcm06OnNldExvY2FsVHJhbnNmb3JtKGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0
cml4JiB0cmFuc2Zvcm0pCiB7CisgICAgaWYgKG1fbG9jYWwgPT0gdHJhbnNmb3JtKQorICAgICAg
ICByZXR1cm47CiAgICAgbV9sb2NhbCA9IHRyYW5zZm9ybTsKICAgICBtX2RpcnR5ID0gdHJ1ZTsK
IH0KIAogdm9pZCBHcmFwaGljc0xheWVyVHJhbnNmb3JtOjpzZXRDaGlsZHJlblRyYW5zZm9ybShj
b25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgdHJhbnNmb3JtKQogeworICAgIGlmIChtX2NoaWxk
cmVuID09IHRyYW5zZm9ybSkKKyAgICAgICAgcmV0dXJuOwogICAgIG1fY2hpbGRyZW4gPSB0cmFu
c2Zvcm07CiAgICAgbV9kaXJ0eSA9IHRydWU7CiB9Cg==
</data>
<flag name="review"
          id="198151"
          type_id="1"
          status="+"
          setter="dongseong.hwang"
    />
    <flag name="commit-queue"
          id="198152"
          type_id="3"
          status="-"
          setter="dongseong.hwang"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180765</attachid>
            <date>2012-12-26 16:22:33 -0800</date>
            <delta_ts>2012-12-26 16:39:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105758-20121227091942.patch</filename>
            <type>text/plain</type>
            <size>2847</size>
            <attacher name="Dongseong Hwang">dongseong.hwang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NDY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmY1YTZhODgzYTljMjQw
Y2MxMDBlNjI4ZDIxOTA3Y2U1ZGVmODcxOS4uNDk2YTlkODZjOGY3ZTc1MzRlMjBiYjgzZTFkNWRm
ZjJjNTJlYTg0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTEyLTI2ICBIdWFu
ZyBEb25nc3VuZyAgPGx1eHRlbGxhQGNvbXBhbnkxMDAubmV0PgorCisgICAgICAgIFtUZXhNYXBd
IEEgTWlub3Igb3B0aW1pemF0aW9uIG9mIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm0uCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU3NTgKKworICAgICAg
ICBSZXZpZXdlZCBieSBOb2FtIFJvc2VudGhhbC4KKworICAgICAgICBPbmx5IG11bHRpcGx5IHRo
ZSB0cmFuc2Zvcm1hdGlvbiBtYXRyaWNlcyBpZiB0aGUgcGFyYW1hdGVycyBhcmUgYWN0dWFsbHkK
KyAgICAgICAgY2hhbmdlZC4KKworICAgICAgICBUaGlzIG9wdGltaXplcyB0aGUgY29kZSBwYXRo
IGNhbGxlZCBmcm9tIGZsdXNoQ29tcG9zaXRpbmdTdGF0ZUZvclRoaXNMYXllck9ubHkoKSwKKyAg
ICAgICAgYW5kIHBvdGVudGlhbGx5IHNldEFuaW1hdGVkVHJhbnNmb3JtKCkuCisKKyAgICAgICAg
Tm8gbmV3IHRlc3RzLiBSZWZhY3RvcmluZyBvbmx5LgorCisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvR3JhcGhpY3NMYXllclRyYW5zZm9ybS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFw
aGljc0xheWVyVHJhbnNmb3JtOjpzZXRQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpHcmFw
aGljc0xheWVyVHJhbnNmb3JtOjpzZXRTaXplKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNz
TGF5ZXJUcmFuc2Zvcm06OnNldEFuY2hvclBvaW50KToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBo
aWNzTGF5ZXJUcmFuc2Zvcm06OnNldEZsYXR0ZW5pbmcpOgorICAgICAgICAoV2ViQ29yZTo6R3Jh
cGhpY3NMYXllclRyYW5zZm9ybTo6c2V0TG9jYWxUcmFuc2Zvcm0pOgorICAgICAgICAoV2ViQ29y
ZTo6R3JhcGhpY3NMYXllclRyYW5zZm9ybTo6c2V0Q2hpbGRyZW5UcmFuc2Zvcm0pOgorCiAyMDEy
LTEyLTI1ICBIdWFuZyBEb25nc3VuZyAgPGx1eHRlbGxhQGNvbXBhbnkxMDAubmV0PgogCiAgICAg
ICAgIFtUZXhNYXBdIFJlbW92ZSB1bnVzZWQgbWVtYmVycyBhbmQgbWV0aG9kcyBpbiBUZXh0dXJl
TWFwcGVyTGF5ZXIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9HcmFwaGljc0xheWVyVHJhbnNmb3JtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0dyYXBoaWNzTGF5ZXJUcmFuc2Zvcm0uY3BwCmluZGV4IDc3Y2FjODdkNjc1MjM0Yzhj
OTA2NmUwODcwMzg4ZDNjYjEyNDYyNzYuLjkwOTYxNGZiYmQ2MTg3ZGRiYjk3MzM3OTFjODdkOWJj
OTkxMDI0MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dy
YXBoaWNzTGF5ZXJUcmFuc2Zvcm0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0dyYXBoaWNzTGF5ZXJUcmFuc2Zvcm0uY3BwCkBAIC0zMSwzNiArMzEsNDggQEAgR3Jh
cGhpY3NMYXllclRyYW5zZm9ybTo6R3JhcGhpY3NMYXllclRyYW5zZm9ybSgpCiAKIHZvaWQgR3Jh
cGhpY3NMYXllclRyYW5zZm9ybTo6c2V0UG9zaXRpb24oY29uc3QgRmxvYXRQb2ludCYgcG9zaXRp
b24pCiB7CisgICAgaWYgKG1fcG9zaXRpb24gPT0gcG9zaXRpb24pCisgICAgICAgIHJldHVybjsK
ICAgICBtX3Bvc2l0aW9uID0gcG9zaXRpb247CiAgICAgbV9kaXJ0eSA9IHRydWU7CiB9CiAKIHZv
aWQgR3JhcGhpY3NMYXllclRyYW5zZm9ybTo6c2V0U2l6ZShjb25zdCBGbG9hdFNpemUmIHNpemUp
CiB7CisgICAgaWYgKG1fc2l6ZSA9PSBzaXplKQorICAgICAgICByZXR1cm47CiAgICAgbV9zaXpl
ID0gc2l6ZTsKICAgICBtX2RpcnR5ID0gdHJ1ZTsKIH0KIAogdm9pZCBHcmFwaGljc0xheWVyVHJh
bnNmb3JtOjpzZXRBbmNob3JQb2ludChjb25zdCBGbG9hdFBvaW50M0QmIGFuY2hvclBvaW50KQog
eworICAgIGlmIChtX2FuY2hvclBvaW50ID09IGFuY2hvclBvaW50KQorICAgICAgICByZXR1cm47
CiAgICAgbV9hbmNob3JQb2ludCA9IGFuY2hvclBvaW50OwogICAgIG1fZGlydHkgPSB0cnVlOwog
fQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06OnNldEZsYXR0ZW5pbmcoYm9vbCBmbGF0
dGVuaW5nKQogeworICAgIGlmIChtX2ZsYXR0ZW5pbmcgPT0gZmxhdHRlbmluZykKKyAgICAgICAg
cmV0dXJuOwogICAgIG1fZmxhdHRlbmluZyA9IGZsYXR0ZW5pbmc7CiAgICAgbV9kaXJ0eSA9IHRy
dWU7CiB9CiAKIHZvaWQgR3JhcGhpY3NMYXllclRyYW5zZm9ybTo6c2V0TG9jYWxUcmFuc2Zvcm0o
Y29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIHRyYW5zZm9ybSkKIHsKKyAgICBpZiAobV9sb2Nh
bCA9PSB0cmFuc2Zvcm0pCisgICAgICAgIHJldHVybjsKICAgICBtX2xvY2FsID0gdHJhbnNmb3Jt
OwogICAgIG1fZGlydHkgPSB0cnVlOwogfQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJUcmFuc2Zvcm06
OnNldENoaWxkcmVuVHJhbnNmb3JtKGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiB0cmFuc2Zv
cm0pCiB7CisgICAgaWYgKG1fY2hpbGRyZW4gPT0gdHJhbnNmb3JtKQorICAgICAgICByZXR1cm47
CiAgICAgbV9jaGlsZHJlbiA9IHRyYW5zZm9ybTsKICAgICBtX2RpcnR5ID0gdHJ1ZTsKIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>