<?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>65944</bug_id>
          
          <creation_ts>2011-08-09 14:35:53 -0700</creation_ts>
          <short_desc>Crash in QuotesData::operator== when compiled with RVCT</short_desc>
          <delta_ts>2016-08-24 16:09:17 -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>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="Yong Li">yong.li.webkit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>dglazkov</cc>
    
    <cc>gustavo</cc>
    
    <cc>jbedard</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>448816</commentid>
    <comment_count>0</comment_count>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2011-08-09 14:35:53 -0700</bug_when>
    <thetext>&quot;if (!this || !&amp;other)&quot; in QuotesData::operator==() doesn&apos;t generate expected code when being compiled with RVCT. This can cause crashes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448829</commentid>
    <comment_count>1</comment_count>
      <attachid>103403</attachid>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2011-08-09 14:56:39 -0700</bug_when>
    <thetext>Created attachment 103403
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448830</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-09 14:58:36 -0700</bug_when>
    <thetext>Attachment 103403 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebCore/rendering/style/QuotesData.h:37:  The parameter name &quot;a&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448832</commentid>
    <comment_count>3</comment_count>
      <attachid>103403</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2011-08-09 15:02:16 -0700</bug_when>
    <thetext>Comment on attachment 103403
the patch

Attachment 103403 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/9340314</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448833</commentid>
    <comment_count>4</comment_count>
      <attachid>103403</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-09 15:02:18 -0700</bug_when>
    <thetext>Comment on attachment 103403
the patch

Attachment 103403 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/9338347</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448838</commentid>
    <comment_count>5</comment_count>
      <attachid>103403</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-09 15:12:08 -0700</bug_when>
    <thetext>Comment on attachment 103403
the patch

Attachment 103403 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/9332544</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448841</commentid>
    <comment_count>6</comment_count>
      <attachid>103403</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2011-08-09 15:13:02 -0700</bug_when>
    <thetext>Comment on attachment 103403
the patch

Attachment 103403 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/9340320</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448847</commentid>
    <comment_count>7</comment_count>
      <attachid>103403</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-09 15:24:46 -0700</bug_when>
    <thetext>Comment on attachment 103403
the patch

Attachment 103403 did not pass cr-mac-ews (chromium):
Output: http://queues.webkit.org/results/9338352</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448875</commentid>
    <comment_count>8</comment_count>
      <attachid>103403</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-08-09 16:19:09 -0700</bug_when>
    <thetext>Comment on attachment 103403
the patch

Attachment 103403 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/9337415</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449128</commentid>
    <comment_count>9</comment_count>
      <attachid>103484</attachid>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2011-08-10 07:10:20 -0700</bug_when>
    <thetext>Created attachment 103484
updated</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449129</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-10 07:12:02 -0700</bug_when>
    <thetext>Attachment 103484 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebCore/rendering/style/QuotesData.h:37:  The parameter name &quot;a&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449137</commentid>
    <comment_count>11</comment_count>
      <attachid>103489</attachid>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2011-08-10 07:36:10 -0700</bug_when>
    <thetext>Created attachment 103489
Fix style issue

No more &quot;a&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449139</commentid>
    <comment_count>12</comment_count>
      <attachid>103489</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2011-08-10 07:43:44 -0700</bug_when>
    <thetext>Comment on attachment 103489
Fix style issue

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

&gt; Source/WebCore/rendering/style/QuotesData.h:37
&gt; -    bool operator==(const QuotesData&amp;) const;
&gt;      void operator delete(void* p) { delete[] static_cast&lt;char*&gt;(p); }
&gt; +    static bool equal(const QuotesData*, const QuotesData*);

Should we add a comment about avoiding &quot;==&quot; so no one tries to get it back in?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449151</commentid>
    <comment_count>13</comment_count>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2011-08-10 08:02:24 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 103489 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=103489&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/style/QuotesData.h:37
&gt; &gt; -    bool operator==(const QuotesData&amp;) const;
&gt; &gt;      void operator delete(void* p) { delete[] static_cast&lt;char*&gt;(p); }
&gt; &gt; +    static bool equal(const QuotesData*, const QuotesData*);
&gt; 
&gt; Should we add a comment about avoiding &quot;==&quot; so no one tries to get it back in?

operator== is not a problem. The problem is the old operator== is bad written. It checks &quot;this&quot; pointer and the address of a reference (QuotesData&amp;), and expects to work with null &quot;this&quot; and a reference deferencing a null pointer.

If someone in the future wants to write a normal operator==, and doesn&apos;t use operator== on null pointers, it should be fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449449</commentid>
    <comment_count>14</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-08-10 15:46:05 -0700</bug_when>
    <thetext>&gt; The problem is the old operator== is bad written 

Are you sure that the blame is pointed correctly here? Seems like a bug in this particular compiler to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449749</commentid>
    <comment_count>15</comment_count>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2011-08-11 07:14:47 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; &gt; The problem is the old operator== is bad written 
&gt; 
&gt; Are you sure that the blame is pointed correctly here? Seems like a bug in this particular compiler to me.

This was discussed @ https://bugs.webkit.org/show_bug.cgi?id=36901

from [Daniel Bates]:

By 8.3.2 (5) of the C++ standard &lt;http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3092.pdf&gt;:

A reference shall be initialized to refer to a valid object or function. [ Note: in particular, a null reference cannot exist in a well-defined program, because the only way to create such a reference would be to bind it to the “object” obtained by dereferencing a null pointer, which causes undefined behavior....]

RVCT uses a strict interpretation of the standard (compared to GCC) and assumes a reference must always be initialized with a valid object. Hence it optimizes away !&amp;other.

Another one is &quot;!this&quot;. Although RVCT has a compiler option &quot;--allow_null_this&quot;, we should still avoid writing such code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449895</commentid>
    <comment_count>16</comment_count>
      <attachid>103489</attachid>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2011-08-11 11:22:44 -0700</bug_when>
    <thetext>Comment on attachment 103489
Fix style issue

Thanks Alexey!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449924</commentid>
    <comment_count>17</comment_count>
      <attachid>103489</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-11 12:23:10 -0700</bug_when>
    <thetext>Comment on attachment 103489
Fix style issue

Clearing flags on attachment: 103489

Committed r92871: &lt;http://trac.webkit.org/changeset/92871&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>449925</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-11 12:23:15 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103403</attachid>
            <date>2011-08-09 14:56:39 -0700</date>
            <delta_ts>2011-08-10 06:47:10 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>65944.patch</filename>
            <type>text/plain</type>
            <size>4885</size>
            <attacher name="Yong Li">yong.li.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTM2OGFhLi43NDAzMGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTEtMDgtMDkgIFlvbmcgTGkgIDx5b2xpQHJpbS5jb20+CisKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY1OTQ0CisgICAgICAgIFJlcGxhY2Ug
UXVvdGVzRGF0YTo6b3BlcmF0b3I9PSgpIHdpdGggUXVvdGVzRGF0YTo6ZXF1YWwoY29uc3QgUXVv
dGVzRGF0YSoKKyAgICAgICAgLCBjb25zdCBRdW90ZXNEYXRhKikgYmVjYXVzZSBRdW90ZXNEYXRh
OjpvcGVyYXRvcj09KCkgd2VyZSB1c2luZyBub24tc3RhbmRhcmQKKyAgICAgICAgQysrIGNvZGUg
dGhhdCBpcyBub3Qgc3VwcG9ydGVkIGJ5IGFsbCBjb21waWxlcnMuCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ugc29t
ZSBleGlzdGluZyB0ZXN0IGNhc2VzIGNhbiBzaG93IHRoZSBpc3N1ZSwKKyAgICAgICAgZm9yIGV4
YW1wbGUsIGZhc3QvY3NzL2NvbnRlbnQvY29udGVudC1xdW90ZXMtMDEuaHRtbC4KKworICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJRdW90ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJR
dW90ZTo6c3R5bGVEaWRDaGFuZ2UpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9RdW90ZXNE
YXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlF1b3Rlc0RhdGE6OmVxdWFsKToKKyAgICAgICAg
KiByZW5kZXJpbmcvc3R5bGUvUXVvdGVzRGF0YS5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0UXVv
dGVzKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpvcGVyYXRvcj09
KToKKwogMjAxMS0wNy0yOCAgWW9uZyBMaSAgPHlvbGlAcmltLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJRdW90ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUXVv
dGUuY3BwCmluZGV4IDQ1MjNkZjguLjQ1ZTU5OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJRdW90ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclF1b3RlLmNwcApAQCAtMzIzLDcgKzMyMyw3IEBAIHZvaWQgUmVuZGVyUXVvdGU6OnN0
eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHlsZSogb2xk
U3R5CiB7CiAgICAgY29uc3QgUXVvdGVzRGF0YSogbmV3UXVvdGVzID0gc3R5bGUoKS0+cXVvdGVz
KCk7CiAgICAgY29uc3QgUXVvdGVzRGF0YSogb2xkUXVvdGVzID0gb2xkU3R5bGUgPyBvbGRTdHls
ZS0+cXVvdGVzKCkgOiAwOwotICAgIGlmICghKChuZXdRdW90ZXMgJiYgb2xkUXVvdGVzICYmICgq
bmV3UXVvdGVzID09ICpvbGRRdW90ZXMpKSB8fCAoIW5ld1F1b3RlcyAmJiAhb2xkUXVvdGVzKSkp
CisgICAgaWYgKCFRdW90ZXNEYXRhOjplcXVhbChuZXdRdW90ZXMsIG9sZFF1b3RlcykpCiAgICAg
ICAgIHNldE5lZWRzTGF5b3V0QW5kUHJlZldpZHRoc1JlY2FsYygpOwogICAgIFJlbmRlclRleHQ6
OnN0eWxlRGlkQ2hhbmdlKGRpZmYsIG9sZFN0eWxlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmNwcAppbmRleCA4MjlmZTNmLi44ZTY1MmRlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUXVvdGVzRGF0YS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1F1b3Rlc0RhdGEuY3BwCkBAIC0zNCwx
OCArMzQsMTggQEAgUXVvdGVzRGF0YSogUXVvdGVzRGF0YTo6Y3JlYXRlKGludCBzdHJpbmdDb3Vu
dCkKICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxRdW90ZXNEYXRhKj4odG1wKTsKIH0KIAot
Ym9vbCBRdW90ZXNEYXRhOjpvcGVyYXRvcj09KGNvbnN0IFF1b3Rlc0RhdGEmIG90aGVyKSBjb25z
dAorYm9vbCBRdW90ZXNEYXRhOjplcXVhbChjb25zdCBRdW90ZXNEYXRhKiBhLCBjb25zdCBRdW90
ZXNEYXRhKiBiKQogewotICAgIGlmICh0aGlzID09ICZvdGhlcikKKyAgICBpZiAoYSA9PSBiKQog
ICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBpZiAoISZvdGhlciB8fCAhdGhpcykKKyAgICBpZiAo
IWEgfHwgIWIpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAobGVuZ3RoICE9IG90aGVy
Lmxlbmd0aCkKKyAgICBpZiAoYS0+bGVuZ3RoICE9IGItPmxlbmd0aCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgIGNvbnN0IFN0cmluZyogbXlEYXRhID0gZGF0YSgpOwotICAgIGNvbnN0IFN0
cmluZyogb3RoZXJEYXRhID0gb3RoZXIuZGF0YSgpOwotICAgIGZvciAoaW50IGkgPSBsZW5ndGgt
MTsgaSA+PSAwOyAtLWkpCi0gICAgICAgIGlmIChteURhdGFbaV0gIT0gb3RoZXJEYXRhW2ldKQor
ICAgIGNvbnN0IFN0cmluZyogYURhdGEgPSBhLT5kYXRhKCk7CisgICAgY29uc3QgU3RyaW5nKiBi
RGF0YSA9IGItPmRhdGEoKTsKKyAgICBmb3IgKGludCBpID0gYS0+bGVuZ3RoIC0gMTsgaSA+PSAw
OyAtLWkpCisgICAgICAgIGlmIChhRGF0YVtpXSAhPSBiRGF0YVtpXSkKICAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUXVvdGVzRGF0YS5oCmluZGV4IGRmOGE2ZGQuLjhjMzgzNjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1F1b3Rlc0RhdGEuaApAQCAtMzMsOCArMzMsOCBAQCBw
dWJsaWM6CiAgICAgU3RyaW5nKiBkYXRhKCkgeyByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxTdHJp
bmcqPih0aGlzKzEpOyB9CiAgICAgY29uc3QgU3RyaW5nKiBkYXRhKCkgY29uc3QgeyByZXR1cm4g
cmVpbnRlcnByZXRfY2FzdDxjb25zdCBTdHJpbmcqPih0aGlzKzEpOyB9CiAgICAgaW50IGxlbmd0
aDsKLSAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgUXVvdGVzRGF0YSYpIGNvbnN0OwogICAgIHZv
aWQgb3BlcmF0b3IgZGVsZXRlKHZvaWQqIHApIHsgZGVsZXRlW10gc3RhdGljX2Nhc3Q8Y2hhcio+
KHApOyB9CisgICAgc3RhdGljIGJvb2wgZXF1YWwoY29uc3QgUXVvdGVzRGF0YSogYSwgY29uc3Qg
UXVvdGVzRGF0YSogYik7CiBwcml2YXRlOgogICAgIFF1b3Rlc0RhdGEoaW50IHN0cmluZ0NvdW50
KSA6IGxlbmd0aChzdHJpbmdDb3VudCkge30KIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCBmNGVkM2ZiLi44MDhiYTY4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKQEAgLTYzMCw3
ICs2MzAsNyBAQCB2b2lkIFJlbmRlclN0eWxlOjpzZXRDdXJzb3JMaXN0KFBhc3NSZWZQdHI8Q3Vy
c29yTGlzdD4gb3RoZXIpCiAKIHZvaWQgUmVuZGVyU3R5bGU6OnNldFF1b3RlcyhQYXNzUmVmUHRy
PFF1b3Rlc0RhdGE+IHEpCiB7Ci0gICAgaWYgKCpyYXJlSW5oZXJpdGVkRGF0YS0+cXVvdGVzLmdl
dCgpID09ICpxLmdldCgpKQorICAgIGlmIChRdW90ZXNEYXRhOjplcXVhbChyYXJlSW5oZXJpdGVk
RGF0YS0+cXVvdGVzLmdldCgpLCBxLmdldCgpKSkKICAgICAgICAgcmV0dXJuOwogICAgIHJhcmVJ
bmhlcml0ZWREYXRhLmFjY2VzcygpLT5xdW90ZXMgPSBxOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwCmlu
ZGV4IDExNjA2YjEuLjA2MjFjZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTE0Myw3ICsxNDMs
NyBAQCBib29sIFN0eWxlUmFyZUluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVS
YXJlSW5oZXJpdGVkRGF0YSYgbykgY29uc3QKICAgICAgICAgJiYgaHlwaGVuYXRpb25TdHJpbmcg
PT0gby5oeXBoZW5hdGlvblN0cmluZwogICAgICAgICAmJiBsb2NhbGUgPT0gby5sb2NhbGUKICAg
ICAgICAgJiYgdGV4dEVtcGhhc2lzQ3VzdG9tTWFyayA9PSBvLnRleHRFbXBoYXNpc0N1c3RvbU1h
cmsKLSAgICAgICAgJiYgKnF1b3RlcyA9PSAqby5xdW90ZXMKKyAgICAgICAgJiYgUXVvdGVzRGF0
YTo6ZXF1YWwocXVvdGVzLmdldCgpLCBvLnF1b3Rlcy5nZXQoKSk7CiAgICAgICAgICYmIG1faW1h
Z2VSZW5kZXJpbmcgPT0gby5tX2ltYWdlUmVuZGVyaW5nOwogfQogCg==
</data>
<flag name="review"
          id="99006"
          type_id="1"
          status="-"
          setter="yong.li.webkit"
    />
    <flag name="commit-queue"
          id="99007"
          type_id="3"
          status="-"
          setter="gyuyoung.kim"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103484</attachid>
            <date>2011-08-10 07:10:20 -0700</date>
            <delta_ts>2011-08-10 07:36:10 -0700</delta_ts>
            <desc>updated</desc>
            <filename>65944.patch</filename>
            <type>text/plain</type>
            <size>4884</size>
            <attacher name="Yong Li">yong.li.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTM2OGFhLi43NDAzMGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTEtMDgtMDkgIFlvbmcgTGkgIDx5b2xpQHJpbS5jb20+CisKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY1OTQ0CisgICAgICAgIFJlcGxhY2Ug
UXVvdGVzRGF0YTo6b3BlcmF0b3I9PSgpIHdpdGggUXVvdGVzRGF0YTo6ZXF1YWwoY29uc3QgUXVv
dGVzRGF0YSoKKyAgICAgICAgLCBjb25zdCBRdW90ZXNEYXRhKikgYmVjYXVzZSBRdW90ZXNEYXRh
OjpvcGVyYXRvcj09KCkgd2VyZSB1c2luZyBub24tc3RhbmRhcmQKKyAgICAgICAgQysrIGNvZGUg
dGhhdCBpcyBub3Qgc3VwcG9ydGVkIGJ5IGFsbCBjb21waWxlcnMuCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ugc29t
ZSBleGlzdGluZyB0ZXN0IGNhc2VzIGNhbiBzaG93IHRoZSBpc3N1ZSwKKyAgICAgICAgZm9yIGV4
YW1wbGUsIGZhc3QvY3NzL2NvbnRlbnQvY29udGVudC1xdW90ZXMtMDEuaHRtbC4KKworICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJRdW90ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJR
dW90ZTo6c3R5bGVEaWRDaGFuZ2UpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9RdW90ZXNE
YXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlF1b3Rlc0RhdGE6OmVxdWFsKToKKyAgICAgICAg
KiByZW5kZXJpbmcvc3R5bGUvUXVvdGVzRGF0YS5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0UXVv
dGVzKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpvcGVyYXRvcj09
KToKKwogMjAxMS0wNy0yOCAgWW9uZyBMaSAgPHlvbGlAcmltLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJRdW90ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUXVv
dGUuY3BwCmluZGV4IDQ1MjNkZjguLjQ1ZTU5OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJRdW90ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclF1b3RlLmNwcApAQCAtMzIzLDcgKzMyMyw3IEBAIHZvaWQgUmVuZGVyUXVvdGU6OnN0
eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHlsZSogb2xk
U3R5CiB7CiAgICAgY29uc3QgUXVvdGVzRGF0YSogbmV3UXVvdGVzID0gc3R5bGUoKS0+cXVvdGVz
KCk7CiAgICAgY29uc3QgUXVvdGVzRGF0YSogb2xkUXVvdGVzID0gb2xkU3R5bGUgPyBvbGRTdHls
ZS0+cXVvdGVzKCkgOiAwOwotICAgIGlmICghKChuZXdRdW90ZXMgJiYgb2xkUXVvdGVzICYmICgq
bmV3UXVvdGVzID09ICpvbGRRdW90ZXMpKSB8fCAoIW5ld1F1b3RlcyAmJiAhb2xkUXVvdGVzKSkp
CisgICAgaWYgKCFRdW90ZXNEYXRhOjplcXVhbChuZXdRdW90ZXMsIG9sZFF1b3RlcykpCiAgICAg
ICAgIHNldE5lZWRzTGF5b3V0QW5kUHJlZldpZHRoc1JlY2FsYygpOwogICAgIFJlbmRlclRleHQ6
OnN0eWxlRGlkQ2hhbmdlKGRpZmYsIG9sZFN0eWxlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmNwcAppbmRleCA4MjlmZTNmLi44ZTY1MmRlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUXVvdGVzRGF0YS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1F1b3Rlc0RhdGEuY3BwCkBAIC0zNCwx
OCArMzQsMTggQEAgUXVvdGVzRGF0YSogUXVvdGVzRGF0YTo6Y3JlYXRlKGludCBzdHJpbmdDb3Vu
dCkKICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxRdW90ZXNEYXRhKj4odG1wKTsKIH0KIAot
Ym9vbCBRdW90ZXNEYXRhOjpvcGVyYXRvcj09KGNvbnN0IFF1b3Rlc0RhdGEmIG90aGVyKSBjb25z
dAorYm9vbCBRdW90ZXNEYXRhOjplcXVhbChjb25zdCBRdW90ZXNEYXRhKiBhLCBjb25zdCBRdW90
ZXNEYXRhKiBiKQogewotICAgIGlmICh0aGlzID09ICZvdGhlcikKKyAgICBpZiAoYSA9PSBiKQog
ICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBpZiAoISZvdGhlciB8fCAhdGhpcykKKyAgICBpZiAo
IWEgfHwgIWIpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAobGVuZ3RoICE9IG90aGVy
Lmxlbmd0aCkKKyAgICBpZiAoYS0+bGVuZ3RoICE9IGItPmxlbmd0aCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgIGNvbnN0IFN0cmluZyogbXlEYXRhID0gZGF0YSgpOwotICAgIGNvbnN0IFN0
cmluZyogb3RoZXJEYXRhID0gb3RoZXIuZGF0YSgpOwotICAgIGZvciAoaW50IGkgPSBsZW5ndGgt
MTsgaSA+PSAwOyAtLWkpCi0gICAgICAgIGlmIChteURhdGFbaV0gIT0gb3RoZXJEYXRhW2ldKQor
ICAgIGNvbnN0IFN0cmluZyogYURhdGEgPSBhLT5kYXRhKCk7CisgICAgY29uc3QgU3RyaW5nKiBi
RGF0YSA9IGItPmRhdGEoKTsKKyAgICBmb3IgKGludCBpID0gYS0+bGVuZ3RoIC0gMTsgaSA+PSAw
OyAtLWkpCisgICAgICAgIGlmIChhRGF0YVtpXSAhPSBiRGF0YVtpXSkKICAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUXVvdGVzRGF0YS5oCmluZGV4IGRmOGE2ZGQuLjhjMzgzNjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1F1b3Rlc0RhdGEuaApAQCAtMzMsOCArMzMsOCBAQCBw
dWJsaWM6CiAgICAgU3RyaW5nKiBkYXRhKCkgeyByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxTdHJp
bmcqPih0aGlzKzEpOyB9CiAgICAgY29uc3QgU3RyaW5nKiBkYXRhKCkgY29uc3QgeyByZXR1cm4g
cmVpbnRlcnByZXRfY2FzdDxjb25zdCBTdHJpbmcqPih0aGlzKzEpOyB9CiAgICAgaW50IGxlbmd0
aDsKLSAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgUXVvdGVzRGF0YSYpIGNvbnN0OwogICAgIHZv
aWQgb3BlcmF0b3IgZGVsZXRlKHZvaWQqIHApIHsgZGVsZXRlW10gc3RhdGljX2Nhc3Q8Y2hhcio+
KHApOyB9CisgICAgc3RhdGljIGJvb2wgZXF1YWwoY29uc3QgUXVvdGVzRGF0YSogYSwgY29uc3Qg
UXVvdGVzRGF0YSogYik7CiBwcml2YXRlOgogICAgIFF1b3Rlc0RhdGEoaW50IHN0cmluZ0NvdW50
KSA6IGxlbmd0aChzdHJpbmdDb3VudCkge30KIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCBmNGVkM2ZiLi44MDhiYTY4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKQEAgLTYzMCw3
ICs2MzAsNyBAQCB2b2lkIFJlbmRlclN0eWxlOjpzZXRDdXJzb3JMaXN0KFBhc3NSZWZQdHI8Q3Vy
c29yTGlzdD4gb3RoZXIpCiAKIHZvaWQgUmVuZGVyU3R5bGU6OnNldFF1b3RlcyhQYXNzUmVmUHRy
PFF1b3Rlc0RhdGE+IHEpCiB7Ci0gICAgaWYgKCpyYXJlSW5oZXJpdGVkRGF0YS0+cXVvdGVzLmdl
dCgpID09ICpxLmdldCgpKQorICAgIGlmIChRdW90ZXNEYXRhOjplcXVhbChyYXJlSW5oZXJpdGVk
RGF0YS0+cXVvdGVzLmdldCgpLCBxLmdldCgpKSkKICAgICAgICAgcmV0dXJuOwogICAgIHJhcmVJ
bmhlcml0ZWREYXRhLmFjY2VzcygpLT5xdW90ZXMgPSBxOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwCmlu
ZGV4IDExNjA2YjEuLmZhMDlhODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTE0Myw3ICsxNDMs
NyBAQCBib29sIFN0eWxlUmFyZUluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVS
YXJlSW5oZXJpdGVkRGF0YSYgbykgY29uc3QKICAgICAgICAgJiYgaHlwaGVuYXRpb25TdHJpbmcg
PT0gby5oeXBoZW5hdGlvblN0cmluZwogICAgICAgICAmJiBsb2NhbGUgPT0gby5sb2NhbGUKICAg
ICAgICAgJiYgdGV4dEVtcGhhc2lzQ3VzdG9tTWFyayA9PSBvLnRleHRFbXBoYXNpc0N1c3RvbU1h
cmsKLSAgICAgICAgJiYgKnF1b3RlcyA9PSAqby5xdW90ZXMKKyAgICAgICAgJiYgUXVvdGVzRGF0
YTo6ZXF1YWwocXVvdGVzLmdldCgpLCBvLnF1b3Rlcy5nZXQoKSkKICAgICAgICAgJiYgbV9pbWFn
ZVJlbmRlcmluZyA9PSBvLm1faW1hZ2VSZW5kZXJpbmc7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103489</attachid>
            <date>2011-08-10 07:36:10 -0700</date>
            <delta_ts>2011-08-11 12:23:10 -0700</delta_ts>
            <desc>Fix style issue</desc>
            <filename>65944.patch</filename>
            <type>text/plain</type>
            <size>4990</size>
            <attacher name="Yong Li">yong.li.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmOTM2OGFhLi43NDAzMGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTEtMDgtMDkgIFlvbmcgTGkgIDx5b2xpQHJpbS5jb20+CisKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY1OTQ0CisgICAgICAgIFJlcGxhY2Ug
UXVvdGVzRGF0YTo6b3BlcmF0b3I9PSgpIHdpdGggUXVvdGVzRGF0YTo6ZXF1YWwoY29uc3QgUXVv
dGVzRGF0YSoKKyAgICAgICAgLCBjb25zdCBRdW90ZXNEYXRhKikgYmVjYXVzZSBRdW90ZXNEYXRh
OjpvcGVyYXRvcj09KCkgd2VyZSB1c2luZyBub24tc3RhbmRhcmQKKyAgICAgICAgQysrIGNvZGUg
dGhhdCBpcyBub3Qgc3VwcG9ydGVkIGJ5IGFsbCBjb21waWxlcnMuCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2Ugc29t
ZSBleGlzdGluZyB0ZXN0IGNhc2VzIGNhbiBzaG93IHRoZSBpc3N1ZSwKKyAgICAgICAgZm9yIGV4
YW1wbGUsIGZhc3QvY3NzL2NvbnRlbnQvY29udGVudC1xdW90ZXMtMDEuaHRtbC4KKworICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJRdW90ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJR
dW90ZTo6c3R5bGVEaWRDaGFuZ2UpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9RdW90ZXNE
YXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlF1b3Rlc0RhdGE6OmVxdWFsKToKKyAgICAgICAg
KiByZW5kZXJpbmcvc3R5bGUvUXVvdGVzRGF0YS5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0UXVv
dGVzKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpvcGVyYXRvcj09
KToKKwogMjAxMS0wNy0yOCAgWW9uZyBMaSAgPHlvbGlAcmltLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJRdW90ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUXVv
dGUuY3BwCmluZGV4IDQ1MjNkZjguLjQ1ZTU5OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJRdW90ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclF1b3RlLmNwcApAQCAtMzIzLDcgKzMyMyw3IEBAIHZvaWQgUmVuZGVyUXVvdGU6OnN0
eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHlsZSogb2xk
U3R5CiB7CiAgICAgY29uc3QgUXVvdGVzRGF0YSogbmV3UXVvdGVzID0gc3R5bGUoKS0+cXVvdGVz
KCk7CiAgICAgY29uc3QgUXVvdGVzRGF0YSogb2xkUXVvdGVzID0gb2xkU3R5bGUgPyBvbGRTdHls
ZS0+cXVvdGVzKCkgOiAwOwotICAgIGlmICghKChuZXdRdW90ZXMgJiYgb2xkUXVvdGVzICYmICgq
bmV3UXVvdGVzID09ICpvbGRRdW90ZXMpKSB8fCAoIW5ld1F1b3RlcyAmJiAhb2xkUXVvdGVzKSkp
CisgICAgaWYgKCFRdW90ZXNEYXRhOjplcXVhbChuZXdRdW90ZXMsIG9sZFF1b3RlcykpCiAgICAg
ICAgIHNldE5lZWRzTGF5b3V0QW5kUHJlZldpZHRoc1JlY2FsYygpOwogICAgIFJlbmRlclRleHQ6
OnN0eWxlRGlkQ2hhbmdlKGRpZmYsIG9sZFN0eWxlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9RdW90ZXNEYXRhLmNwcAppbmRleCA4MjlmZTNmLi4wM2EyNTU0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUXVvdGVzRGF0YS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1F1b3Rlc0RhdGEuY3BwCkBAIC0zNCwx
OCArMzQsMTggQEAgUXVvdGVzRGF0YSogUXVvdGVzRGF0YTo6Y3JlYXRlKGludCBzdHJpbmdDb3Vu
dCkKICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxRdW90ZXNEYXRhKj4odG1wKTsKIH0KIAot
Ym9vbCBRdW90ZXNEYXRhOjpvcGVyYXRvcj09KGNvbnN0IFF1b3Rlc0RhdGEmIG90aGVyKSBjb25z
dAorYm9vbCBRdW90ZXNEYXRhOjplcXVhbChjb25zdCBRdW90ZXNEYXRhKiBxdW90ZXNEYXRhMSwg
Y29uc3QgUXVvdGVzRGF0YSogcXVvdGVzRGF0YTIpCiB7Ci0gICAgaWYgKHRoaXMgPT0gJm90aGVy
KQorICAgIGlmIChxdW90ZXNEYXRhMSA9PSBxdW90ZXNEYXRhMikKICAgICAgICAgcmV0dXJuIHRy
dWU7Ci0gICAgaWYgKCEmb3RoZXIgfHwgIXRoaXMpCisgICAgaWYgKCFxdW90ZXNEYXRhMSB8fCAh
cXVvdGVzRGF0YTIpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAobGVuZ3RoICE9IG90
aGVyLmxlbmd0aCkKKyAgICBpZiAocXVvdGVzRGF0YTEtPmxlbmd0aCAhPSBxdW90ZXNEYXRhMi0+
bGVuZ3RoKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgY29uc3QgU3RyaW5nKiBteURhdGEg
PSBkYXRhKCk7Ci0gICAgY29uc3QgU3RyaW5nKiBvdGhlckRhdGEgPSBvdGhlci5kYXRhKCk7Ci0g
ICAgZm9yIChpbnQgaSA9IGxlbmd0aC0xOyBpID49IDA7IC0taSkKLSAgICAgICAgaWYgKG15RGF0
YVtpXSAhPSBvdGhlckRhdGFbaV0pCisgICAgY29uc3QgU3RyaW5nKiBkYXRhMSA9IHF1b3Rlc0Rh
dGExLT5kYXRhKCk7CisgICAgY29uc3QgU3RyaW5nKiBkYXRhMiA9IHF1b3Rlc0RhdGEyLT5kYXRh
KCk7CisgICAgZm9yIChpbnQgaSA9IHF1b3Rlc0RhdGExLT5sZW5ndGggLSAxOyBpID49IDA7IC0t
aSkKKyAgICAgICAgaWYgKGRhdGExW2ldICE9IGRhdGEyW2ldKQogICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1F1b3Rlc0RhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9RdW90ZXNEYXRhLmgKaW5kZXggZGY4YTZkZC4uNTc0NDcwYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1F1b3Rlc0RhdGEuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvUXVvdGVzRGF0YS5oCkBAIC0zMyw4ICszMyw4IEBAIHB1Ymxp
YzoKICAgICBTdHJpbmcqIGRhdGEoKSB7IHJldHVybiByZWludGVycHJldF9jYXN0PFN0cmluZyo+
KHRoaXMrMSk7IH0KICAgICBjb25zdCBTdHJpbmcqIGRhdGEoKSBjb25zdCB7IHJldHVybiByZWlu
dGVycHJldF9jYXN0PGNvbnN0IFN0cmluZyo+KHRoaXMrMSk7IH0KICAgICBpbnQgbGVuZ3RoOwot
ICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBRdW90ZXNEYXRhJikgY29uc3Q7CiAgICAgdm9pZCBv
cGVyYXRvciBkZWxldGUodm9pZCogcCkgeyBkZWxldGVbXSBzdGF0aWNfY2FzdDxjaGFyKj4ocCk7
IH0KKyAgICBzdGF0aWMgYm9vbCBlcXVhbChjb25zdCBRdW90ZXNEYXRhKiwgY29uc3QgUXVvdGVz
RGF0YSopOwogcHJpdmF0ZToKICAgICBRdW90ZXNEYXRhKGludCBzdHJpbmdDb3VudCkgOiBsZW5n
dGgoc3RyaW5nQ291bnQpIHt9CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZS5jcHAKaW5kZXggZjRlZDNmYi4uODA4YmE2OCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC02MzAsNyArNjMwLDcg
QEAgdm9pZCBSZW5kZXJTdHlsZTo6c2V0Q3Vyc29yTGlzdChQYXNzUmVmUHRyPEN1cnNvckxpc3Q+
IG90aGVyKQogCiB2b2lkIFJlbmRlclN0eWxlOjpzZXRRdW90ZXMoUGFzc1JlZlB0cjxRdW90ZXNE
YXRhPiBxKQogewotICAgIGlmICgqcmFyZUluaGVyaXRlZERhdGEtPnF1b3Rlcy5nZXQoKSA9PSAq
cS5nZXQoKSkKKyAgICBpZiAoUXVvdGVzRGF0YTo6ZXF1YWwocmFyZUluaGVyaXRlZERhdGEtPnF1
b3Rlcy5nZXQoKSwgcS5nZXQoKSkpCiAgICAgICAgIHJldHVybjsKICAgICByYXJlSW5oZXJpdGVk
RGF0YS5hY2Nlc3MoKS0+cXVvdGVzID0gcTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcAppbmRleCAxMTYw
NmIxLi5mYTA5YTg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwCkBAIC0xNDMsNyArMTQzLDcgQEAgYm9v
bCBTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpvcGVyYXRvcj09KGNvbnN0IFN0eWxlUmFyZUluaGVy
aXRlZERhdGEmIG8pIGNvbnN0CiAgICAgICAgICYmIGh5cGhlbmF0aW9uU3RyaW5nID09IG8uaHlw
aGVuYXRpb25TdHJpbmcKICAgICAgICAgJiYgbG9jYWxlID09IG8ubG9jYWxlCiAgICAgICAgICYm
IHRleHRFbXBoYXNpc0N1c3RvbU1hcmsgPT0gby50ZXh0RW1waGFzaXNDdXN0b21NYXJrCi0gICAg
ICAgICYmICpxdW90ZXMgPT0gKm8ucXVvdGVzCisgICAgICAgICYmIFF1b3Rlc0RhdGE6OmVxdWFs
KHF1b3Rlcy5nZXQoKSwgby5xdW90ZXMuZ2V0KCkpCiAgICAgICAgICYmIG1faW1hZ2VSZW5kZXJp
bmcgPT0gby5tX2ltYWdlUmVuZGVyaW5nOwogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>