<?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>126525</bug_id>
          
          <creation_ts>2014-01-06 07:28:03 -0800</creation_ts>
          <short_desc>Move function calls outside loop in dom</short_desc>
          <delta_ts>2014-03-03 02:12:22 -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>WebCore JavaScript</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="Laszlo Vidacs">lvidacs.u-szeged</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kangil.han</cc>
    
    <cc>lvidacs.u-szeged</cc>
    
    <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>964625</commentid>
    <comment_count>0</comment_count>
    <who name="Laszlo Vidacs">lvidacs.u-szeged</who>
    <bug_when>2014-01-06 07:28:03 -0800</bug_when>
    <thetext>length() method is called in each iteration in the for loop in dom (DOMImplementation.cpp, ElementData.cpp, EventContext.cpp), similarly to https://bugs.webkit.org/show_bug.cgi?id=125916</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>964627</commentid>
    <comment_count>1</comment_count>
      <attachid>220435</attachid>
    <who name="Laszlo Vidacs">lvidacs.u-szeged</who>
    <bug_when>2014-01-06 07:37:53 -0800</bug_when>
    <thetext>Created attachment 220435
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>964650</commentid>
    <comment_count>2</comment_count>
      <attachid>220435</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-01-06 09:37:38 -0800</bug_when>
    <thetext>Comment on attachment 220435
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        Do not call length() in each iteration.

How did you measure that this improved performance? Could you please post the numbers?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>964952</commentid>
    <comment_count>3</comment_count>
    <who name="Laszlo Vidacs">lvidacs.u-szeged</who>
    <bug_when>2014-01-07 04:04:40 -0800</bug_when>
    <thetext>No measurements performed, just omit some unnecessary method calls. I see a possible problem here only when the length is changed within the loop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>979810</commentid>
    <comment_count>4</comment_count>
      <attachid>223955</attachid>
    <who name="Laszlo Vidacs">lvidacs.u-szeged</who>
    <bug_when>2014-02-12 01:42:30 -0800</bug_when>
    <thetext>Created attachment 223955
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>979811</commentid>
    <comment_count>5</comment_count>
    <who name="Laszlo Vidacs">lvidacs.u-szeged</who>
    <bug_when>2014-02-12 01:43:25 -0800</bug_when>
    <thetext>I ran several DOM performance tests on efl, but from this data I cant draw conclusions about the performance of the patch. In fact, 
at 1 place of the 4 places updated in this patch, the length() method call is meantime moved outside the loop: http://trac.webkit.org/changeset/162394/trunk/Source/WebCore/dom/ElementData.cpp
So the patch is updated to cope with the remaining three places.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>982496</commentid>
    <comment_count>6</comment_count>
      <attachid>223955</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-02-19 12:20:30 -0800</bug_when>
    <thetext>Comment on attachment 223955
Patch

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

&gt; Source/WebCore/dom/ElementData.cpp:146
&gt;          m_attributeVector.uncheckedAppend(other.m_attributeArray[i]);

Honestly this would probably be better as a new C++11 loop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983880</commentid>
    <comment_count>7</comment_count>
      <attachid>225058</attachid>
    <who name="Laszlo Vidacs">lvidacs.u-szeged</who>
    <bug_when>2014-02-24 06:10:57 -0800</bug_when>
    <thetext>Created attachment 225058
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983882</commentid>
    <comment_count>8</comment_count>
    <who name="Laszlo Vidacs">lvidacs.u-szeged</who>
    <bug_when>2014-02-24 06:12:43 -0800</bug_when>
    <thetext>Thanks for the feedback, I tried the following code:
for (const Attribute&amp; i : other.m_attributeArray)
    m_attributeVector.uncheckedAppend(i);
Unfortunately m_attributeArray is defined as a zero size array (ShareableElementData.h: Attribute m_attributeArray[0];), so the range based loop does not iterate through it.

There is a minor change in the patch to use the stored value in reserveCapacity().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>986304</commentid>
    <comment_count>9</comment_count>
      <attachid>225058</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-03 02:12:17 -0800</bug_when>
    <thetext>Comment on attachment 225058
Patch

Clearing flags on attachment: 225058

Committed r164981: &lt;http://trac.webkit.org/changeset/164981&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>986305</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-03 02:12:22 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>220435</attachid>
            <date>2014-01-06 07:37:53 -0800</date>
            <delta_ts>2014-02-12 01:42:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-126525-20140106163740.patch</filename>
            <type>text/plain</type>
            <size>3767</size>
            <attacher name="Laszlo Vidacs">lvidacs.u-szeged</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYxMzM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTFmNmQ2ZTdhZGQ2NjE0
MTdiODE4MTdjMWIzNGQyODFkODQyMGUxMi4uMTZkZWQ4YzYxODdjNjMwNzI3ODZiZDIzNmMxNTUz
MGJkMDM4Y2M1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE0LTAxLTA2ICBMYXN6
bG8gVmlkYWNzICA8bHZpZGFjcy51LXN6ZWdlZEBwYXJ0bmVyLnNhbXN1bmcuY29tPgorCisgICAg
ICAgIE1vdmUgZnVuY3Rpb24gY2FsbHMgb3V0c2lkZSBsb29wIGluIGRvbQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI2NTI1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRG8gbm90IGNhbGwgbGVuZ3RoKCkg
aW4gZWFjaCBpdGVyYXRpb24uCisKKyAgICAgICAgKiBkb20vRE9NSW1wbGVtZW50YXRpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RE9NSW1wbGVtZW50YXRpb246OmlzWE1MTUlNRVR5cGUpOgor
ICAgICAgICAqIGRvbS9FbGVtZW50RGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpVbmlxdWVF
bGVtZW50RGF0YTo6VW5pcXVlRWxlbWVudERhdGEpOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVu
dERhdGE6OmZpbmRBdHRyaWJ1dGVJbmRleEJ5TmFtZVNsb3dDYXNlKToKKyAgICAgICAgKiBkb20v
RXZlbnRDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRvdWNoRXZlbnRDb250ZXh0Ojpj
aGVja1JlYWNoYWJpbGl0eSk6CisKIDIwMTQtMDEtMDYgIFRoaWFnbyBkZSBCYXJyb3MgTGFjZXJk
YSAgPHRoaWFnby5sYWNlcmRhQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgW05peF0gQWRkaW5n
IG5ldyBzdHJpbmdzIHRvIExvY2FsaXplZFN0cmluZ3NOaXgKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9ET01JbXBsZW1lbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRE9N
SW1wbGVtZW50YXRpb24uY3BwCmluZGV4IGQ1NDk2NmJjMzI1YTJhODA4MDliNjZjMDdkNzMzZjY3
ZTdlMGQ3NjEuLmYwNjk3Mjk0ZGI2MGJjODgyYTZhYTc0ZDVkMTMyZTRhYzA2YzFhMzIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01JbXBsZW1lbnRhdGlvbi5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0aW9uLmNwcApAQCAtMjg2LDcgKzI4Niw4IEBA
IGJvb2wgRE9NSW1wbGVtZW50YXRpb246OmlzWE1MTUlNRVR5cGUoY29uc3QgU3RyaW5nJiBtaW1l
VHlwZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgLy8gQWdhaW4sIG1pbWVUeXBlIGVu
ZHMgd2l0aCAnK3htbCcsIG5vIG5lZWQgdG8gY2hlY2sgdGhlIHZhbGlkaXR5IG9mIHRoYXQgc3Vi
c3RyaW5nLgotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbWltZVR5cGUubGVuZ3RoKCkgLSA0
OyArK2kpIHsKKyAgICBzaXplX3QgbWltZUxlbmd0aCA9IG1pbWVUeXBlLmxlbmd0aCgpOworICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbWltZUxlbmd0aCAtIDQ7ICsraSkgewogICAgICAgICBp
ZiAoIWlzVmFsaWRYTUxNSU1FVHlwZUNoYXIobWltZVR5cGVbaV0pICYmIGkgIT0gc2xhc2hQb3Np
dGlvbikKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudERhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1l
bnREYXRhLmNwcAppbmRleCBkMzI2NDg1MTc2ZmM1N2RkOTdlYzdlYWRlNTY2NDA4YjIwZWYxNjVk
Li4yNjE4NWI4MWU0ZTc5YzE1ZjZlY2MwZGYzZGUyMzRjMGQwYTA4NTBmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudERhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50RGF0YS5jcHAKQEAgLTE0OCw4ICsxNDgsOSBAQCBVbmlxdWVFbGVtZW50RGF0YTo6
VW5pcXVlRWxlbWVudERhdGEoY29uc3QgU2hhcmVhYmxlRWxlbWVudERhdGEmIG90aGVyKQogICAg
IEFTU0VSVCghb3RoZXIubV9pbmxpbmVTdHlsZSB8fCAhb3RoZXIubV9pbmxpbmVTdHlsZS0+aXNN
dXRhYmxlKCkpOwogICAgIG1faW5saW5lU3R5bGUgPSBvdGhlci5tX2lubGluZVN0eWxlOwogCisg
ICAgdW5zaWduZWQgb3RoZXJMZW5ndGggPSBvdGhlci5sZW5ndGgoKTsKICAgICBtX2F0dHJpYnV0
ZVZlY3Rvci5yZXNlcnZlQ2FwYWNpdHkob3RoZXIubGVuZ3RoKCkpOwotICAgIGZvciAodW5zaWdu
ZWQgaSA9IDA7IGkgPCBvdGhlci5sZW5ndGgoKTsgKytpKQorICAgIGZvciAodW5zaWduZWQgaSA9
IDA7IGkgPCBvdGhlckxlbmd0aDsgKytpKQogICAgICAgICBtX2F0dHJpYnV0ZVZlY3Rvci51bmNo
ZWNrZWRBcHBlbmQob3RoZXIubV9hdHRyaWJ1dGVBcnJheVtpXSk7CiB9CiAKQEAgLTE4OCw3ICsx
ODksOCBAQCBib29sIEVsZW1lbnREYXRhOjppc0VxdWl2YWxlbnQoY29uc3QgRWxlbWVudERhdGEq
IG90aGVyKSBjb25zdAogdW5zaWduZWQgRWxlbWVudERhdGE6OmZpbmRBdHRyaWJ1dGVJbmRleEJ5
TmFtZVNsb3dDYXNlKGNvbnN0IEF0b21pY1N0cmluZyYgbmFtZSwgYm9vbCBzaG91bGRJZ25vcmVB
dHRyaWJ1dGVDYXNlKSBjb25zdAogewogICAgIC8vIENvbnRpbnVlIHRvIGNoZWNraW5nIGNhc2Ut
aW5zZW5zaXRpdmVseSBhbmQvb3IgZnVsbCBuYW1lc3BhY2VkIG5hbWVzIGlmIG5lY2Vzc2FyeToK
LSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbGVuZ3RoKCk7ICsraSkgeworICAgIHVuc2ln
bmVkIHNlbGZMZW5ndGggPSBsZW5ndGgoKTsKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwg
c2VsZkxlbmd0aDsgKytpKSB7CiAgICAgICAgIGNvbnN0IEF0dHJpYnV0ZSYgYXR0cmlidXRlID0g
YXR0cmlidXRlQXQoaSk7CiAgICAgICAgIGlmICghYXR0cmlidXRlLm5hbWUoKS5oYXNQcmVmaXgo
KSkgewogICAgICAgICAgICAgaWYgKHNob3VsZElnbm9yZUF0dHJpYnV0ZUNhc2UgJiYgZXF1YWxJ
Z25vcmluZ0Nhc2UobmFtZSwgYXR0cmlidXRlLmxvY2FsTmFtZSgpKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FdmVudENvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2
ZW50Q29udGV4dC5jcHAKaW5kZXggNWMxZmViMTcxNjM3Zjc3YTNjM2RhMDQ0M2JlYTNmNjMzOTc2
YmIxZS4uYTFjYzMxODEyNWI0NDNmZGYwNTYyNGRkOWYyZTY4OTBlNmMzZmRjZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50Q29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50Q29udGV4dC5jcHAKQEAgLTEyNyw3ICsxMjcsOCBAQCBib29sIFRvdWNoRXZl
bnRDb250ZXh0Ojppc1RvdWNoRXZlbnRDb250ZXh0KCkgY29uc3QKICNpZm5kZWYgTkRFQlVHCiB2
b2lkIFRvdWNoRXZlbnRDb250ZXh0OjpjaGVja1JlYWNoYWJpbGl0eShUb3VjaExpc3QqIHRvdWNo
TGlzdCkgY29uc3QKIHsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRvdWNoTGlzdC0+bGVu
Z3RoKCk7ICsraSkKKyAgICBzaXplX3QgbGVuZ3RoID0gdG91Y2hMaXN0LT5sZW5ndGgoKTsKKyAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxlbmd0aDsgKytpKQogICAgICAgICBBU1NFUlQoaXNS
ZWFjaGFibGUodG91Y2hMaXN0LT5pdGVtKGkpLT50YXJnZXQoKS0+dG9Ob2RlKCkpKTsKIH0KICNl
bmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>223955</attachid>
            <date>2014-02-12 01:42:30 -0800</date>
            <delta_ts>2014-02-24 06:10:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-126525-20140211114644.patch</filename>
            <type>text/plain</type>
            <size>3092</size>
            <attacher name="Laszlo Vidacs">lvidacs.u-szeged</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYzNzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTNmNzkwZTAxYjczZWUz
NzBhNTMyNjhlZjU0N2Y3NGU1MWUyMjg4Yy4uMWIxOGYxNjk0NjBiMTFlZWUwNzZjYzIyM2FmYmM3
OTZkMmU5YzhhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE0LTAyLTExICBMYXN6
bG8gVmlkYWNzICA8bHZpZGFjcy51LXN6ZWdlZEBwYXJ0bmVyLnNhbXN1bmcuY29tPgorCisgICAg
ICAgIE1vdmUgZnVuY3Rpb24gY2FsbHMgb3V0c2lkZSBsb29wIGluIGRvbQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI2NTI1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU3RvcmUgdGhlIHJlc3VsdCBvZiBs
ZW5ndGgoKSBpbiBhIGxvY2FsIHZhcmlhYmxlIGFuZCB1c2UgaXQgaW4gZWFjaCBpdGVyYXRpb24u
CisKKyAgICAgICAgKiBkb20vRE9NSW1wbGVtZW50YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RE9NSW1wbGVtZW50YXRpb246OmlzWE1MTUlNRVR5cGUpOgorICAgICAgICAqIGRvbS9FbGVt
ZW50RGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpVbmlxdWVFbGVtZW50RGF0YTo6VW5pcXVl
RWxlbWVudERhdGEpOgorICAgICAgICAqIGRvbS9FdmVudENvbnRleHQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6VG91Y2hFdmVudENvbnRleHQ6OmNoZWNrUmVhY2hhYmlsaXR5KToKKwogMjAxNC0w
Mi0xMCAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CiAKICAgICAgICAgRml4
IGEgZmV3IG1pc3Rha2VzIHRoYXQgbGFuZGVkIHdpdGggcjE2Mzc0OS4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9ET01JbXBsZW1lbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRE9NSW1wbGVtZW50YXRpb24uY3BwCmluZGV4IDJkYzhjMjhiODg0MDljNjU0NjYwZmRiOWRl
MjU1MzhjNGNiN2UxOGMuLjRjMjkyOTBmODJiYzRjN2QxYmZhODVkMDIxMGQ1NDYwYjNjMzQ2YzMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01JbXBsZW1lbnRhdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0aW9uLmNwcApAQCAtMjcwLDcgKzI3
MCw4IEBAIGJvb2wgRE9NSW1wbGVtZW50YXRpb246OmlzWE1MTUlNRVR5cGUoY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgLy8gQWdhaW4sIG1pbWVU
eXBlIGVuZHMgd2l0aCAnK3htbCcsIG5vIG5lZWQgdG8gY2hlY2sgdGhlIHZhbGlkaXR5IG9mIHRo
YXQgc3Vic3RyaW5nLgotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbWltZVR5cGUubGVuZ3Ro
KCkgLSA0OyArK2kpIHsKKyAgICBzaXplX3QgbWltZUxlbmd0aCA9IG1pbWVUeXBlLmxlbmd0aCgp
OworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbWltZUxlbmd0aCAtIDQ7ICsraSkgewogICAg
ICAgICBpZiAoIWlzVmFsaWRYTUxNSU1FVHlwZUNoYXIobWltZVR5cGVbaV0pICYmIGkgIT0gc2xh
c2hQb3NpdGlvbikKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudERhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnREYXRhLmNwcAppbmRleCA4NmY4NTJkMDUxYmI5MTg2NzgwNWQxMzE1YmFjZTZmZjk3
N2MzMjkwLi4wNmI1MTM1OGM0MzNjODQwNTRlMjY1ZWY0ZWRjYzY5NmQ0NWI3YzJlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudERhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9FbGVtZW50RGF0YS5jcHAKQEAgLTE0MCw4ICsxNDAsOSBAQCBVbmlxdWVFbGVtZW50
RGF0YTo6VW5pcXVlRWxlbWVudERhdGEoY29uc3QgU2hhcmVhYmxlRWxlbWVudERhdGEmIG90aGVy
KQogICAgIEFTU0VSVCghb3RoZXIubV9pbmxpbmVTdHlsZSB8fCAhb3RoZXIubV9pbmxpbmVTdHls
ZS0+aXNNdXRhYmxlKCkpOwogICAgIG1faW5saW5lU3R5bGUgPSBvdGhlci5tX2lubGluZVN0eWxl
OwogCisgICAgdW5zaWduZWQgb3RoZXJMZW5ndGggPSBvdGhlci5sZW5ndGgoKTsKICAgICBtX2F0
dHJpYnV0ZVZlY3Rvci5yZXNlcnZlQ2FwYWNpdHkob3RoZXIubGVuZ3RoKCkpOwotICAgIGZvciAo
dW5zaWduZWQgaSA9IDA7IGkgPCBvdGhlci5sZW5ndGgoKTsgKytpKQorICAgIGZvciAodW5zaWdu
ZWQgaSA9IDA7IGkgPCBvdGhlckxlbmd0aDsgKytpKQogICAgICAgICBtX2F0dHJpYnV0ZVZlY3Rv
ci51bmNoZWNrZWRBcHBlbmQob3RoZXIubV9hdHRyaWJ1dGVBcnJheVtpXSk7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudENvbnRleHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50Q29udGV4dC5jcHAKaW5kZXggNWMxZmViMTcxNjM3Zjc3YTNjM2RhMDQ0M2Jl
YTNmNjMzOTc2YmIxZS4uYTFjYzMxODEyNWI0NDNmZGYwNTYyNGRkOWYyZTY4OTBlNmMzZmRjZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50Q29udGV4dC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0V2ZW50Q29udGV4dC5jcHAKQEAgLTEyNyw3ICsxMjcsOCBAQCBib29s
IFRvdWNoRXZlbnRDb250ZXh0Ojppc1RvdWNoRXZlbnRDb250ZXh0KCkgY29uc3QKICNpZm5kZWYg
TkRFQlVHCiB2b2lkIFRvdWNoRXZlbnRDb250ZXh0OjpjaGVja1JlYWNoYWJpbGl0eShUb3VjaExp
c3QqIHRvdWNoTGlzdCkgY29uc3QKIHsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRvdWNo
TGlzdC0+bGVuZ3RoKCk7ICsraSkKKyAgICBzaXplX3QgbGVuZ3RoID0gdG91Y2hMaXN0LT5sZW5n
dGgoKTsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxlbmd0aDsgKytpKQogICAgICAgICBB
U1NFUlQoaXNSZWFjaGFibGUodG91Y2hMaXN0LT5pdGVtKGkpLT50YXJnZXQoKS0+dG9Ob2RlKCkp
KTsKIH0KICNlbmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>225058</attachid>
            <date>2014-02-24 06:10:57 -0800</date>
            <delta_ts>2014-03-03 02:12:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-126525-20140224151053.patch</filename>
            <type>text/plain</type>
            <size>3217</size>
            <attacher name="Laszlo Vidacs">lvidacs.u-szeged</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0NTc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTE1Y2MzZTJhYTJlM2Uy
ZjYyNTRkMGVmMGJiYmJiZTNkY2U1NzY1Yy4uMzVhYmRhOGE3MjU5NTQ4MGE4NDNjNTZkN2Y2ODNi
ZjM4ZTEzNTkxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE0LTAyLTI0ICBMYXN6
bG8gVmlkYWNzICA8bHZpZGFjcy51LXN6ZWdlZEBwYXJ0bmVyLnNhbXN1bmcuY29tPgorCisgICAg
ICAgIE1vdmUgZnVuY3Rpb24gY2FsbHMgb3V0c2lkZSBsb29wIGluIGRvbQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI2NTI1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU3RvcmUgdGhlIHJlc3VsdCBvZiBs
ZW5ndGgoKSBpbiBhIGxvY2FsIHZhcmlhYmxlIGFuZCB1c2UgaXQgaW4gZWFjaCBpdGVyYXRpb24u
CisKKyAgICAgICAgKiBkb20vRE9NSW1wbGVtZW50YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RE9NSW1wbGVtZW50YXRpb246OmlzWE1MTUlNRVR5cGUpOgorICAgICAgICAqIGRvbS9FbGVt
ZW50RGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpVbmlxdWVFbGVtZW50RGF0YTo6VW5pcXVl
RWxlbWVudERhdGEpOgorICAgICAgICAqIGRvbS9FdmVudENvbnRleHQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6VG91Y2hFdmVudENvbnRleHQ6OmNoZWNrUmVhY2hhYmlsaXR5KToKKwogMjAxNC0w
Mi0yNCAgTWloYWkgVGljYSAgPG1pdGljYUBhZG9iZS5jb20+CiAKICAgICAgICAgW0NTUyBCbGVu
ZGluZ10gQW4gZWxlbWVudCBoYXZpbmcgLXdlYmtpdC1taXgtYmxlbmQtbW9kZSBzaG91bGQgb25s
eSBibGVuZCB3aXRoIHRoZSBjb250ZW50cyBvZiB0aGUgcGFyZW50IHN0YWNraW5nIGNvbnRleHQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01JbXBsZW1lbnRhdGlvbi5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRE9NSW1wbGVtZW50YXRpb24uY3BwCmluZGV4IGI5YWQzZjM2MTRh
NTAxMGIzMTg3ZGE1ZTViY2Y4ZDQ3NzFhODgxOTQuLjY2MjU1ZDZiOThjZjY4Nzc3ZTAwMDFhMmM2
OTY2NmUyMGFhMzg4MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01JbXBsZW1l
bnRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RPTUltcGxlbWVudGF0aW9uLmNw
cApAQCAtMjY5LDcgKzI2OSw4IEBAIGJvb2wgRE9NSW1wbGVtZW50YXRpb246OmlzWE1MTUlNRVR5
cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAg
Ly8gQWdhaW4sIG1pbWVUeXBlIGVuZHMgd2l0aCAnK3htbCcsIG5vIG5lZWQgdG8gY2hlY2sgdGhl
IHZhbGlkaXR5IG9mIHRoYXQgc3Vic3RyaW5nLgotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
bWltZVR5cGUubGVuZ3RoKCkgLSA0OyArK2kpIHsKKyAgICBzaXplX3QgbWltZUxlbmd0aCA9IG1p
bWVUeXBlLmxlbmd0aCgpOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbWltZUxlbmd0aCAt
IDQ7ICsraSkgewogICAgICAgICBpZiAoIWlzVmFsaWRYTUxNSU1FVHlwZUNoYXIobWltZVR5cGVb
aV0pICYmIGkgIT0gc2xhc2hQb3NpdGlvbikKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudERhdGEuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnREYXRhLmNwcAppbmRleCA4NmY4NTJkMDUxYmI5MTg2Nzgw
NWQxMzE1YmFjZTZmZjk3N2MzMjkwLi4zYzJhZTNmOWJmZjliNzliYWQwODMyY2YyMDVjOWZjNDU5
ZTNlN2M4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudERhdGEuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50RGF0YS5jcHAKQEAgLTE0MCw4ICsxNDAsOSBA
QCBVbmlxdWVFbGVtZW50RGF0YTo6VW5pcXVlRWxlbWVudERhdGEoY29uc3QgU2hhcmVhYmxlRWxl
bWVudERhdGEmIG90aGVyKQogICAgIEFTU0VSVCghb3RoZXIubV9pbmxpbmVTdHlsZSB8fCAhb3Ro
ZXIubV9pbmxpbmVTdHlsZS0+aXNNdXRhYmxlKCkpOwogICAgIG1faW5saW5lU3R5bGUgPSBvdGhl
ci5tX2lubGluZVN0eWxlOwogCi0gICAgbV9hdHRyaWJ1dGVWZWN0b3IucmVzZXJ2ZUNhcGFjaXR5
KG90aGVyLmxlbmd0aCgpKTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgb3RoZXIubGVu
Z3RoKCk7ICsraSkKKyAgICB1bnNpZ25lZCBvdGhlckxlbmd0aCA9IG90aGVyLmxlbmd0aCgpOwor
ICAgIG1fYXR0cmlidXRlVmVjdG9yLnJlc2VydmVDYXBhY2l0eShvdGhlckxlbmd0aCk7CisgICAg
Zm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG90aGVyTGVuZ3RoOyArK2kpCiAgICAgICAgIG1fYXR0
cmlidXRlVmVjdG9yLnVuY2hlY2tlZEFwcGVuZChvdGhlci5tX2F0dHJpYnV0ZUFycmF5W2ldKTsK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50Q29udGV4dC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRXZlbnRDb250ZXh0LmNwcAppbmRleCA1YzFmZWIxNzE2MzdmNzdh
M2MzZGEwNDQzYmVhM2Y2MzM5NzZiYjFlLi5hMWNjMzE4MTI1YjQ0M2ZkZjA1NjI0ZGQ5ZjJlNjg5
MGU2YzNmZGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRDb250ZXh0LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRDb250ZXh0LmNwcApAQCAtMTI3LDcgKzEy
Nyw4IEBAIGJvb2wgVG91Y2hFdmVudENvbnRleHQ6OmlzVG91Y2hFdmVudENvbnRleHQoKSBjb25z
dAogI2lmbmRlZiBOREVCVUcKIHZvaWQgVG91Y2hFdmVudENvbnRleHQ6OmNoZWNrUmVhY2hhYmls
aXR5KFRvdWNoTGlzdCogdG91Y2hMaXN0KSBjb25zdAogewotICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgdG91Y2hMaXN0LT5sZW5ndGgoKTsgKytpKQorICAgIHNpemVfdCBsZW5ndGggPSB0b3Vj
aExpc3QtPmxlbmd0aCgpOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGVuZ3RoOyArK2kp
CiAgICAgICAgIEFTU0VSVChpc1JlYWNoYWJsZSh0b3VjaExpc3QtPml0ZW0oaSktPnRhcmdldCgp
LT50b05vZGUoKSkpOwogfQogI2VuZGlmCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>