<?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>51464</bug_id>
          
          <creation_ts>2010-12-22 05:36:37 -0800</creation_ts>
          <short_desc>[Qt] document.getElementById(...) doesn&apos;t return the right object in combination with QGraphicsWidget</short_desc>
          <delta_ts>2011-01-30 09:18:39 -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>Plug-ins</component>
          <version>420+</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</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>
          <dependson>51330</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter>thomas.senyk</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ademar</cc>
    
    <cc>commit-queue</cc>
    
    <cc>noam</cc>
    
    <cc>qt-info</cc>
    
    <cc>suresh.voruganti</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>325459</commentid>
    <comment_count>0</comment_count>
      <attachid>77207</attachid>
    <who name="">thomas.senyk</who>
    <bug_when>2010-12-22 05:36:37 -0800</bug_when>
    <thetext>Created attachment 77207
example code

document.getElementById(...) doesn&apos;t return the right object if the plugin (provided by QWebPluginFactory) behind it is a QGraphicsWidget ... it returns something, but you can&apos;t call any property/function


I attached a example where you can see the problem.

The important files are:
testplugin.h   (there you can change the type of TestPlugin by commenting/uncommenting the #define BUGREPORT_USE_QWIDGET
testpluginfectory.cpp   ... in TestPluginFactory::create is a note which is maybe important
test.html      see function testFunc() ... to see the output: right-click on html-side =&gt; &quot;inspect&quot; =&gt; &quot;console&quot;



Possible setups:
1. the best working setup:
TestPlugin is a QWidget =&gt; everything seems to work with and without addToJavaScriptWindowObject (see note in TestPluginFactory::create)

2. the worst setup
TestPlugin is a QGraphicsWidget &amp;&amp; addToJavaScriptWindowObject is NOT executed =&gt; nothing in test.hmtl=&gt;testFunc() works

3. at least something is working
TestPlugin is a QGraphicsWidget &amp;&amp; addToJavaScriptWindowObject is executed =&gt; at least: console.debug(&quot;foobar:&quot; + foobar.doSomething())     works</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328216</commentid>
    <comment_count>1</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2010-12-31 13:39:10 -0800</bug_when>
    <thetext>To apply a fix to this upstream, https://bugs.webkit.org/show_bug.cgi?id=51330 has to be fixed/reverted first.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328320</commentid>
    <comment_count>2</comment_count>
      <attachid>77761</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2011-01-01 15:15:21 -0800</bug_when>
    <thetext>Created attachment 77761
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328554</commentid>
    <comment_count>3</comment_count>
    <who name="Suresh Voruganti">suresh.voruganti</who>
    <bug_when>2011-01-03 06:38:45 -0800</bug_when>
    <thetext>Fix required for Qtwebkit 2.1, top issue for Qt team</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328556</commentid>
    <comment_count>4</comment_count>
    <who name="Suresh Voruganti">suresh.voruganti</who>
    <bug_when>2011-01-03 06:45:21 -0800</bug_when>
    <thetext>As per the comments, adding dependency to 51330. pls cherry pick both the fixes for Qtwebkit 2.1 and 2.2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328565</commentid>
    <comment_count>5</comment_count>
      <attachid>77761</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-01-03 07:33:13 -0800</bug_when>
    <thetext>Comment on attachment 77761
Patch

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

Looks oky-doky to me.

&gt; WebKit/qt/ChangeLog:9
&gt; +        by adding a custom membe to WebCore::Widget. 

Typo, s/membe/member/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328566</commentid>
    <comment_count>6</comment_count>
      <attachid>77761</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-01-03 07:40:07 -0800</bug_when>
    <thetext>Comment on attachment 77761
Patch

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

I think overall the patch looks good, but I suggest the above renamings/fixes before landing.

&gt; WebCore/platform/Widget.h:239
&gt; +    QObject* qtObject() const;
&gt; +    void setQtObject(QObject*);

I think this property should be called bindingsObject() instead of qtObject. Makes IMHO more sense in the context of WebCore::Widget.

&gt; WebCore/platform/Widget.h:287
&gt; +    QObject* m_qtObject;

I suppose for safety purposes this could be a QWeakPointer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328570</commentid>
    <comment_count>7</comment_count>
      <attachid>77761</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-01-03 07:56:02 -0800</bug_when>
    <thetext>Comment on attachment 77761
Patch

I agree with Simon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328571</commentid>
    <comment_count>8</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2011-01-03 08:00:13 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 77761 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=77761&amp;action=review
&gt; 
&gt; I think overall the patch looks good, but I suggest the above renamings/fixes before landing.
&gt; 
&gt; &gt; WebCore/platform/Widget.h:239
&gt; &gt; +    QObject* qtObject() const;
&gt; &gt; +    void setQtObject(QObject*);
&gt; 
&gt; I think this property should be called bindingsObject() instead of qtObject. Makes IMHO more sense in the context of WebCore::Widget.
&gt; 
&gt; &gt; WebCore/platform/Widget.h:287
&gt; &gt; +    QObject* m_qtObject;
&gt; 
&gt; I suppose for safety purposes this could be a QWeakPointer.

Will do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328617</commentid>
    <comment_count>9</comment_count>
      <attachid>77819</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2011-01-03 10:23:17 -0800</bug_when>
    <thetext>Created attachment 77819
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328656</commentid>
    <comment_count>10</comment_count>
      <attachid>77819</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-03 11:02:12 -0800</bug_when>
    <thetext>Comment on attachment 77819
Patch

Clearing flags on attachment: 77819

Committed r74909: &lt;http://trac.webkit.org/changeset/74909&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328657</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-03 11:02:19 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330255</commentid>
    <comment_count>12</comment_count>
    <who name="Ademar Reis">ademar</who>
    <bug_when>2011-01-06 11:27:43 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; To apply a fix to this upstream, https://bugs.webkit.org/show_bug.cgi?id=51330 has to be fixed/reverted first.

The patch has been commited already, even though bug 51330 is still open. Shouldn&apos;t this bug still be open as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>332645</commentid>
    <comment_count>13</comment_count>
    <who name="Ademar Reis">ademar</who>
    <bug_when>2011-01-11 14:13:40 -0800</bug_when>
    <thetext>Revision r74909 cherry-picked into qtwebkit-2.1 with commit 56678c1 &lt;http://gitorious.org/webkit/qtwebkit/commit/56678c1&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>342321</commentid>
    <comment_count>14</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2011-01-30 09:18:39 -0800</bug_when>
    <thetext>*** Bug 52053 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>77207</attachid>
            <date>2010-12-22 05:36:37 -0800</date>
            <delta_ts>2010-12-22 05:36:37 -0800</delta_ts>
            <desc>example code</desc>
            <filename>testwebview.tar.gz</filename>
            <type>application/octet-stream</type>
            <size>2750</size>
            <attacher>thomas.senyk</attacher>
            
              <data encoding="base64">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
ggr6gfQfyOcUkwBQAAA=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>77761</attachid>
            <date>2011-01-01 15:15:21 -0800</date>
            <delta_ts>2011-01-03 10:23:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-51464-20110101151519.patch</filename>
            <type>text/plain</type>
            <size>9090</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDc5ZDliZTg2MjQ3NWU0NTQ3ZTk2NmE4YWJlMzZlNDMzODZkZTcwMy4uYjRhNDNkNWE5MzViY2Fh
ODU4MzQzNDM3YzJiMWU5NDM1MDIxZjlhOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMS0wMS0wMSAgTm9h
bSBSb3NlbnRoYWwgIDxub2FtLnJvc2VudGhhbEBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCguLi4pIGRvZXNuJ3QgcmV0dXJuIHRoZSByaWdodCBvYmplY3QgaW4gY29tYmluYXRpb24g
d2l0aCBRR3JhcGhpY3NXaWRnZXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTUxNDY0CisKKyAgICAgICAgQWRkZWQgYSB3YXkgdG8gYmluZCBhbnkgUU9i
amVjdCBjcmVhdGVkIGFzIGEgcGx1Z2luIHRvIEphdmFTY3JpcHQsIAorICAgICAgICBieSBhZGRp
bmcgYSBjdXN0b20gbWVtYmVyIChxdE9iamVjdCkgdG8gV2ViQ29yZTo6V2lkZ2V0LiAKKyAgICAg
ICAgQWRkZWQgYSB0ZXN0IHRvIHRzdF9xd2VicGFnZSB0byBtYWtlIHN1cmUgcGx1Z2lucyBjcmVh
dGVkIAorICAgICAgICBhcyBRR3JhcGhpY3NXaWRnZXQgYXJlIGFjY2Vzc2libGUgdGhyb3VnaCBK
YXZhU2NyaXB0LgorCisgICAgICAgICogYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlclF0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6OmNyZWF0ZVNjcmlwdEluc3Rh
bmNlRm9yV2lkZ2V0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9XaWRnZXQuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9xdC9XaWRnZXRRdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXaWRnZXQ6OldpZGdl
dCk6CisgICAgICAgIChXZWJDb3JlOjpXaWRnZXQ6OnNldFF0T2JqZWN0KToKKyAgICAgICAgKFdl
YkNvcmU6OldpZGdldDo6cXRPYmplY3QpOgorCiAyMDEwLTEyLTMxICBEYXJpbiBBZGxlciAgPGRh
cmluQGFwcGxlLmNvbT4KIAogICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajogQWRkZWQgYmFjayB0aGUgbGFuZ3VhZ2UuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1NjcmlwdENvbnRyb2xsZXJRdC5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL1Njcmlw
dENvbnRyb2xsZXJRdC5jcHAKaW5kZXggNTVkNGJhNDFkMmIzYjIzODcxZGI2OWI5MzM4YjYyYjk4
MTJiMjBmYy4uZmY4YWE4NjFjMmViZjY4ODBlNGZhNDUwMjMyNGEzYmU3NzkwZTc0MiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyUXQuY3BwCisrKyBiL1dl
YkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlclF0LmNwcApAQCAtNTMsMTAgKzUzLDE1
IEBAIFBhc3NSZWZQdHI8SlNDOjpCaW5kaW5nczo6SW5zdGFuY2U+IFNjcmlwdENvbnRyb2xsZXI6
OmNyZWF0ZVNjcmlwdEluc3RhbmNlRm9yV2lkCiAgICAgICAgIHJldHVybiBwbHVnaW5WaWV3LT5i
aW5kaW5nSW5zdGFuY2UoKTsKICAgICB9CiAKLSAgICBRV2lkZ2V0KiBwbGF0Zm9ybVdpZGdldCA9
IHdpZGdldC0+cGxhdGZvcm1XaWRnZXQoKTsKLSAgICBpZiAoIXBsYXRmb3JtV2lkZ2V0KQorICAg
IFFPYmplY3QqIG9iamVjdCA9IHdpZGdldC0+cXRPYmplY3QoKTsKKworICAgIGlmICghb2JqZWN0
KQorICAgICAgICBvYmplY3QgPSB3aWRnZXQtPnBsYXRmb3JtV2lkZ2V0KCk7CisKKyAgICBpZiAo
IW9iamVjdCkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIEpTQzo6QmluZGluZ3M6OlF0
SW5zdGFuY2U6OmdldFF0SW5zdGFuY2UocGxhdGZvcm1XaWRnZXQsIGJpbmRpbmdSb290T2JqZWN0
KCksIFFTY3JpcHRFbmdpbmU6OlF0T3duZXJzaGlwKTsKKworICAgIHJldHVybiBKU0M6OkJpbmRp
bmdzOjpRdEluc3RhbmNlOjpnZXRRdEluc3RhbmNlKG9iamVjdCwgYmluZGluZ1Jvb3RPYmplY3Qo
KSwgUVNjcmlwdEVuZ2luZTo6UXRPd25lcnNoaXApOwogfQogCiB9CmRpZmYgLS1naXQgYS9XZWJD
b3JlL3BsYXRmb3JtL1dpZGdldC5oIGIvV2ViQ29yZS9wbGF0Zm9ybS9XaWRnZXQuaAppbmRleCBj
NmMxZDlhMjJmMTdjNmY5ZTZlMGM5NTQyM2E3ZDFhZWJmZDUxM2FiLi4xMjU0OTRmNDU3MWRkY2Q4
NmI2ZDJmNjE0NDZjY2YyMDBkNzZjZTlmIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL1dp
ZGdldC5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKQEAgLTIzNCw2ICsyMzQsMTEg
QEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBpc1BsdWdpbkNvbnRhaW5lcigpIGNvbnN0IHsg
cmV0dXJuIGZhbHNlOyB9CiAjZW5kaWYKIAorI2lmIFBMQVRGT1JNKFFUKQorICAgIFFPYmplY3Qq
IHF0T2JqZWN0KCkgY29uc3Q7CisgICAgdm9pZCBzZXRRdE9iamVjdChRT2JqZWN0Kik7CisjZW5k
aWYKKwogICAgIC8vIFZpcnR1YWwgbWV0aG9kcyB0byBjb252ZXJ0IHBvaW50cyB0by9mcm9tIHRo
ZSBjb250YWluaW5nIFNjcm9sbFZpZXcKICAgICB2aXJ0dWFsIEludFJlY3QgY29udmVydFRvQ29u
dGFpbmluZ1ZpZXcoY29uc3QgSW50UmVjdCYpIGNvbnN0OwogICAgIHZpcnR1YWwgSW50UmVjdCBj
b252ZXJ0RnJvbUNvbnRhaW5pbmdWaWV3KGNvbnN0IEludFJlY3QmKSBjb25zdDsKQEAgLTI3OCw2
ICsyODMsMTAgQEAgcHJpdmF0ZToKICAgICBXaWRnZXRQcml2YXRlKiBtX2RhdGE7CiAjZW5kaWYK
IAorI2lmIFBMQVRGT1JNKFFUKQorICAgIFFPYmplY3QqIG1fcXRPYmplY3Q7CisjZW5kaWYKKwog
I2lmIFBMQVRGT1JNKEhBSUtVKQogICAgIFBsYXRmb3JtV2lkZ2V0IG1fdG9wTGV2ZWxQbGF0Zm9y
bVdpZGdldDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9xdC9XaWRnZXRR
dC5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL3F0L1dpZGdldFF0LmNwcAppbmRleCBlNjRkNjU1ZjAz
NTM3OTI4NGQ0ZmRlNGM4N2VmODQ0YWY4NzA4M2YwLi5lOGE3OGI0YzI2YmQ0NTYxMjI0MDU3NWI1
ZjFjMGNjYzQyMDZiMDZkIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL3F0L1dpZGdldFF0
LmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL3F0L1dpZGdldFF0LmNwcApAQCAtNTAsNiArNTAs
NyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXaWRnZXQ6OldpZGdldChRV2lkZ2V0KiB3aWRn
ZXQpCisgICAgOiBtX3F0T2JqZWN0KDApCiB7CiAgICAgaW5pdCh3aWRnZXQpOwogfQpAQCAtMTEw
LDYgKzExMSwxNiBAQCB2b2lkIFdpZGdldDo6c2V0SXNTZWxlY3RlZChib29sKQogICAgIG5vdElt
cGxlbWVudGVkKCk7CiB9CiAKK3ZvaWQgV2lkZ2V0OjpzZXRRdE9iamVjdChRT2JqZWN0KiBvYmpl
Y3QpCit7CisgICAgbV9xdE9iamVjdCA9IG9iamVjdDsKK30KKworUU9iamVjdCogV2lkZ2V0Ojpx
dE9iamVjdCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcXRPYmplY3Q7Cit9CisKIH0KIAogLy8g
dmltOiB0cz00IHN3PTQgZXQKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJL
aXQvcXQvQ2hhbmdlTG9nCmluZGV4IGFiNzhlMGM4NTJhZTM4ZTBlMjNiOGEwYWUzYjQ5ZjgwZTIx
M2NjNzMuLjNjNTE4YjZhZWE4OTFiZGU2MTUxMjRmYjc0MmU3YzQ5OTczNmNkMjcgMTAwNjQ0Ci0t
LSBhL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDIwIEBACisyMDExLTAxLTAxICBOb2FtIFJvc2VudGhhbCAgPG5vYW0ucm9zZW50aGFsQG5v
a2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBbUXRdIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKC4uLikgZG9lc24ndCByZXR1cm4gdGhlIHJp
Z2h0IG9iamVjdCBpbiBjb21iaW5hdGlvbiB3aXRoIFFHcmFwaGljc1dpZGdldAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTE0NjQKKworICAgICAgICBB
ZGRlZCBhIHdheSB0byBiaW5kIGFueSBRT2JqZWN0IGNyZWF0ZWQgYXMgYSBwbHVnaW4gdG8gSmF2
YVNjcmlwdCwgCisgICAgICAgIGJ5IGFkZGluZyBhIGN1c3RvbSBtZW1iZSB0byBXZWJDb3JlOjpX
aWRnZXQuIAorICAgICAgICBBZGRlZCBhIHRlc3QgdG8gbWFrZSBzdXJlIHBsdWdpbnMgY3JlYXRl
ZCBhcyBRR3JhcGhpY3NXaWRnZXQgYXJlIAorICAgICAgICBhY2Nlc3NpYmxlIHRocm91Z2ggSmF2
YVNjcmlwdC4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQu
Y3BwOgorICAgICAgICAqIHRlc3RzL3F3ZWJwYWdlL3RzdF9xd2VicGFnZS5jcHA6CisgICAgICAg
IChQbHVnaW5QYWdlOjpjcmVhdGVQbHVnaW4pOgorICAgICAgICAodHN0X1FXZWJQYWdlOjpncmFw
aGljc1dpZGdldFBsdWdpbik6CisKIDIwMTAtMTItMjkgIEtlbnQgSGFuc2VuICA8a2VudC5oYW5z
ZW5Abm9raWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEhhdXNtYW5uLgpkaWZm
IC0tZ2l0IGEvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3Bw
IGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwCmluZGV4
IGZiZjNlODk3YzZhOWU5MDQ1MDg5ZmUxMjJlMjlhYmZjOWNjOWRiNzEuLmFkY2I3NjY2ZjlhOWU2
MmIwOTkxYzcwNTZhNzBmYjA0ODQ3ZDUzMWQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1
cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAKQEAgLTE0NDUsNyArMTQ0NSwxMiBAQCBwdWJs
aWM6CiAgICAgICAgICAgICBncmFwaGljc1dpZGdldC0+aGlkZSgpOwogICAgIH0KIHByaXZhdGU6
Ci0gICAgUXRQbHVnaW5HcmFwaGljc1dpZGdldChRR3JhcGhpY3NXaWRnZXQqIHcgPSAwKTogV2lk
Z2V0KDApLCBncmFwaGljc1dpZGdldCh3KSB7fQorICAgIFF0UGx1Z2luR3JhcGhpY3NXaWRnZXQo
UUdyYXBoaWNzV2lkZ2V0KiB3ID0gMCkKKyAgICAgICAgOiBXaWRnZXQoMCkKKyAgICAgICAgLCBn
cmFwaGljc1dpZGdldCh3KQorICAgIHsKKyAgICAgICAgc2V0UXRPYmplY3QoZ3JhcGhpY3NXaWRn
ZXQpOworICAgIH0KIAogICAgIFFHcmFwaGljc1dpZGdldCogZ3JhcGhpY3NXaWRnZXQ7CiB9Owpk
aWZmIC0tZ2l0IGEvV2ViS2l0L3F0L3Rlc3RzL3F3ZWJwYWdlL3RzdF9xd2VicGFnZS5jcHAgYi9X
ZWJLaXQvcXQvdGVzdHMvcXdlYnBhZ2UvdHN0X3F3ZWJwYWdlLmNwcAppbmRleCAyYzRiMzg5OGQ2
ZmZiNDc5ODk0ODExYzYzMDNlODlhNmI5N2E4NGE5Li42Y2Y1YjQ5MWRjZjhhZWZmOTkzNTc5MGQy
MGU4ZDJiZTAwMTU1MmZiIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvdGVzdHMvcXdlYnBhZ2UvdHN0
X3F3ZWJwYWdlLmNwcAorKysgYi9XZWJLaXQvcXQvdGVzdHMvcXdlYnBhZ2UvdHN0X3F3ZWJwYWdl
LmNwcApAQCAtOTEsNiArOTEsNyBAQCBwcml2YXRlIHNsb3RzOgogICAgIHZvaWQgZGVzdHJveVBs
dWdpbigpOwogICAgIHZvaWQgY3JlYXRlVmlld2xlc3NQbHVnaW5fZGF0YSgpOwogICAgIHZvaWQg
Y3JlYXRlVmlld2xlc3NQbHVnaW4oKTsKKyAgICB2b2lkIGdyYXBoaWNzV2lkZ2V0UGx1Z2luKCk7
CiAgICAgdm9pZCBtdWx0aXBsZVBhZ2VHcm91cHNBbmRMb2NhbFN0b3JhZ2UoKTsKICAgICB2b2lk
IGN1cnNvck1vdmVtZW50cygpOwogICAgIHZvaWQgdGV4dFNlbGVjdGlvbigpOwpAQCAtNTg4LDYg
KzU4OSw4IEBAIHByb3RlY3RlZDoKICAgICAgICAgICAgIHJlc3VsdCA9IG5ldyBRUHVzaEJ1dHRv
bigpOwogICAgICAgICBlbHNlIGlmIChjbGFzc2lkID09ICJsaW5lZWRpdCIpCiAgICAgICAgICAg
ICByZXN1bHQgPSBuZXcgUUxpbmVFZGl0KCk7CisgICAgICAgIGVsc2UgaWYgKGNsYXNzaWQgPT0g
ImdyYXBoaWNzd2lkZ2V0IikKKyAgICAgICAgICAgIHJlc3VsdCA9IG5ldyBRR3JhcGhpY3NXaWRn
ZXQoKTsKICAgICAgICAgaWYgKHJlc3VsdCkKICAgICAgICAgICAgIHJlc3VsdC0+c2V0T2JqZWN0
TmFtZShjbGFzc2lkKTsKICAgICAgICAgY2FsbHMuYXBwZW5kKENhbGxJbmZvKGNsYXNzaWQsIHVy
bCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsIHJlc3VsdCkpOwpAQCAtNjc3LDYgKzY4MCw1NCBA
QCBzdGF0aWMgdm9pZCBjcmVhdGVQbHVnaW4oUVdlYlZpZXcgKnZpZXcpCiAgICAgfQogfQogCit2
b2lkIHRzdF9RV2ViUGFnZTo6Z3JhcGhpY3NXaWRnZXRQbHVnaW4oKQoreworICAgIG1fdmlldy0+
c2V0dGluZ3MoKS0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6UGx1Z2luc0VuYWJsZWQsIHRy
dWUpOworICAgIFFHcmFwaGljc1dlYlZpZXcgd2ViVmlldzsKKworICAgIFFTaWduYWxTcHkgbG9h
ZFNweSgmd2ViVmlldywgU0lHTkFMKGxvYWRGaW5pc2hlZChib29sKSkpOworCisgICAgUGx1Z2lu
UGFnZSogbmV3UGFnZSA9IG5ldyBQbHVnaW5QYWdlKCZ3ZWJWaWV3KTsKKyAgICB3ZWJWaWV3LnNl
dFBhZ2UobmV3UGFnZSk7CisKKyAgICAvLyB0eXBlIGhhcyB0byBiZSBhcHBsaWNhdGlvbi94LXF0
LXBsdWdpbgorICAgIHdlYlZpZXcuc2V0SHRtbChRU3RyaW5nKCI8aHRtbD48Ym9keT48b2JqZWN0
IHR5cGU9J2FwcGxpY2F0aW9uL3gtZm9vYmFyYmF6JyBjbGFzc2lkPSdncmFwaGljc3dpZGdldCcg
aWQ9J215Z3JhcGhpY3N3aWRnZXQnLz48L2JvZHk+PC9odG1sPiIpKTsKKyAgICBRVFJZX0NPTVBB
UkUobG9hZFNweS5jb3VudCgpLCAxKTsKKyAgICBRQ09NUEFSRShuZXdQYWdlLT5jYWxscy5jb3Vu
dCgpLCAwKTsKKworICAgIHdlYlZpZXcuc2V0SHRtbChRU3RyaW5nKCI8aHRtbD48Ym9keT48b2Jq
ZWN0IHR5cGU9J2FwcGxpY2F0aW9uL3gtcXQtcGx1Z2luJyBjbGFzc2lkPSdncmFwaGljc3dpZGdl
dCcgaWQ9J215Z3JhcGhpY3N3aWRnZXQnLz48L2JvZHk+PC9odG1sPiIpKTsKKyAgICBRVFJZX0NP
TVBBUkUobG9hZFNweS5jb3VudCgpLCAyKTsKKyAgICBRQ09NUEFSRShuZXdQYWdlLT5jYWxscy5j
b3VudCgpLCAxKTsKKyAgICB7CisgICAgICAgIFBsdWdpblBhZ2U6OkNhbGxJbmZvIGNpID0gbmV3
UGFnZS0+Y2FsbHMudGFrZUZpcnN0KCk7CisgICAgICAgIFFDT01QQVJFKGNpLmNsYXNzaWQsIFFT
dHJpbmc6OmZyb21MYXRpbjEoImdyYXBoaWNzd2lkZ2V0IikpOworICAgICAgICBRQ09NUEFSRShj
aS51cmwsIFFVcmwoKSk7CisgICAgICAgIFFDT01QQVJFKGNpLnBhcmFtTmFtZXMuY291bnQoKSwg
Myk7CisgICAgICAgIFFDT01QQVJFKGNpLnBhcmFtVmFsdWVzLmNvdW50KCksIDMpOworICAgICAg
ICBRQ09NUEFSRShjaS5wYXJhbU5hbWVzLmF0KDApLCBRU3RyaW5nOjpmcm9tTGF0aW4xKCJ0eXBl
IikpOworICAgICAgICBRQ09NUEFSRShjaS5wYXJhbVZhbHVlcy5hdCgwKSwgUVN0cmluZzo6ZnJv
bUxhdGluMSgiYXBwbGljYXRpb24veC1xdC1wbHVnaW4iKSk7CisgICAgICAgIFFDT01QQVJFKGNp
LnBhcmFtTmFtZXMuYXQoMSksIFFTdHJpbmc6OmZyb21MYXRpbjEoImNsYXNzaWQiKSk7CisgICAg
ICAgIFFDT01QQVJFKGNpLnBhcmFtVmFsdWVzLmF0KDEpLCBRU3RyaW5nOjpmcm9tTGF0aW4xKCJn
cmFwaGljc3dpZGdldCIpKTsKKyAgICAgICAgUUNPTVBBUkUoY2kucGFyYW1OYW1lcy5hdCgyKSwg
UVN0cmluZzo6ZnJvbUxhdGluMSgiaWQiKSk7CisgICAgICAgIFFDT01QQVJFKGNpLnBhcmFtVmFs
dWVzLmF0KDIpLCBRU3RyaW5nOjpmcm9tTGF0aW4xKCJteWdyYXBoaWNzd2lkZ2V0IikpOworICAg
ICAgICBRVkVSSUZZKGNpLnJldHVyblZhbHVlKTsKKyAgICAgICAgUVZFUklGWShjaS5yZXR1cm5W
YWx1ZS0+aW5oZXJpdHMoIlFHcmFwaGljc1dpZGdldCIpKTsKKyAgICB9CisgICAgLy8gdGVzdCBK
UyBiaW5kaW5ncworICAgIFFDT01QQVJFKG5ld1BhZ2UtPm1haW5GcmFtZSgpLT5ldmFsdWF0ZUph
dmFTY3JpcHQoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdteWdyYXBoaWNzd2lkZ2V0JykudG9T
dHJpbmcoKSIpLnRvU3RyaW5nKCksCisgICAgICAgICAgICAgUVN0cmluZzo6ZnJvbUxhdGluMSgi
W29iamVjdCBIVE1MT2JqZWN0RWxlbWVudF0iKSk7CisgICAgUUNPTVBBUkUobmV3UGFnZS0+bWFp
bkZyYW1lKCktPmV2YWx1YXRlSmF2YVNjcmlwdCgibXlncmFwaGljc3dpZGdldC50b1N0cmluZygp
IikudG9TdHJpbmcoKSwKKyAgICAgICAgICAgICBRU3RyaW5nOjpmcm9tTGF0aW4xKCJbb2JqZWN0
IEhUTUxPYmplY3RFbGVtZW50XSIpKTsKKyAgICBRQ09NUEFSRShuZXdQYWdlLT5tYWluRnJhbWUo
KS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJ0eXBlb2YgbXlncmFwaGljc3dpZGdldC5vYmplY3ROYW1l
IikudG9TdHJpbmcoKSwKKyAgICAgICAgICAgICBRU3RyaW5nOjpmcm9tTGF0aW4xKCJzdHJpbmci
KSk7CisgICAgUUNPTVBBUkUobmV3UGFnZS0+bWFpbkZyYW1lKCktPmV2YWx1YXRlSmF2YVNjcmlw
dCgibXlncmFwaGljc3dpZGdldC5vYmplY3ROYW1lIikudG9TdHJpbmcoKSwKKyAgICAgICAgICAg
ICBRU3RyaW5nOjpmcm9tTGF0aW4xKCJncmFwaGljc3dpZGdldCIpKTsKKyAgICBRQ09NUEFSRShu
ZXdQYWdlLT5tYWluRnJhbWUoKS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJ0eXBlb2YgbXlncmFwaGlj
c3dpZGdldC5nZW9tZXRyeUNoYW5nZWQiKS50b1N0cmluZygpLAorICAgICAgICAgICAgIFFTdHJp
bmc6OmZyb21MYXRpbjEoImZ1bmN0aW9uIikpOworICAgIFFDT01QQVJFKG5ld1BhZ2UtPm1haW5G
cmFtZSgpLT5ldmFsdWF0ZUphdmFTY3JpcHQoIm15Z3JhcGhpY3N3aWRnZXQuZ2VvbWV0cnlDaGFu
Z2VkLnRvU3RyaW5nKCkiKS50b1N0cmluZygpLAorICAgICAgICAgICAgIFFTdHJpbmc6OmZyb21M
YXRpbjEoImZ1bmN0aW9uIGdlb21ldHJ5Q2hhbmdlZCgpIHtcbiAgICBbbmF0aXZlIGNvZGVdXG59
IikpOworfQorCiB2b2lkIHRzdF9RV2ViUGFnZTo6Y3JlYXRlUGx1Z2luV2l0aFBsdWdpbnNFbmFi
bGVkKCkKIHsKICAgICBtX3ZpZXctPnNldHRpbmdzKCktPnNldEF0dHJpYnV0ZShRV2ViU2V0dGlu
Z3M6OlBsdWdpbnNFbmFibGVkLCB0cnVlKTsK
</data>
<flag name="review"
          id="68941"
          type_id="1"
          status="+"
          setter="kling"
    />
    <flag name="commit-queue"
          id="69002"
          type_id="3"
          status="-"
          setter="kling"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>77819</attachid>
            <date>2011-01-03 10:23:17 -0800</date>
            <delta_ts>2011-01-03 11:02:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>8695</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDc5ZDliZS4uN2FlZTJmNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMS0wMS0wMSAgTm9hbSBSb3NlbnRo
YWwgIDxub2FtLnJvc2VudGhhbEBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5k
cmVhcyBLbGluZy4KKworICAgICAgICBbUXRdIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKC4uLikg
ZG9lc24ndCByZXR1cm4gdGhlIHJpZ2h0IG9iamVjdCBpbiBjb21iaW5hdGlvbiB3aXRoIFFHcmFw
aGljc1dpZGdldAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTE0NjQKKworICAgICAgICBBZGRlZCBhIHdheSB0byBiaW5kIGFueSBRT2JqZWN0IGNyZWF0
ZWQgYXMgYSBwbHVnaW4gdG8gSmF2YVNjcmlwdCwgCisgICAgICAgIGJ5IGFkZGluZyBhIGN1c3Rv
bSBtZW1iZXIgKHF0T2JqZWN0KSB0byBXZWJDb3JlOjpXaWRnZXQuIAorICAgICAgICBBZGRlZCBh
IHRlc3QgdG8gdHN0X3F3ZWJwYWdlIHRvIG1ha2Ugc3VyZSBwbHVnaW5zIGNyZWF0ZWQgCisgICAg
ICAgIGFzIFFHcmFwaGljc1dpZGdldCBhcmUgYWNjZXNzaWJsZSB0aHJvdWdoIEphdmFTY3JpcHQu
CisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyUXQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6Y3JlYXRlU2NyaXB0SW5zdGFuY2VGb3JXaWRn
ZXQpOgorICAgICAgICAqIHBsYXRmb3JtL1dpZGdldC5oOgorICAgICAgICAqIHBsYXRmb3JtL3F0
L1dpZGdldFF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldpZGdldDo6V2lkZ2V0KToKKyAgICAg
ICAgKFdlYkNvcmU6OldpZGdldDo6c2V0QmluZGluZ09iamVjdCk6CisgICAgICAgIChXZWJDb3Jl
OjpXaWRnZXQ6OmJpbmRpbmdPYmplY3QpOgorCiAyMDEwLTEyLTMxICBEYXJpbiBBZGxlciAgPGRh
cmluQGFwcGxlLmNvbT4KIAogICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajogQWRkZWQgYmFjayB0aGUgbGFuZ3VhZ2UuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1NjcmlwdENvbnRyb2xsZXJRdC5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2pzL1Njcmlw
dENvbnRyb2xsZXJRdC5jcHAKaW5kZXggNTVkNGJhNC4uZWU3Y2VmZiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyUXQuY3BwCisrKyBiL1dlYkNvcmUvYmlu
ZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlclF0LmNwcApAQCAtNTMsMTAgKzUzLDE1IEBAIFBhc3NS
ZWZQdHI8SlNDOjpCaW5kaW5nczo6SW5zdGFuY2U+IFNjcmlwdENvbnRyb2xsZXI6OmNyZWF0ZVNj
cmlwdEluc3RhbmNlRm9yV2lkCiAgICAgICAgIHJldHVybiBwbHVnaW5WaWV3LT5iaW5kaW5nSW5z
dGFuY2UoKTsKICAgICB9CiAKLSAgICBRV2lkZ2V0KiBwbGF0Zm9ybVdpZGdldCA9IHdpZGdldC0+
cGxhdGZvcm1XaWRnZXQoKTsKLSAgICBpZiAoIXBsYXRmb3JtV2lkZ2V0KQorICAgIFFPYmplY3Qq
IG9iamVjdCA9IHdpZGdldC0+YmluZGluZ09iamVjdCgpOworCisgICAgaWYgKCFvYmplY3QpCisg
ICAgICAgIG9iamVjdCA9IHdpZGdldC0+cGxhdGZvcm1XaWRnZXQoKTsKKworICAgIGlmICghb2Jq
ZWN0KQogICAgICAgICByZXR1cm4gMDsKLSAgICByZXR1cm4gSlNDOjpCaW5kaW5nczo6UXRJbnN0
YW5jZTo6Z2V0UXRJbnN0YW5jZShwbGF0Zm9ybVdpZGdldCwgYmluZGluZ1Jvb3RPYmplY3QoKSwg
UVNjcmlwdEVuZ2luZTo6UXRPd25lcnNoaXApOworCisgICAgcmV0dXJuIEpTQzo6QmluZGluZ3M6
OlF0SW5zdGFuY2U6OmdldFF0SW5zdGFuY2Uob2JqZWN0LCBiaW5kaW5nUm9vdE9iamVjdCgpLCBR
U2NyaXB0RW5naW5lOjpRdE93bmVyc2hpcCk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUv
cGxhdGZvcm0vV2lkZ2V0LmggYi9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oCmluZGV4IGM2YzFk
OWEuLmIxODMzMGIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKKysrIGIv
V2ViQ29yZS9wbGF0Zm9ybS9XaWRnZXQuaApAQCAtNDEsNiArNDEsNyBAQAogCiAjaWYgUExBVEZP
Uk0oUVQpCiAjaW5jbHVkZSA8cWdsb2JhbC5oPgorI2luY2x1ZGUgPFFXZWFrUG9pbnRlcj4KICNl
bmRpZgogCiAjaWYgUExBVEZPUk0oTUFDKQpAQCAtMjM0LDYgKzIzNSwxMSBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCBib29sIGlzUGx1Z2luQ29udGFpbmVyKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7
IH0KICNlbmRpZgogCisjaWYgUExBVEZPUk0oUVQpCisgICAgUU9iamVjdCogYmluZGluZ09iamVj
dCgpIGNvbnN0OworICAgIHZvaWQgc2V0QmluZGluZ09iamVjdChRT2JqZWN0Kik7CisjZW5kaWYK
KwogICAgIC8vIFZpcnR1YWwgbWV0aG9kcyB0byBjb252ZXJ0IHBvaW50cyB0by9mcm9tIHRoZSBj
b250YWluaW5nIFNjcm9sbFZpZXcKICAgICB2aXJ0dWFsIEludFJlY3QgY29udmVydFRvQ29udGFp
bmluZ1ZpZXcoY29uc3QgSW50UmVjdCYpIGNvbnN0OwogICAgIHZpcnR1YWwgSW50UmVjdCBjb252
ZXJ0RnJvbUNvbnRhaW5pbmdWaWV3KGNvbnN0IEludFJlY3QmKSBjb25zdDsKQEAgLTI3OCw2ICsy
ODQsMTAgQEAgcHJpdmF0ZToKICAgICBXaWRnZXRQcml2YXRlKiBtX2RhdGE7CiAjZW5kaWYKIAor
I2lmIFBMQVRGT1JNKFFUKQorICAgIFFXZWFrUG9pbnRlcjxRT2JqZWN0PiBtX2JpbmRpbmdPYmpl
Y3Q7CisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKEhBSUtVKQogICAgIFBsYXRmb3JtV2lkZ2V0IG1f
dG9wTGV2ZWxQbGF0Zm9ybVdpZGdldDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0
Zm9ybS9xdC9XaWRnZXRRdC5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL3F0L1dpZGdldFF0LmNwcApp
bmRleCBlNjRkNjU1Li41MjE1ZTY2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL3F0L1dp
ZGdldFF0LmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL3F0L1dpZGdldFF0LmNwcApAQCAtMTEw
LDYgKzExMCwxNiBAQCB2b2lkIFdpZGdldDo6c2V0SXNTZWxlY3RlZChib29sKQogICAgIG5vdElt
cGxlbWVudGVkKCk7CiB9CiAKK3ZvaWQgV2lkZ2V0OjpzZXRCaW5kaW5nT2JqZWN0KFFPYmplY3Qq
IG9iamVjdCkKK3sKKyAgICBtX2JpbmRpbmdPYmplY3QgPSBvYmplY3Q7Cit9CisKK1FPYmplY3Qq
IFdpZGdldDo6YmluZGluZ09iamVjdCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fYmluZGluZ09i
amVjdC5kYXRhKCk7Cit9CisKIH0KIAogLy8gdmltOiB0cz00IHN3PTQgZXQKZGlmZiAtLWdpdCBh
L1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGFiNzhlMGMu
LjUzNDc1NmUgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3F0
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDExLTAxLTAxICBOb2FtIFJvc2VudGhhbCAg
PG5vYW0ucm9zZW50aGFsQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBBbmRyZWFz
IEtsaW5nLgorCisgICAgICAgIFtRdF0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoLi4uKSBkb2Vz
bid0IHJldHVybiB0aGUgcmlnaHQgb2JqZWN0IGluIGNvbWJpbmF0aW9uIHdpdGggUUdyYXBoaWNz
V2lkZ2V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MTQ2NAorCisgICAgICAgIEFkZGVkIGEgd2F5IHRvIGJpbmQgYW55IFFPYmplY3QgY3JlYXRlZCBh
cyBhIHBsdWdpbiB0byBKYXZhU2NyaXB0LCAKKyAgICAgICAgYnkgYWRkaW5nIGEgY3VzdG9tIG1l
bWJlIHRvIFdlYkNvcmU6OldpZGdldC4gCisgICAgICAgIEFkZGVkIGEgdGVzdCB0byBtYWtlIHN1
cmUgcGx1Z2lucyBjcmVhdGVkIGFzIFFHcmFwaGljc1dpZGdldCBhcmUgCisgICAgICAgIGFjY2Vz
c2libGUgdGhyb3VnaCBKYXZhU2NyaXB0LgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRnJh
bWVMb2FkZXJDbGllbnRRdC5jcHA6CisgICAgICAgICogdGVzdHMvcXdlYnBhZ2UvdHN0X3F3ZWJw
YWdlLmNwcDoKKyAgICAgICAgKFBsdWdpblBhZ2U6OmNyZWF0ZVBsdWdpbik6CisgICAgICAgICh0
c3RfUVdlYlBhZ2U6OmdyYXBoaWNzV2lkZ2V0UGx1Z2luKToKKwogMjAxMC0xMi0yOSAgS2VudCBI
YW5zZW4gIDxrZW50LmhhbnNlbkBub2tpYS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2lt
b24gSGF1c21hbm4uCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVM
b2FkZXJDbGllbnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJD
bGllbnRRdC5jcHAKaW5kZXggZmJmM2U4OS4uZTgzZDVlZiAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwCisrKyBiL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcApAQCAtMTQ0NSw3ICsxNDQ1LDEy
IEBAIHB1YmxpYzoKICAgICAgICAgICAgIGdyYXBoaWNzV2lkZ2V0LT5oaWRlKCk7CiAgICAgfQog
cHJpdmF0ZToKLSAgICBRdFBsdWdpbkdyYXBoaWNzV2lkZ2V0KFFHcmFwaGljc1dpZGdldCogdyA9
IDApOiBXaWRnZXQoMCksIGdyYXBoaWNzV2lkZ2V0KHcpIHt9CisgICAgUXRQbHVnaW5HcmFwaGlj
c1dpZGdldChRR3JhcGhpY3NXaWRnZXQqIHcgPSAwKQorICAgICAgICA6IFdpZGdldCgwKQorICAg
ICAgICAsIGdyYXBoaWNzV2lkZ2V0KHcpCisgICAgeworICAgICAgICBzZXRCaW5kaW5nT2JqZWN0
KGdyYXBoaWNzV2lkZ2V0KTsKKyAgICB9CiAKICAgICBRR3JhcGhpY3NXaWRnZXQqIGdyYXBoaWNz
V2lkZ2V0OwogfTsKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC90ZXN0cy9xd2VicGFnZS90c3RfcXdl
YnBhZ2UuY3BwIGIvV2ViS2l0L3F0L3Rlc3RzL3F3ZWJwYWdlL3RzdF9xd2VicGFnZS5jcHAKaW5k
ZXggMmM0YjM4OS4uNmNmNWI0OSAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L3Rlc3RzL3F3ZWJwYWdl
L3RzdF9xd2VicGFnZS5jcHAKKysrIGIvV2ViS2l0L3F0L3Rlc3RzL3F3ZWJwYWdlL3RzdF9xd2Vi
cGFnZS5jcHAKQEAgLTkxLDYgKzkxLDcgQEAgcHJpdmF0ZSBzbG90czoKICAgICB2b2lkIGRlc3Ry
b3lQbHVnaW4oKTsKICAgICB2b2lkIGNyZWF0ZVZpZXdsZXNzUGx1Z2luX2RhdGEoKTsKICAgICB2
b2lkIGNyZWF0ZVZpZXdsZXNzUGx1Z2luKCk7CisgICAgdm9pZCBncmFwaGljc1dpZGdldFBsdWdp
bigpOwogICAgIHZvaWQgbXVsdGlwbGVQYWdlR3JvdXBzQW5kTG9jYWxTdG9yYWdlKCk7CiAgICAg
dm9pZCBjdXJzb3JNb3ZlbWVudHMoKTsKICAgICB2b2lkIHRleHRTZWxlY3Rpb24oKTsKQEAgLTU4
OCw2ICs1ODksOCBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgICAgICByZXN1bHQgPSBuZXcgUVB1c2hC
dXR0b24oKTsKICAgICAgICAgZWxzZSBpZiAoY2xhc3NpZCA9PSAibGluZWVkaXQiKQogICAgICAg
ICAgICAgcmVzdWx0ID0gbmV3IFFMaW5lRWRpdCgpOworICAgICAgICBlbHNlIGlmIChjbGFzc2lk
ID09ICJncmFwaGljc3dpZGdldCIpCisgICAgICAgICAgICByZXN1bHQgPSBuZXcgUUdyYXBoaWNz
V2lkZ2V0KCk7CiAgICAgICAgIGlmIChyZXN1bHQpCiAgICAgICAgICAgICByZXN1bHQtPnNldE9i
amVjdE5hbWUoY2xhc3NpZCk7CiAgICAgICAgIGNhbGxzLmFwcGVuZChDYWxsSW5mbyhjbGFzc2lk
LCB1cmwsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzLCByZXN1bHQpKTsKQEAgLTY3Nyw2ICs2ODAs
NTQgQEAgc3RhdGljIHZvaWQgY3JlYXRlUGx1Z2luKFFXZWJWaWV3ICp2aWV3KQogICAgIH0KIH0K
IAordm9pZCB0c3RfUVdlYlBhZ2U6OmdyYXBoaWNzV2lkZ2V0UGx1Z2luKCkKK3sKKyAgICBtX3Zp
ZXctPnNldHRpbmdzKCktPnNldEF0dHJpYnV0ZShRV2ViU2V0dGluZ3M6OlBsdWdpbnNFbmFibGVk
LCB0cnVlKTsKKyAgICBRR3JhcGhpY3NXZWJWaWV3IHdlYlZpZXc7CisKKyAgICBRU2lnbmFsU3B5
IGxvYWRTcHkoJndlYlZpZXcsIFNJR05BTChsb2FkRmluaXNoZWQoYm9vbCkpKTsKKworICAgIFBs
dWdpblBhZ2UqIG5ld1BhZ2UgPSBuZXcgUGx1Z2luUGFnZSgmd2ViVmlldyk7CisgICAgd2ViVmll
dy5zZXRQYWdlKG5ld1BhZ2UpOworCisgICAgLy8gdHlwZSBoYXMgdG8gYmUgYXBwbGljYXRpb24v
eC1xdC1wbHVnaW4KKyAgICB3ZWJWaWV3LnNldEh0bWwoUVN0cmluZygiPGh0bWw+PGJvZHk+PG9i
amVjdCB0eXBlPSdhcHBsaWNhdGlvbi94LWZvb2JhcmJheicgY2xhc3NpZD0nZ3JhcGhpY3N3aWRn
ZXQnIGlkPSdteWdyYXBoaWNzd2lkZ2V0Jy8+PC9ib2R5PjwvaHRtbD4iKSk7CisgICAgUVRSWV9D
T01QQVJFKGxvYWRTcHkuY291bnQoKSwgMSk7CisgICAgUUNPTVBBUkUobmV3UGFnZS0+Y2FsbHMu
Y291bnQoKSwgMCk7CisKKyAgICB3ZWJWaWV3LnNldEh0bWwoUVN0cmluZygiPGh0bWw+PGJvZHk+
PG9iamVjdCB0eXBlPSdhcHBsaWNhdGlvbi94LXF0LXBsdWdpbicgY2xhc3NpZD0nZ3JhcGhpY3N3
aWRnZXQnIGlkPSdteWdyYXBoaWNzd2lkZ2V0Jy8+PC9ib2R5PjwvaHRtbD4iKSk7CisgICAgUVRS
WV9DT01QQVJFKGxvYWRTcHkuY291bnQoKSwgMik7CisgICAgUUNPTVBBUkUobmV3UGFnZS0+Y2Fs
bHMuY291bnQoKSwgMSk7CisgICAgeworICAgICAgICBQbHVnaW5QYWdlOjpDYWxsSW5mbyBjaSA9
IG5ld1BhZ2UtPmNhbGxzLnRha2VGaXJzdCgpOworICAgICAgICBRQ09NUEFSRShjaS5jbGFzc2lk
LCBRU3RyaW5nOjpmcm9tTGF0aW4xKCJncmFwaGljc3dpZGdldCIpKTsKKyAgICAgICAgUUNPTVBB
UkUoY2kudXJsLCBRVXJsKCkpOworICAgICAgICBRQ09NUEFSRShjaS5wYXJhbU5hbWVzLmNvdW50
KCksIDMpOworICAgICAgICBRQ09NUEFSRShjaS5wYXJhbVZhbHVlcy5jb3VudCgpLCAzKTsKKyAg
ICAgICAgUUNPTVBBUkUoY2kucGFyYW1OYW1lcy5hdCgwKSwgUVN0cmluZzo6ZnJvbUxhdGluMSgi
dHlwZSIpKTsKKyAgICAgICAgUUNPTVBBUkUoY2kucGFyYW1WYWx1ZXMuYXQoMCksIFFTdHJpbmc6
OmZyb21MYXRpbjEoImFwcGxpY2F0aW9uL3gtcXQtcGx1Z2luIikpOworICAgICAgICBRQ09NUEFS
RShjaS5wYXJhbU5hbWVzLmF0KDEpLCBRU3RyaW5nOjpmcm9tTGF0aW4xKCJjbGFzc2lkIikpOwor
ICAgICAgICBRQ09NUEFSRShjaS5wYXJhbVZhbHVlcy5hdCgxKSwgUVN0cmluZzo6ZnJvbUxhdGlu
MSgiZ3JhcGhpY3N3aWRnZXQiKSk7CisgICAgICAgIFFDT01QQVJFKGNpLnBhcmFtTmFtZXMuYXQo
MiksIFFTdHJpbmc6OmZyb21MYXRpbjEoImlkIikpOworICAgICAgICBRQ09NUEFSRShjaS5wYXJh
bVZhbHVlcy5hdCgyKSwgUVN0cmluZzo6ZnJvbUxhdGluMSgibXlncmFwaGljc3dpZGdldCIpKTsK
KyAgICAgICAgUVZFUklGWShjaS5yZXR1cm5WYWx1ZSk7CisgICAgICAgIFFWRVJJRlkoY2kucmV0
dXJuVmFsdWUtPmluaGVyaXRzKCJRR3JhcGhpY3NXaWRnZXQiKSk7CisgICAgfQorICAgIC8vIHRl
c3QgSlMgYmluZGluZ3MKKyAgICBRQ09NUEFSRShuZXdQYWdlLT5tYWluRnJhbWUoKS0+ZXZhbHVh
dGVKYXZhU2NyaXB0KCJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlncmFwaGljc3dpZGdldCcp
LnRvU3RyaW5nKCkiKS50b1N0cmluZygpLAorICAgICAgICAgICAgIFFTdHJpbmc6OmZyb21MYXRp
bjEoIltvYmplY3QgSFRNTE9iamVjdEVsZW1lbnRdIikpOworICAgIFFDT01QQVJFKG5ld1BhZ2Ut
Pm1haW5GcmFtZSgpLT5ldmFsdWF0ZUphdmFTY3JpcHQoIm15Z3JhcGhpY3N3aWRnZXQudG9TdHJp
bmcoKSIpLnRvU3RyaW5nKCksCisgICAgICAgICAgICAgUVN0cmluZzo6ZnJvbUxhdGluMSgiW29i
amVjdCBIVE1MT2JqZWN0RWxlbWVudF0iKSk7CisgICAgUUNPTVBBUkUobmV3UGFnZS0+bWFpbkZy
YW1lKCktPmV2YWx1YXRlSmF2YVNjcmlwdCgidHlwZW9mIG15Z3JhcGhpY3N3aWRnZXQub2JqZWN0
TmFtZSIpLnRvU3RyaW5nKCksCisgICAgICAgICAgICAgUVN0cmluZzo6ZnJvbUxhdGluMSgic3Ry
aW5nIikpOworICAgIFFDT01QQVJFKG5ld1BhZ2UtPm1haW5GcmFtZSgpLT5ldmFsdWF0ZUphdmFT
Y3JpcHQoIm15Z3JhcGhpY3N3aWRnZXQub2JqZWN0TmFtZSIpLnRvU3RyaW5nKCksCisgICAgICAg
ICAgICAgUVN0cmluZzo6ZnJvbUxhdGluMSgiZ3JhcGhpY3N3aWRnZXQiKSk7CisgICAgUUNPTVBB
UkUobmV3UGFnZS0+bWFpbkZyYW1lKCktPmV2YWx1YXRlSmF2YVNjcmlwdCgidHlwZW9mIG15Z3Jh
cGhpY3N3aWRnZXQuZ2VvbWV0cnlDaGFuZ2VkIikudG9TdHJpbmcoKSwKKyAgICAgICAgICAgICBR
U3RyaW5nOjpmcm9tTGF0aW4xKCJmdW5jdGlvbiIpKTsKKyAgICBRQ09NUEFSRShuZXdQYWdlLT5t
YWluRnJhbWUoKS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJteWdyYXBoaWNzd2lkZ2V0Lmdlb21ldHJ5
Q2hhbmdlZC50b1N0cmluZygpIikudG9TdHJpbmcoKSwKKyAgICAgICAgICAgICBRU3RyaW5nOjpm
cm9tTGF0aW4xKCJmdW5jdGlvbiBnZW9tZXRyeUNoYW5nZWQoKSB7XG4gICAgW25hdGl2ZSBjb2Rl
XVxufSIpKTsKK30KKwogdm9pZCB0c3RfUVdlYlBhZ2U6OmNyZWF0ZVBsdWdpbldpdGhQbHVnaW5z
RW5hYmxlZCgpCiB7CiAgICAgbV92aWV3LT5zZXR0aW5ncygpLT5zZXRBdHRyaWJ1dGUoUVdlYlNl
dHRpbmdzOjpQbHVnaW5zRW5hYmxlZCwgdHJ1ZSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>