<?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>22582</bug_id>
          
          <creation_ts>2008-12-01 17:28:32 -0800</creation_ts>
          <short_desc>Need API to generate images from nodes on Windows</short_desc>
          <delta_ts>2008-12-01 21:27:58 -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>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows Vista</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="Steve Falkenburg">sfalken</reporter>
          <assigned_to name="Steve Falkenburg">sfalken</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>100925</commentid>
    <comment_count>0</comment_count>
    <who name="Steve Falkenburg">sfalken</who>
    <bug_when>2008-12-01 17:28:32 -0800</bug_when>
    <thetext>To match Mac, we need an API that generates an HBITMAP from a Node.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>100926</commentid>
    <comment_count>1</comment_count>
      <attachid>25648</attachid>
    <who name="Steve Falkenburg">sfalken</who>
    <bug_when>2008-12-01 17:30:35 -0800</bug_when>
    <thetext>Created attachment 25648
Implement renderedImage for Windows</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>100935</commentid>
    <comment_count>2</comment_count>
      <attachid>25648</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-12-01 18:35:55 -0800</bug_when>
    <thetext>Comment on attachment 25648
Implement renderedImage for Windows

&gt; +++ WebCore/ChangeLog	(working copy)
&gt; @@ -1,3 +1,18 @@
&gt; +2008-12-01  Steve Falkenburg  &lt;sfalken@apple.com&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        WARNING: NO TEST CASES ADDED OR CHANGED
&gt; +
&gt; +        * page/Frame.h:
&gt; +        * page/win/FrameCGWin.cpp:
&gt; +        (WebCore::imageFromRect):
&gt; +        (WebCore::imageFromSelection):
&gt; +        (WebCore::Frame::nodeImage):
&gt; +        * page/win/FrameCairoWin.cpp:
&gt; +        (WebCore::imageFromNode):
&gt; +        * page/win/FrameWin.h:

You should reference this bug in your ChangeLog, and add some specific comments about the functions you changed/added.

&gt; +#if PLATFORM(WIN)
&gt; +
&gt; +public:
&gt; +    HBITMAP nodeImage(Node*) const;

Someday it would be nice for nodeImage to return a WebCore::Image and for the implementations to be shared. Maybe you could add a FIXME?

&gt; +HBITMAP Frame::nodeImage(Node* node) const
&gt; +{
&gt; +    RenderObject* renderer = node-&gt;renderer();
&gt; +    if (!renderer)
&gt; +        return 0;
&gt; +
&gt; +    IntRect topLevelRect;
&gt; +    IntRect paintingRect = renderer-&gt;paintingRootRect(topLevelRect);
&gt; +
&gt; +    d-&gt;m_view-&gt;setNodeToDraw(node); // invoke special sub-tree drawing mode
&gt; +    HBITMAP result = imageFromRect(this, paintingRect);
&gt; +    d-&gt;m_view-&gt;setNodeToDraw(0);
&gt; +
&gt; +    return result;
&gt;  }

I think we should call updateLayout() before calling imageFromRect, to match the FrameMac implementation. Maybe imageFromRect should be the one to call updateLayout?

&gt; +++ WebCore/page/win/FrameWin.h	(working copy)
&gt; @@ -34,6 +34,7 @@ typedef struct HBITMAP__* HBITMAP;
&gt;  namespace WebCore {
&gt;  
&gt;      HBITMAP imageFromSelection(Frame* frame, bool forceWhiteText);
&gt; +    HBITMAP imageFromNode(Frame*, Node*);

I don&apos;t think you need this declaration.

&gt; +++ WebKit/win/ChangeLog	(working copy)
&gt; @@ -1,3 +1,12 @@
&gt; +2008-12-01  Steve Falkenburg  &lt;sfalken@apple.com&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        * DOMCoreClasses.cpp:
&gt; +        (DOMElement::renderedImage):
&gt; +        * DOMCoreClasses.h:
&gt; +        * Interfaces/DOMPrivate.idl:

Same comments about the ChangeLog here as in WebCore.

&gt; +HRESULT STDMETHODCALLTYPE DOMElement::renderedImage(HBITMAP* image)
&gt; +{
&gt; +    if (!image) {
&gt; +        ASSERT_NOT_REACHED();
&gt; +        return E_POINTER;
&gt; +    }
&gt; +    *image = 0;
&gt; +
&gt; +    ASSERT(m_element);
&gt; +
&gt; +    WebCore::Frame* frame = m_element-&gt;document()-&gt;frame();

We shouldn&apos;t be using the WebCore:: prefix in .cpp files.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>100965</commentid>
    <comment_count>3</comment_count>
    <who name="Steve Falkenburg">sfalken</who>
    <bug_when>2008-12-01 21:27:58 -0800</bug_when>
    <thetext>Fixed in r38894.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25648</attachid>
            <date>2008-12-01 17:30:35 -0800</date>
            <delta_ts>2008-12-01 18:35:55 -0800</delta_ts>
            <desc>Implement renderedImage for Windows</desc>
            <filename>diff.txt</filename>
            <type>text/plain</type>
            <size>7208</size>
            <attacher name="Steve Falkenburg">sfalken</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzODg4NSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTggQEAKKzIwMDgtMTItMDEgIFN0ZXZlIEZhbGtlbmJ1cmcgIDxzZmFsa2VuQGFw
cGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBXQVJOSU5HOiBOTyBURVNUIENBU0VTIEFEREVEIE9SIENIQU5HRUQKKworICAgICAgICAqIHBh
Z2UvRnJhbWUuaDoKKyAgICAgICAgKiBwYWdlL3dpbi9GcmFtZUNHV2luLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmltYWdlRnJvbVJlY3QpOgorICAgICAgICAoV2ViQ29yZTo6aW1hZ2VGcm9tU2Vs
ZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lOjpub2RlSW1hZ2UpOgorICAgICAgICAq
IHBhZ2Uvd2luL0ZyYW1lQ2Fpcm9XaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6aW1hZ2VGcm9t
Tm9kZSk6CisgICAgICAgICogcGFnZS93aW4vRnJhbWVXaW4uaDoKKwogMjAwOC0xMi0wMSAgRGF2
aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEZpeCBsb2dpYyBlcnJv
ciBpbiBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGUoKSBmcm9tIHIzODg4NC4KSW5kZXg6IFdlYkNv
cmUvcGFnZS9GcmFtZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9GcmFtZS5oCShyZXZp
c2lvbiAzODg3MykKKysrIFdlYkNvcmUvcGFnZS9GcmFtZS5oCSh3b3JraW5nIGNvcHkpCkBAIC00
Myw2ICs0MywxMCBAQCB0eXBlZGVmIGludCBOU1dyaXRpbmdEaXJlY3Rpb247CiAjZW5kaWYKICNl
bmRpZgogCisjaWYgUExBVEZPUk0oV0lOKQordHlwZWRlZiBzdHJ1Y3QgSEJJVE1BUF9fKiBIQklU
TUFQOworI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgRWRpdG9yOwpAQCAt
MzA3LDYgKzMxMSwxMyBAQCBwdWJsaWM6CiAKICNlbmRpZgogCisjaWYgUExBVEZPUk0oV0lOKQor
CitwdWJsaWM6CisgICAgSEJJVE1BUCBub2RlSW1hZ2UoTm9kZSopIGNvbnN0OworCisjZW5kaWYK
KwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9wYWdlL3dpbi9G
cmFtZUNHV2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2Uvd2luL0ZyYW1lQ0dXaW4u
Y3BwCShyZXZpc2lvbiAzODg3MykKKysrIFdlYkNvcmUvcGFnZS93aW4vRnJhbWVDR1dpbi5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgPHdpbmRvd3MuaD4K
IAorI2luY2x1ZGUgIkZyYW1lUHJpdmF0ZS5oIgogI2luY2x1ZGUgIkZyYW1lVmlldy5oIgogI2lu
Y2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCkBAIC00OSwx
MyArNTAsOCBAQCBzdGF0aWMgdm9pZCBkcmF3UmVjdEludG9Db250ZXh0KEludFJlY3QgCiAgICAg
dmlldy0+cGFpbnQoZ2MsIHJlY3QpOwogfQogCi1IQklUTUFQIGltYWdlRnJvbVNlbGVjdGlvbihG
cmFtZSogZnJhbWUsIGJvb2wgZm9yY2VCbGFja1RleHQpCitzdGF0aWMgSEJJVE1BUCBpbWFnZUZy
b21SZWN0KGNvbnN0IEZyYW1lKiBmcmFtZSwgSW50UmVjdCYgaXIpCiB7Ci0gICAgZnJhbWUtPnZp
ZXcoKS0+c2V0UGFpbnRSZXN0cmljdGlvbihmb3JjZUJsYWNrVGV4dCA/IFBhaW50UmVzdHJpY3Rp
b25TZWxlY3Rpb25Pbmx5QmxhY2tUZXh0IDogUGFpbnRSZXN0cmljdGlvblNlbGVjdGlvbk9ubHkp
OwotICAgIEZsb2F0UmVjdCBmciA9IGZyYW1lLT5zZWxlY3Rpb25Cb3VuZHMoKTsKLSAgICBJbnRS
ZWN0IGlyKHN0YXRpY19jYXN0PGludD4oZnIueCgpKSwgc3RhdGljX2Nhc3Q8aW50Pihmci55KCkp
LAotICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8aW50Pihmci53aWR0aCgpKSwgc3RhdGljX2Nh
c3Q8aW50Pihmci5oZWlnaHQoKSkpOwotCiAgICAgdm9pZCogYml0czsKICAgICBIREMgaGRjID0g
Q3JlYXRlQ29tcGF0aWJsZURDKDApOwogICAgIGludCB3ID0gaXIud2lkdGgoKTsKQEAgLTcyLDE2
ICs2OCw0MSBAQCBIQklUTUFQIGltYWdlRnJvbVNlbGVjdGlvbihGcmFtZSogZnJhbWUsCiAKICAg
ICBHcmFwaGljc0NvbnRleHQgZ2MoY29udGV4dCk7CiAKLSAgICBmcmFtZS0+ZG9jdW1lbnQoKS0+
dXBkYXRlTGF5b3V0KCk7CiAgICAgZHJhd1JlY3RJbnRvQ29udGV4dChpciwgZnJhbWUtPnZpZXco
KSwgJmdjKTsKIAogICAgIENHQ29udGV4dFJlbGVhc2UoY29udGV4dCk7CiAgICAgU2VsZWN0T2Jq
ZWN0KGhkYywgaGJtcE9sZCk7CiAgICAgRGVsZXRlREMoaGRjKTsKIAorICAgIHJldHVybiBoYm1w
OworfQorCitIQklUTUFQIGltYWdlRnJvbVNlbGVjdGlvbihGcmFtZSogZnJhbWUsIGJvb2wgZm9y
Y2VCbGFja1RleHQpCit7CisgICAgZnJhbWUtPnZpZXcoKS0+c2V0UGFpbnRSZXN0cmljdGlvbihm
b3JjZUJsYWNrVGV4dCA/IFBhaW50UmVzdHJpY3Rpb25TZWxlY3Rpb25Pbmx5QmxhY2tUZXh0IDog
UGFpbnRSZXN0cmljdGlvblNlbGVjdGlvbk9ubHkpOworICAgIGZyYW1lLT5kb2N1bWVudCgpLT51
cGRhdGVMYXlvdXQoKTsKKyAgICBGbG9hdFJlY3QgZnIgPSBmcmFtZS0+c2VsZWN0aW9uQm91bmRz
KCk7CisgICAgSW50UmVjdCBpcihzdGF0aWNfY2FzdDxpbnQ+KGZyLngoKSksIHN0YXRpY19jYXN0
PGludD4oZnIueSgpKSwKKyAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PGludD4oZnIud2lkdGgo
KSksIHN0YXRpY19jYXN0PGludD4oZnIuaGVpZ2h0KCkpKTsKKyAgICBIQklUTUFQIGltYWdlID0g
aW1hZ2VGcm9tUmVjdChmcmFtZSwgaXIpOwogICAgIGZyYW1lLT52aWV3KCktPnNldFBhaW50UmVz
dHJpY3Rpb24oUGFpbnRSZXN0cmljdGlvbk5vbmUpOworICAgIHJldHVybiBpbWFnZTsKK30KIAot
ICAgIHJldHVybiBoYm1wOworSEJJVE1BUCBGcmFtZTo6bm9kZUltYWdlKE5vZGUqIG5vZGUpIGNv
bnN0Cit7CisgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IG5vZGUtPnJlbmRlcmVyKCk7Cisg
ICAgaWYgKCFyZW5kZXJlcikKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBJbnRSZWN0IHRvcExl
dmVsUmVjdDsKKyAgICBJbnRSZWN0IHBhaW50aW5nUmVjdCA9IHJlbmRlcmVyLT5wYWludGluZ1Jv
b3RSZWN0KHRvcExldmVsUmVjdCk7CisKKyAgICBkLT5tX3ZpZXctPnNldE5vZGVUb0RyYXcobm9k
ZSk7IC8vIGludm9rZSBzcGVjaWFsIHN1Yi10cmVlIGRyYXdpbmcgbW9kZQorICAgIEhCSVRNQVAg
cmVzdWx0ID0gaW1hZ2VGcm9tUmVjdCh0aGlzLCBwYWludGluZ1JlY3QpOworICAgIGQtPm1fdmll
dy0+c2V0Tm9kZVRvRHJhdygwKTsKKworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS93aW4vRnJhbWVDYWlyb1dpbi5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL3dpbi9GcmFtZUNhaXJvV2luLmNwcAkocmV2aXNp
b24gMzg4NzMpCisrKyBXZWJDb3JlL3BhZ2Uvd2luL0ZyYW1lQ2Fpcm9XaW4uY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0zOSw0ICszOSwxMCBAQCBIQklUTUFQIGltYWdlRnJvbVNlbGVjdGlvbihGcmFt
ZSogZnJhbWUsCiAgICAgcmV0dXJuIDA7CiB9CiAKK0hCSVRNQVAgaW1hZ2VGcm9tTm9kZShGcmFt
ZSosIE5vZGUqKQoreworICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgcmV0dXJuIDA7Cit9CisK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS93aW4vRnJhbWVXaW4u
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2Uvd2luL0ZyYW1lV2luLmgJKHJldmlzaW9uIDM4
ODczKQorKysgV2ViQ29yZS9wYWdlL3dpbi9GcmFtZVdpbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0z
NCw2ICszNCw3IEBAIHR5cGVkZWYgc3RydWN0IEhCSVRNQVBfXyogSEJJVE1BUDsKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogICAgIEhCSVRNQVAgaW1hZ2VGcm9tU2VsZWN0aW9uKEZyYW1lKiBmcmFt
ZSwgYm9vbCBmb3JjZVdoaXRlVGV4dCk7CisgICAgSEJJVE1BUCBpbWFnZUZyb21Ob2RlKEZyYW1l
KiwgTm9kZSopOwogICAgIHZvaWQgY29tcHV0ZVBhZ2VSZWN0c0ZvckZyYW1lKEZyYW1lKiwgY29u
c3QgSW50UmVjdCYgcHJpbnRSZWN0LCBmbG9hdCBoZWFkZXJIZWlnaHQsIGZsb2F0IGZvb3Rlckhl
aWdodCwgZmxvYXQgdXNlclNjYWxlRmFjdG9yLFZlY3RvcjxJbnRSZWN0PiYgcGFnZXMsIGludCYg
cGFnZUhlaWdodCk7CiAKIH0KSW5kZXg6IFdlYktpdC93aW4vQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYktpdC93aW4vQ2hhbmdlTG9nCShyZXZpc2lvbiAzODg4NSkKKysrIFdlYktpdC93aW4v
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDgtMTItMDEgIFN0
ZXZlIEZhbGtlbmJ1cmcgIDxzZmFsa2VuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIERPTUNvcmVDbGFzc2VzLmNwcDoKKyAgICAg
ICAgKERPTUVsZW1lbnQ6OnJlbmRlcmVkSW1hZ2UpOgorICAgICAgICAqIERPTUNvcmVDbGFzc2Vz
Lmg6CisgICAgICAgICogSW50ZXJmYWNlcy9ET01Qcml2YXRlLmlkbDoKKwogMjAwOC0xMi0wMSAg
RXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRh
bSBSb2Jlbi4KSW5kZXg6IFdlYktpdC93aW4vRE9NQ29yZUNsYXNzZXMuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYktpdC93aW4vRE9NQ29yZUNsYXNzZXMuY3BwCShyZXZpc2lvbiAzODg3MykKKysrIFdl
YktpdC93aW4vRE9NQ29yZUNsYXNzZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zOCw2ICszOCw3
IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9ET01XaW5kb3cuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0Rv
Y3VtZW50Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9FbGVtZW50Lmg+CisjaW5jbHVkZSA8V2ViQ29y
ZS9GcmFtZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2ltcGxlRm9udERhdGEuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL0hUTUxGb3JtRWxlbWVudC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvSFRNTElucHV0
RWxlbWVudC5oPgpAQCAtMTA2Nyw2ICsxMDY4LDI3IEBAIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZ
UEUgRE9NRWxlbWVudDo6Zm8KICAgICByZXR1cm4gU19PSzsKIH0KIAorSFJFU1VMVCBTVERNRVRI
T0RDQUxMVFlQRSBET01FbGVtZW50OjpyZW5kZXJlZEltYWdlKEhCSVRNQVAqIGltYWdlKQorewor
ICAgIGlmICghaW1hZ2UpIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAg
IHJldHVybiBFX1BPSU5URVI7CisgICAgfQorICAgICppbWFnZSA9IDA7CisKKyAgICBBU1NFUlQo
bV9lbGVtZW50KTsKKworICAgIFdlYkNvcmU6OkZyYW1lKiBmcmFtZSA9IG1fZWxlbWVudC0+ZG9j
dW1lbnQoKS0+ZnJhbWUoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm4gRV9GQUlM
OworCisgICAgKmltYWdlID0gZnJhbWUtPm5vZGVJbWFnZShtX2VsZW1lbnQpOworICAgIGlmICgh
KmltYWdlKQorICAgICAgICByZXR1cm4gRV9GQUlMOworCisgICAgcmV0dXJuIFNfT0s7Cit9CisK
IC8vIElET01FbGVtZW50Q1NTSW5saW5lU3R5bGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBET01F
bGVtZW50OjpzdHlsZSggCkluZGV4OiBXZWJLaXQvd2luL0RPTUNvcmVDbGFzc2VzLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0L3dpbi9ET01Db3JlQ2xhc3Nlcy5oCShyZXZpc2lvbiAzODg3MykKKysr
IFdlYktpdC93aW4vRE9NQ29yZUNsYXNzZXMuaAkod29ya2luZyBjb3B5KQpAQCAtNzc3LDYgKzc3
Nyw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgZm9u
dCgKICAgICAgICAgV2ViRm9udERlc2NyaXB0aW9uKiB3ZWJGb250RGVzY3JpcHRpb24pOwogCisg
ICAgdmlydHVhbCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIHJlbmRlcmVkSW1hZ2UoCisgICAg
ICAgIC8qIFtyZXR2YWxdW291dF0gKi8gSEJJVE1BUCogaW1hZ2UpOworCiAgICAgLy8gSURPTUVs
ZW1lbnRDU1NJbmxpbmVTdHlsZQogICAgIHZpcnR1YWwgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQ
RSBzdHlsZSggCiAgICAgICAgIC8qIFtyZXR2YWxdW291dF0gKi8gSURPTUNTU1N0eWxlRGVjbGFy
YXRpb24gKipyZXN1bHQpOwpJbmRleDogV2ViS2l0L3dpbi9JbnRlcmZhY2VzL0RPTVByaXZhdGUu
aWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdC93aW4vSW50ZXJmYWNlcy9ET01Qcml2YXRlLmlkbAko
cmV2aXNpb24gMzg4NzMpCisrKyBXZWJLaXQvd2luL0ludGVyZmFjZXMvRE9NUHJpdmF0ZS5pZGwJ
KHdvcmtpbmcgY29weSkKQEAgLTQ2LDYgKzQ2LDcgQEAgaW50ZXJmYWNlIElET01FbGVtZW50UHJp
dmF0ZSA6IElVbmtub3duCiAgICAgSFJFU1VMVCBpc0ZvY3VzZWQoW291dCwgcmV0dmFsXSBCT09M
KiByZXN1bHQpOwogICAgIEhSRVNVTFQgaW5uZXJUZXh0KFtvdXQsIHJldHZhbF0gQlNUUiogcmVz
dWx0KTsKICAgICBbbG9jYWxdIEhSRVNVTFQgZm9udChXZWJGb250RGVzY3JpcHRpb24qIHdlYkZv
bnREZXNjcmlwdGlvbik7CisgICAgSFJFU1VMVCByZW5kZXJlZEltYWdlKFtvdXQsIHJldHZhbF0g
SEJJVE1BUCogaW1hZ2UpOwogfQogCiAvKgo=
</data>
<flag name="review"
          id="11959"
          type_id="1"
          status="+"
          setter="aroben"
    />
          </attachment>
      

    </bug>

</bugzilla>