<?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>74609</bug_id>
          
          <creation_ts>2011-12-15 08:21:12 -0800</creation_ts>
          <short_desc>[BlackBerry] Backingstore can get into bad state with invalid matrix</short_desc>
          <delta_ts>2011-12-15 09:33: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>New Bugs</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="Adam Treat">manyoso</reporter>
          <assigned_to name="Adam Treat">manyoso</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>521902</commentid>
    <comment_count>0</comment_count>
      <attachid>119429</attachid>
    <who name="Adam Treat">manyoso</who>
    <bug_when>2011-12-15 08:21:12 -0800</bug_when>
    <thetext>Created attachment 119429
Bugfix

PR 122703

For certain configurations of webpage content and zoom level we were
failing to produce a valid backingstore matrix by being to strict on
whether a given matrix fits the preferred matrix orientation.
This patch fixes this by insisting on storing a candidate divisor
whether or not it agrees with the preferred matrix orientation and then
comparing all subsequent divisors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521903</commentid>
    <comment_count>1</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-15 08:23:06 -0800</bug_when>
    <thetext>Attachment 119429 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit/blackberry/Api/BackingStore....&quot; exit_code: 1

Source/WebKit/blackberry/Api/BackingStore.cpp:101:  An else statement can be removed when the prior &quot;if&quot; concludes with a return, break, continue or goto statement.  [readability/control_flow] [4]
Total errors found: 1 in 1 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>521906</commentid>
    <comment_count>2</comment_count>
      <attachid>119430</attachid>
    <who name="Adam Treat">manyoso</who>
    <bug_when>2011-12-15 08:25:47 -0800</bug_when>
    <thetext>Created attachment 119430
Bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521907</commentid>
    <comment_count>3</comment_count>
      <attachid>119431</attachid>
    <who name="Adam Treat">manyoso</who>
    <bug_when>2011-12-15 08:26:19 -0800</bug_when>
    <thetext>Created attachment 119431
Bugfix v2

Fix style</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521910</commentid>
    <comment_count>4</comment_count>
      <attachid>119431</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2011-12-15 08:27:45 -0800</bug_when>
    <thetext>Comment on attachment 119431
Bugfix v2

Need a ChangeLog!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521917</commentid>
    <comment_count>5</comment_count>
      <attachid>119433</attachid>
    <who name="Adam Treat">manyoso</who>
    <bug_when>2011-12-15 08:33:33 -0800</bug_when>
    <thetext>Created attachment 119433
Bugfix v3 now with ChangeLog!

Been so long that I forgot I had to add my own ChangeLog :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521919</commentid>
    <comment_count>6</comment_count>
      <attachid>119434</attachid>
    <who name="Adam Treat">manyoso</who>
    <bug_when>2011-12-15 08:34:55 -0800</bug_when>
    <thetext>Created attachment 119434
Bugfix v4 removing useless &apos;()&apos;

This is fun!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521920</commentid>
    <comment_count>7</comment_count>
      <attachid>119434</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2011-12-15 08:38:12 -0800</bug_when>
    <thetext>Comment on attachment 119434
Bugfix v4 removing useless &apos;()&apos;

Looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521964</commentid>
    <comment_count>8</comment_count>
      <attachid>119434</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-15 09:33:18 -0800</bug_when>
    <thetext>Comment on attachment 119434
Bugfix v4 removing useless &apos;()&apos;

Clearing flags on attachment: 119434

Committed r102949: &lt;http://trac.webkit.org/changeset/102949&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>521965</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-15 09:33:22 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119429</attachid>
            <date>2011-12-15 08:21:12 -0800</date>
            <delta_ts>2011-12-15 08:26:19 -0800</delta_ts>
            <desc>Bugfix</desc>
            <filename>122703.patch</filename>
            <type>text/plain</type>
            <size>5353</size>
            <attacher name="Adam Treat">manyoso</attacher>
            
              <data encoding="base64">Y29tbWl0IDRkYjU1NzE1MGIzNDhjOTM3MzhmNmI4NWNiNGMyYmI1NjcwODM1MmUKQXV0aG9yOiBB
ZGFtIFRyZWF0IDxhdHJlYXRAcmltLmNvbT4KRGF0ZTogICBUaHUgRGVjIDE1IDEwOjU5OjM0IDIw
MTEgLTA1MDAKCiAgICAyMDExLTEyLTE1ICBBZGFtIFRyZWF0ICA8YXRyZWF0QHJpbS5jb20+CiAg
ICAKICAgICAgICAgICAgUFIgMTIyNzAzCiAgICAKICAgICAgICAgICAgRm9yIGNlcnRhaW4gY29u
ZmlndXJhdGlvbnMgb2Ygd2VicGFnZSBjb250ZW50IGFuZCB6b29tIGxldmVsIHdlIHdlcmUKICAg
ICAgICAgICAgZmFpbGluZyB0byBwcm9kdWNlIGEgdmFsaWQgYmFja2luZ3N0b3JlIG1hdHJpeCBi
eSBiZWluZyB0byBzdHJpY3Qgb24KICAgICAgICAgICAgd2hldGhlciBhIGdpdmVuIG1hdHJpeCBm
aXRzIHRoZSBwcmVmZXJyZWQgbWF0cml4IG9yaWVudGF0aW9uLgogICAgICAgICAgICBUaGlzIHBh
dGNoIGZpeGVzIHRoaXMgYnkgaW5zaXN0aW5nIG9uIHN0b3JpbmcgYSBjYW5kaWRhdGUgZGl2aXNv
cgogICAgICAgICAgICB3aGV0aGVyIG9yIG5vdCBpdCBhZ3JlZXMgd2l0aCB0aGUgcHJlZmVycmVk
IG1hdHJpeCBvcmllbnRhdGlvbiBhbmQgdGhlbgogICAgICAgICAgICBjb21wYXJpbmcgYWxsIHN1
YnNlcXVlbnQgZGl2aXNvcnMuCiAgICAKICAgICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCiAgICAKICAgICAgICAgICAgKiBibGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUuY3Bw
OgogICAgICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0V2lkdGgp
OgogICAgICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0SGVpZ2h0
KToKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6ZGl2aXNvcklzUHJlZmVycmVkRGly
ZWN0aW9uKToKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6YmVzdERpdmlzb3IpOgoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNw
cCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNwcAppbmRleCBj
NzA1YTUxLi5kNjQ0YTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBp
L0JhY2tpbmdTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9CYWNr
aW5nU3RvcmUuY3BwCkBAIC04Niw2ICs4NiwyNCBAQCBzdGF0aWMgRGl2aXNvckxpc3QgZGl2aXNv
cnModW5zaWduZWQgbikKICAgICByZXR1cm4gZGl2aXNvcnM7CiB9CiAKK3N0YXRpYyBib29sIGRp
dmlzb3JJc1BlcmZlY3RXaWR0aChEaXZpc29yIGRpdmlzb3IsIFBsYXRmb3JtOjpJbnRTaXplIHNp
emUsIGludCB0aWxlV2lkdGgpCit7CisgICAgcmV0dXJuIHNpemUud2lkdGgoKSA8PSBkaXZpc29y
LmZpcnN0ICogdGlsZVdpZHRoICYmIGFicyhzaXplLndpZHRoKCkgLSBkaXZpc29yLmZpcnN0ICog
dGlsZVdpZHRoKSA8IHRpbGVXaWR0aDsKK30KKworc3RhdGljIGJvb2wgZGl2aXNvcklzUGVyZmVj
dEhlaWdodChEaXZpc29yIGRpdmlzb3IsIFBsYXRmb3JtOjpJbnRTaXplIHNpemUsIGludCB0aWxl
SGVpZ2h0KQoreworICAgIHJldHVybiBzaXplLmhlaWdodCgpIDw9IGRpdmlzb3Iuc2Vjb25kICog
dGlsZUhlaWdodCAmJiBhYnMoc2l6ZS5oZWlnaHQoKSAtIGRpdmlzb3Iuc2Vjb25kICogdGlsZUhl
aWdodCkgPCB0aWxlSGVpZ2h0OworfQorCitzdGF0aWMgYm9vbCBkaXZpc29ySXNQcmVmZXJyZWRE
aXJlY3Rpb24oRGl2aXNvciBkaXZpc29yLCBCYWNraW5nU3RvcmVQcml2YXRlOjpUaWxlTWF0cml4
RGlyZWN0aW9uIGRpcmVjdGlvbikKK3sKKyAgICBpZiAoZGlyZWN0aW9uID09IEJhY2tpbmdTdG9y
ZVByaXZhdGU6OlZlcnRpY2FsKQorICAgICAgICByZXR1cm4gZGl2aXNvci5zZWNvbmQgPiBkaXZp
c29yLmZpcnN0OworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuIGRpdmlzb3IuZmlyc3QgPiBkaXZp
c29yLnNlY29uZDsKK30KKwogLy8gQ29tcHV0ZSBiZXN0IGRpdmlzb3IgZ2l2ZW4gdGhlIHJhdGlv
IGRldGVybWluZWQgYnkgc2l6ZS4KIHN0YXRpYyBEaXZpc29yIGJlc3REaXZpc29yKFBsYXRmb3Jt
OjpJbnRTaXplIHNpemUsIGludCB0aWxlV2lkdGgsIGludCB0aWxlSGVpZ2h0LAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50IG1pbmltdW1OdW1iZXJPZlRpbGVzV2lkZSwgaW50IG1pbmlt
dW1OdW1iZXJPZlRpbGVzSGlnaCwKQEAgLTExMCwzNSArMTI4LDM0IEBAIHN0YXRpYyBEaXZpc29y
IGJlc3REaXZpc29yKFBsYXRmb3JtOjpJbnRTaXplIHNpemUsIGludCB0aWxlV2lkdGgsIGludCB0
aWxlSGVpZ2h0CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBkaXZpc29yTGlzdC5zaXplKCk7
ICsraSkgewogICAgICAgICBEaXZpc29yIGRpdmlzb3IgPSBkaXZpc29yTGlzdFtpXTsKIAotICAg
ICAgICBib29sIGRpdmlzb3JXaWR0aElzUGVyZmVjdCA9IHNpemUud2lkdGgoKSA8PSBkaXZpc29y
LmZpcnN0ICogdGlsZVdpZHRoICYmIGFicyhzaXplLndpZHRoKCkgLSBkaXZpc29yLmZpcnN0ICog
dGlsZVdpZHRoKSA8IHRpbGVXaWR0aDsKLSAgICAgICAgYm9vbCBkaXZpc29ySGVpZ2h0SXNQZXJm
ZWN0ID0gc2l6ZS5oZWlnaHQoKSA8PSBkaXZpc29yLnNlY29uZCAqIHRpbGVIZWlnaHQgJiYgYWJz
KHNpemUuaGVpZ2h0KCkgLSBkaXZpc29yLnNlY29uZCAqIHRpbGVIZWlnaHQpIDwgdGlsZUhlaWdo
dDsKLSAgICAgICAgYm9vbCBkaXZpc29yV2lkdGhJc1ZhbGlkID0gZGl2aXNvci5maXJzdCA+PSBt
aW5pbXVtTnVtYmVyT2ZUaWxlc1dpZGUgfHwgZGl2aXNvcldpZHRoSXNQZXJmZWN0OwotICAgICAg
ICBib29sIGRpdmlzb3JIZWlnaHRJc1ZhbGlkID0gZGl2aXNvci5zZWNvbmQgPj0gbWluaW11bU51
bWJlck9mVGlsZXNIaWdoIHx8IGRpdmlzb3JIZWlnaHRJc1BlcmZlY3Q7Ci0gICAgICAgIGlmICgh
ZGl2aXNvcldpZHRoSXNWYWxpZCB8fCAhZGl2aXNvckhlaWdodElzVmFsaWQpCi0gICAgICAgICAg
ICBjb250aW51ZTsKLQotICAgICAgICBpZiAoZGl2aXNvci5maXJzdCA+IGRpdmlzb3Iuc2Vjb25k
ICYmIGRpcmVjdGlvbiA9PSBCYWNraW5nU3RvcmVQcml2YXRlOjpWZXJ0aWNhbCAmJiAhZGl2aXNv
ckhlaWdodElzUGVyZmVjdCkKKyAgICAgICAgY29uc3QgYm9vbCBpc1BlcmZlY3RXaWR0aCA9IGRp
dmlzb3JJc1BlcmZlY3RXaWR0aChkaXZpc29yLCBzaXplLCB0aWxlV2lkdGgpOworICAgICAgICBj
b25zdCBib29sIGlzUGVyZmVjdEhlaWdodCA9IGRpdmlzb3JJc1BlcmZlY3RIZWlnaHQoZGl2aXNv
ciwgc2l6ZSwgdGlsZUhlaWdodCk7CisgICAgICAgIGNvbnN0IGJvb2wgaXNWYWxpZFdpZHRoID0g
ZGl2aXNvci5maXJzdCA+PSBtaW5pbXVtTnVtYmVyT2ZUaWxlc1dpZGUgfHwgaXNQZXJmZWN0V2lk
dGg7CisgICAgICAgIGNvbnN0IGJvb2wgaXNWYWxpZEhlaWdodCA9IGRpdmlzb3Iuc2Vjb25kID49
IG1pbmltdW1OdW1iZXJPZlRpbGVzSGlnaCB8fCBpc1BlcmZlY3RIZWlnaHQ7CisgICAgICAgIGlm
ICghaXNWYWxpZFdpZHRoIHx8ICFpc1ZhbGlkSGVpZ2h0KQogICAgICAgICAgICAgY29udGludWU7
CiAKLSAgICAgICAgaWYgKGRpdmlzb3Iuc2Vjb25kID4gZGl2aXNvci5maXJzdCAmJiBkaXJlY3Rp
b24gPT0gQmFja2luZ1N0b3JlUHJpdmF0ZTo6SG9yaXpvbnRhbCAmJiAhZGl2aXNvcldpZHRoSXNQ
ZXJmZWN0KQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgaWYgKGRpdmlzb3JXaWR0
aElzUGVyZmVjdCB8fCBkaXZpc29ySGVpZ2h0SXNQZXJmZWN0KSB7CisgICAgICAgIGlmICgoaXNQ
ZXJmZWN0V2lkdGggfHwgaXNQZXJmZWN0SGVpZ2h0KSkgewogICAgICAgICAgICAgYmVzdERpdmlz
b3IgPSBkaXZpc29yOyAvLyBGb3VuZCBhIHBlcmZlY3QgZml0IQogI2lmIERFQlVHX1RJTEVNQVRS
SVgKLSAgICAgICAgICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpsb2coQmxhY2tCZXJyeTo6UGxh
dGZvcm06OkxvZ0xldmVsQ3JpdGljYWwsICJiZXN0RGl2aXNvciBmb3VuZCBwZXJmZWN0IHNpemUg
d2lkdGhQZXJmZWN0PSVzIGhlaWdodFBlcmZlY3Q9JXMiLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBkaXZpc29yV2lkdGhJc1BlcmZlY3QgPyAidHJ1ZSIgOiAiZmFsc2UiLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXZpc29ySGVpZ2h0SXNQZXJmZWN0
ID8gInRydWUiIDogImZhbHNlIik7CisgICAgICAgICAgICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6
bG9nKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZlbENyaXRpY2FsLCAiYmVzdERpdmlzb3Ig
Zm91bmQgcGVyZmVjdCBzaXplIGlzUGVyZmVjdFdpZHRoPSVzIGlzUGVyZmVjdEhlaWdodD0lcyIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzUGVyZmVjdFdpZHRoID8gInRy
dWUiIDogImZhbHNlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNQZXJm
ZWN0SGVpZ2h0ID8gInRydWUiIDogImZhbHNlIik7CiAjZW5kaWYKICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICB9CiAKICAgICAgICAgLy8gU3RvcmUgYmFzaXMgb2YgY29tcGFyaXNvbi4KLSAg
ICAgICAgaWYgKCFiZXN0RGl2aXNvci5maXJzdCAmJiAhYmVzdERpdmlzb3Iuc2Vjb25kKSB7Cisg
ICAgICAgIGlmICghYmVzdERpdmlzb3IuZmlyc3QgfHwgIWJlc3REaXZpc29yLnNlY29uZCkgewog
ICAgICAgICAgICAgYmVzdERpdmlzb3IgPSBkaXZpc29yOwogICAgICAgICAgICAgY29udGludWU7
CiAgICAgICAgIH0KIAorICAgICAgICAvLyBJZiB0aGUgY3VycmVudCBiZXN0IGRpdmlzb3IgYWdy
ZWVzIHdpdGggdGhlIHByZWZlcnJlZCB0aWxlIG1hdHJpeCBkaXJlY3Rpb24sCisgICAgICAgIC8v
IHRoZW4gY29udGludWUgaWYgdGhlIGN1cnJlbnQgY2FuZGlkYXRlIGRvZXMgbm90LgorICAgICAg
ICBpZiAoZGl2aXNvcklzUHJlZmVycmVkRGlyZWN0aW9uKGJlc3REaXZpc29yLCBkaXJlY3Rpb24p
ICYmICFkaXZpc29ySXNQcmVmZXJyZWREaXJlY3Rpb24oZGl2aXNvciwgZGlyZWN0aW9uKSkKKyAg
ICAgICAgICAgIGNvbnRpbnVlOworCiAgICAgICAgIC8vIENvbXBhcmUgcmF0aW9zLgogICAgICAg
ICBmbG9hdCBkaWZmMSA9IGZhYnMoKHN0YXRpY19jYXN0PGZsb2F0PihkaXZpc29yLmZpcnN0KSAv
IHN0YXRpY19jYXN0PGZsb2F0PihkaXZpc29yLnNlY29uZCkpIC0gcmF0aW8pOwogICAgICAgICBm
bG9hdCBkaWZmMiA9IGZhYnMoKHN0YXRpY19jYXN0PGZsb2F0PihiZXN0RGl2aXNvci5maXJzdCkg
LyBzdGF0aWNfY2FzdDxmbG9hdD4oYmVzdERpdmlzb3Iuc2Vjb25kKSkgLSByYXRpbyk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119430</attachid>
            <date>2011-12-15 08:25:47 -0800</date>
            <delta_ts>2011-12-15 08:26:19 -0800</delta_ts>
            <desc>Bug</desc>
            <filename>122703_A.patch</filename>
            <type>text/plain</type>
            <size>5339</size>
            <attacher name="Adam Treat">manyoso</attacher>
            
              <data encoding="base64">Y29tbWl0IDk5MjA2ZDI3YWYwZDVkODk5OTVmOWU0MmIxZTdiZDI1ZjU0YWZjZDgKQXV0aG9yOiBB
ZGFtIFRyZWF0IDxhdHJlYXRAcmltLmNvbT4KRGF0ZTogICBUaHUgRGVjIDE1IDEwOjU5OjM0IDIw
MTEgLTA1MDAKCiAgICAyMDExLTEyLTE1ICBBZGFtIFRyZWF0ICA8YXRyZWF0QHJpbS5jb20+CiAg
ICAKICAgICAgICAgICAgUFIgMTIyNzAzCiAgICAKICAgICAgICAgICAgRm9yIGNlcnRhaW4gY29u
ZmlndXJhdGlvbnMgb2Ygd2VicGFnZSBjb250ZW50IGFuZCB6b29tIGxldmVsIHdlIHdlcmUKICAg
ICAgICAgICAgZmFpbGluZyB0byBwcm9kdWNlIGEgdmFsaWQgYmFja2luZ3N0b3JlIG1hdHJpeCBi
eSBiZWluZyB0byBzdHJpY3Qgb24KICAgICAgICAgICAgd2hldGhlciBhIGdpdmVuIG1hdHJpeCBm
aXRzIHRoZSBwcmVmZXJyZWQgbWF0cml4IG9yaWVudGF0aW9uLgogICAgICAgICAgICBUaGlzIHBh
dGNoIGZpeGVzIHRoaXMgYnkgaW5zaXN0aW5nIG9uIHN0b3JpbmcgYSBjYW5kaWRhdGUgZGl2aXNv
cgogICAgICAgICAgICB3aGV0aGVyIG9yIG5vdCBpdCBhZ3JlZXMgd2l0aCB0aGUgcHJlZmVycmVk
IG1hdHJpeCBvcmllbnRhdGlvbiBhbmQgdGhlbgogICAgICAgICAgICBjb21wYXJpbmcgYWxsIHN1
YnNlcXVlbnQgZGl2aXNvcnMuCiAgICAKICAgICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCiAgICAKICAgICAgICAgICAgKiBibGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUuY3Bw
OgogICAgICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0V2lkdGgp
OgogICAgICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0SGVpZ2h0
KToKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6ZGl2aXNvcklzUHJlZmVycmVkRGly
ZWN0aW9uKToKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6YmVzdERpdmlzb3IpOgoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNw
cCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNwcAppbmRleCBj
NzA1YTUxLi40YTljZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBp
L0JhY2tpbmdTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9CYWNr
aW5nU3RvcmUuY3BwCkBAIC04Niw2ICs4NiwyMyBAQCBzdGF0aWMgRGl2aXNvckxpc3QgZGl2aXNv
cnModW5zaWduZWQgbikKICAgICByZXR1cm4gZGl2aXNvcnM7CiB9CiAKK3N0YXRpYyBib29sIGRp
dmlzb3JJc1BlcmZlY3RXaWR0aChEaXZpc29yIGRpdmlzb3IsIFBsYXRmb3JtOjpJbnRTaXplIHNp
emUsIGludCB0aWxlV2lkdGgpCit7CisgICAgcmV0dXJuIHNpemUud2lkdGgoKSA8PSBkaXZpc29y
LmZpcnN0ICogdGlsZVdpZHRoICYmIGFicyhzaXplLndpZHRoKCkgLSBkaXZpc29yLmZpcnN0ICog
dGlsZVdpZHRoKSA8IHRpbGVXaWR0aDsKK30KKworc3RhdGljIGJvb2wgZGl2aXNvcklzUGVyZmVj
dEhlaWdodChEaXZpc29yIGRpdmlzb3IsIFBsYXRmb3JtOjpJbnRTaXplIHNpemUsIGludCB0aWxl
SGVpZ2h0KQoreworICAgIHJldHVybiBzaXplLmhlaWdodCgpIDw9IGRpdmlzb3Iuc2Vjb25kICog
dGlsZUhlaWdodCAmJiBhYnMoc2l6ZS5oZWlnaHQoKSAtIGRpdmlzb3Iuc2Vjb25kICogdGlsZUhl
aWdodCkgPCB0aWxlSGVpZ2h0OworfQorCitzdGF0aWMgYm9vbCBkaXZpc29ySXNQcmVmZXJyZWRE
aXJlY3Rpb24oRGl2aXNvciBkaXZpc29yLCBCYWNraW5nU3RvcmVQcml2YXRlOjpUaWxlTWF0cml4
RGlyZWN0aW9uIGRpcmVjdGlvbikKK3sKKyAgICBpZiAoZGlyZWN0aW9uID09IEJhY2tpbmdTdG9y
ZVByaXZhdGU6OlZlcnRpY2FsKQorICAgICAgICByZXR1cm4gZGl2aXNvci5zZWNvbmQgPiBkaXZp
c29yLmZpcnN0OworICAgIHJldHVybiBkaXZpc29yLmZpcnN0ID4gZGl2aXNvci5zZWNvbmQ7Cit9
CisKIC8vIENvbXB1dGUgYmVzdCBkaXZpc29yIGdpdmVuIHRoZSByYXRpbyBkZXRlcm1pbmVkIGJ5
IHNpemUuCiBzdGF0aWMgRGl2aXNvciBiZXN0RGl2aXNvcihQbGF0Zm9ybTo6SW50U2l6ZSBzaXpl
LCBpbnQgdGlsZVdpZHRoLCBpbnQgdGlsZUhlaWdodCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBtaW5pbXVtTnVtYmVyT2ZUaWxlc1dpZGUsIGludCBtaW5pbXVtTnVtYmVyT2ZUaWxl
c0hpZ2gsCkBAIC0xMTAsMzUgKzEyNywzNCBAQCBzdGF0aWMgRGl2aXNvciBiZXN0RGl2aXNvcihQ
bGF0Zm9ybTo6SW50U2l6ZSBzaXplLCBpbnQgdGlsZVdpZHRoLCBpbnQgdGlsZUhlaWdodAogICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZGl2aXNvckxpc3Quc2l6ZSgpOyArK2kpIHsKICAgICAg
ICAgRGl2aXNvciBkaXZpc29yID0gZGl2aXNvckxpc3RbaV07CiAKLSAgICAgICAgYm9vbCBkaXZp
c29yV2lkdGhJc1BlcmZlY3QgPSBzaXplLndpZHRoKCkgPD0gZGl2aXNvci5maXJzdCAqIHRpbGVX
aWR0aCAmJiBhYnMoc2l6ZS53aWR0aCgpIC0gZGl2aXNvci5maXJzdCAqIHRpbGVXaWR0aCkgPCB0
aWxlV2lkdGg7Ci0gICAgICAgIGJvb2wgZGl2aXNvckhlaWdodElzUGVyZmVjdCA9IHNpemUuaGVp
Z2h0KCkgPD0gZGl2aXNvci5zZWNvbmQgKiB0aWxlSGVpZ2h0ICYmIGFicyhzaXplLmhlaWdodCgp
IC0gZGl2aXNvci5zZWNvbmQgKiB0aWxlSGVpZ2h0KSA8IHRpbGVIZWlnaHQ7Ci0gICAgICAgIGJv
b2wgZGl2aXNvcldpZHRoSXNWYWxpZCA9IGRpdmlzb3IuZmlyc3QgPj0gbWluaW11bU51bWJlck9m
VGlsZXNXaWRlIHx8IGRpdmlzb3JXaWR0aElzUGVyZmVjdDsKLSAgICAgICAgYm9vbCBkaXZpc29y
SGVpZ2h0SXNWYWxpZCA9IGRpdmlzb3Iuc2Vjb25kID49IG1pbmltdW1OdW1iZXJPZlRpbGVzSGln
aCB8fCBkaXZpc29ySGVpZ2h0SXNQZXJmZWN0OwotICAgICAgICBpZiAoIWRpdmlzb3JXaWR0aElz
VmFsaWQgfHwgIWRpdmlzb3JIZWlnaHRJc1ZhbGlkKQotICAgICAgICAgICAgY29udGludWU7Ci0K
LSAgICAgICAgaWYgKGRpdmlzb3IuZmlyc3QgPiBkaXZpc29yLnNlY29uZCAmJiBkaXJlY3Rpb24g
PT0gQmFja2luZ1N0b3JlUHJpdmF0ZTo6VmVydGljYWwgJiYgIWRpdmlzb3JIZWlnaHRJc1BlcmZl
Y3QpCisgICAgICAgIGNvbnN0IGJvb2wgaXNQZXJmZWN0V2lkdGggPSBkaXZpc29ySXNQZXJmZWN0
V2lkdGgoZGl2aXNvciwgc2l6ZSwgdGlsZVdpZHRoKTsKKyAgICAgICAgY29uc3QgYm9vbCBpc1Bl
cmZlY3RIZWlnaHQgPSBkaXZpc29ySXNQZXJmZWN0SGVpZ2h0KGRpdmlzb3IsIHNpemUsIHRpbGVI
ZWlnaHQpOworICAgICAgICBjb25zdCBib29sIGlzVmFsaWRXaWR0aCA9IGRpdmlzb3IuZmlyc3Qg
Pj0gbWluaW11bU51bWJlck9mVGlsZXNXaWRlIHx8IGlzUGVyZmVjdFdpZHRoOworICAgICAgICBj
b25zdCBib29sIGlzVmFsaWRIZWlnaHQgPSBkaXZpc29yLnNlY29uZCA+PSBtaW5pbXVtTnVtYmVy
T2ZUaWxlc0hpZ2ggfHwgaXNQZXJmZWN0SGVpZ2h0OworICAgICAgICBpZiAoIWlzVmFsaWRXaWR0
aCB8fCAhaXNWYWxpZEhlaWdodCkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIGlm
IChkaXZpc29yLnNlY29uZCA+IGRpdmlzb3IuZmlyc3QgJiYgZGlyZWN0aW9uID09IEJhY2tpbmdT
dG9yZVByaXZhdGU6Okhvcml6b250YWwgJiYgIWRpdmlzb3JXaWR0aElzUGVyZmVjdCkKLSAgICAg
ICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIGlmIChkaXZpc29yV2lkdGhJc1BlcmZlY3QgfHwg
ZGl2aXNvckhlaWdodElzUGVyZmVjdCkgeworICAgICAgICBpZiAoKGlzUGVyZmVjdFdpZHRoIHx8
IGlzUGVyZmVjdEhlaWdodCkpIHsKICAgICAgICAgICAgIGJlc3REaXZpc29yID0gZGl2aXNvcjsg
Ly8gRm91bmQgYSBwZXJmZWN0IGZpdCEKICNpZiBERUJVR19USUxFTUFUUklYCi0gICAgICAgICAg
ICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6bG9nKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZl
bENyaXRpY2FsLCAiYmVzdERpdmlzb3IgZm91bmQgcGVyZmVjdCBzaXplIHdpZHRoUGVyZmVjdD0l
cyBoZWlnaHRQZXJmZWN0PSVzIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZGl2aXNvcldpZHRoSXNQZXJmZWN0ID8gInRydWUiIDogImZhbHNlIiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZGl2aXNvckhlaWdodElzUGVyZmVjdCA/ICJ0cnVlIiA6ICJm
YWxzZSIpOworICAgICAgICAgICAgQmxhY2tCZXJyeTo6UGxhdGZvcm06OmxvZyhCbGFja0JlcnJ5
OjpQbGF0Zm9ybTo6TG9nTGV2ZWxDcml0aWNhbCwgImJlc3REaXZpc29yIGZvdW5kIHBlcmZlY3Qg
c2l6ZSBpc1BlcmZlY3RXaWR0aD0lcyBpc1BlcmZlY3RIZWlnaHQ9JXMiLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpc1BlcmZlY3RXaWR0aCA/ICJ0cnVlIiA6ICJmYWxzZSIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzUGVyZmVjdEhlaWdodCA/ICJ0
cnVlIiA6ICJmYWxzZSIpOwogI2VuZGlmCiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQog
CiAgICAgICAgIC8vIFN0b3JlIGJhc2lzIG9mIGNvbXBhcmlzb24uCi0gICAgICAgIGlmICghYmVz
dERpdmlzb3IuZmlyc3QgJiYgIWJlc3REaXZpc29yLnNlY29uZCkgeworICAgICAgICBpZiAoIWJl
c3REaXZpc29yLmZpcnN0IHx8ICFiZXN0RGl2aXNvci5zZWNvbmQpIHsKICAgICAgICAgICAgIGJl
c3REaXZpc29yID0gZGl2aXNvcjsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAK
KyAgICAgICAgLy8gSWYgdGhlIGN1cnJlbnQgYmVzdCBkaXZpc29yIGFncmVlcyB3aXRoIHRoZSBw
cmVmZXJyZWQgdGlsZSBtYXRyaXggZGlyZWN0aW9uLAorICAgICAgICAvLyB0aGVuIGNvbnRpbnVl
IGlmIHRoZSBjdXJyZW50IGNhbmRpZGF0ZSBkb2VzIG5vdC4KKyAgICAgICAgaWYgKGRpdmlzb3JJ
c1ByZWZlcnJlZERpcmVjdGlvbihiZXN0RGl2aXNvciwgZGlyZWN0aW9uKSAmJiAhZGl2aXNvcklz
UHJlZmVycmVkRGlyZWN0aW9uKGRpdmlzb3IsIGRpcmVjdGlvbikpCisgICAgICAgICAgICBjb250
aW51ZTsKKwogICAgICAgICAvLyBDb21wYXJlIHJhdGlvcy4KICAgICAgICAgZmxvYXQgZGlmZjEg
PSBmYWJzKChzdGF0aWNfY2FzdDxmbG9hdD4oZGl2aXNvci5maXJzdCkgLyBzdGF0aWNfY2FzdDxm
bG9hdD4oZGl2aXNvci5zZWNvbmQpKSAtIHJhdGlvKTsKICAgICAgICAgZmxvYXQgZGlmZjIgPSBm
YWJzKChzdGF0aWNfY2FzdDxmbG9hdD4oYmVzdERpdmlzb3IuZmlyc3QpIC8gc3RhdGljX2Nhc3Q8
ZmxvYXQ+KGJlc3REaXZpc29yLnNlY29uZCkpIC0gcmF0aW8pOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119431</attachid>
            <date>2011-12-15 08:26:19 -0800</date>
            <delta_ts>2011-12-15 08:33:33 -0800</delta_ts>
            <desc>Bugfix v2</desc>
            <filename>122703_A.patch</filename>
            <type>text/plain</type>
            <size>5339</size>
            <attacher name="Adam Treat">manyoso</attacher>
            
              <data encoding="base64">Y29tbWl0IDk5MjA2ZDI3YWYwZDVkODk5OTVmOWU0MmIxZTdiZDI1ZjU0YWZjZDgKQXV0aG9yOiBB
ZGFtIFRyZWF0IDxhdHJlYXRAcmltLmNvbT4KRGF0ZTogICBUaHUgRGVjIDE1IDEwOjU5OjM0IDIw
MTEgLTA1MDAKCiAgICAyMDExLTEyLTE1ICBBZGFtIFRyZWF0ICA8YXRyZWF0QHJpbS5jb20+CiAg
ICAKICAgICAgICAgICAgUFIgMTIyNzAzCiAgICAKICAgICAgICAgICAgRm9yIGNlcnRhaW4gY29u
ZmlndXJhdGlvbnMgb2Ygd2VicGFnZSBjb250ZW50IGFuZCB6b29tIGxldmVsIHdlIHdlcmUKICAg
ICAgICAgICAgZmFpbGluZyB0byBwcm9kdWNlIGEgdmFsaWQgYmFja2luZ3N0b3JlIG1hdHJpeCBi
eSBiZWluZyB0byBzdHJpY3Qgb24KICAgICAgICAgICAgd2hldGhlciBhIGdpdmVuIG1hdHJpeCBm
aXRzIHRoZSBwcmVmZXJyZWQgbWF0cml4IG9yaWVudGF0aW9uLgogICAgICAgICAgICBUaGlzIHBh
dGNoIGZpeGVzIHRoaXMgYnkgaW5zaXN0aW5nIG9uIHN0b3JpbmcgYSBjYW5kaWRhdGUgZGl2aXNv
cgogICAgICAgICAgICB3aGV0aGVyIG9yIG5vdCBpdCBhZ3JlZXMgd2l0aCB0aGUgcHJlZmVycmVk
IG1hdHJpeCBvcmllbnRhdGlvbiBhbmQgdGhlbgogICAgICAgICAgICBjb21wYXJpbmcgYWxsIHN1
YnNlcXVlbnQgZGl2aXNvcnMuCiAgICAKICAgICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCiAgICAKICAgICAgICAgICAgKiBibGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUuY3Bw
OgogICAgICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0V2lkdGgp
OgogICAgICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0SGVpZ2h0
KToKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6ZGl2aXNvcklzUHJlZmVycmVkRGly
ZWN0aW9uKToKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6YmVzdERpdmlzb3IpOgoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNw
cCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNwcAppbmRleCBj
NzA1YTUxLi40YTljZGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBp
L0JhY2tpbmdTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9CYWNr
aW5nU3RvcmUuY3BwCkBAIC04Niw2ICs4NiwyMyBAQCBzdGF0aWMgRGl2aXNvckxpc3QgZGl2aXNv
cnModW5zaWduZWQgbikKICAgICByZXR1cm4gZGl2aXNvcnM7CiB9CiAKK3N0YXRpYyBib29sIGRp
dmlzb3JJc1BlcmZlY3RXaWR0aChEaXZpc29yIGRpdmlzb3IsIFBsYXRmb3JtOjpJbnRTaXplIHNp
emUsIGludCB0aWxlV2lkdGgpCit7CisgICAgcmV0dXJuIHNpemUud2lkdGgoKSA8PSBkaXZpc29y
LmZpcnN0ICogdGlsZVdpZHRoICYmIGFicyhzaXplLndpZHRoKCkgLSBkaXZpc29yLmZpcnN0ICog
dGlsZVdpZHRoKSA8IHRpbGVXaWR0aDsKK30KKworc3RhdGljIGJvb2wgZGl2aXNvcklzUGVyZmVj
dEhlaWdodChEaXZpc29yIGRpdmlzb3IsIFBsYXRmb3JtOjpJbnRTaXplIHNpemUsIGludCB0aWxl
SGVpZ2h0KQoreworICAgIHJldHVybiBzaXplLmhlaWdodCgpIDw9IGRpdmlzb3Iuc2Vjb25kICog
dGlsZUhlaWdodCAmJiBhYnMoc2l6ZS5oZWlnaHQoKSAtIGRpdmlzb3Iuc2Vjb25kICogdGlsZUhl
aWdodCkgPCB0aWxlSGVpZ2h0OworfQorCitzdGF0aWMgYm9vbCBkaXZpc29ySXNQcmVmZXJyZWRE
aXJlY3Rpb24oRGl2aXNvciBkaXZpc29yLCBCYWNraW5nU3RvcmVQcml2YXRlOjpUaWxlTWF0cml4
RGlyZWN0aW9uIGRpcmVjdGlvbikKK3sKKyAgICBpZiAoZGlyZWN0aW9uID09IEJhY2tpbmdTdG9y
ZVByaXZhdGU6OlZlcnRpY2FsKQorICAgICAgICByZXR1cm4gZGl2aXNvci5zZWNvbmQgPiBkaXZp
c29yLmZpcnN0OworICAgIHJldHVybiBkaXZpc29yLmZpcnN0ID4gZGl2aXNvci5zZWNvbmQ7Cit9
CisKIC8vIENvbXB1dGUgYmVzdCBkaXZpc29yIGdpdmVuIHRoZSByYXRpbyBkZXRlcm1pbmVkIGJ5
IHNpemUuCiBzdGF0aWMgRGl2aXNvciBiZXN0RGl2aXNvcihQbGF0Zm9ybTo6SW50U2l6ZSBzaXpl
LCBpbnQgdGlsZVdpZHRoLCBpbnQgdGlsZUhlaWdodCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBtaW5pbXVtTnVtYmVyT2ZUaWxlc1dpZGUsIGludCBtaW5pbXVtTnVtYmVyT2ZUaWxl
c0hpZ2gsCkBAIC0xMTAsMzUgKzEyNywzNCBAQCBzdGF0aWMgRGl2aXNvciBiZXN0RGl2aXNvcihQ
bGF0Zm9ybTo6SW50U2l6ZSBzaXplLCBpbnQgdGlsZVdpZHRoLCBpbnQgdGlsZUhlaWdodAogICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZGl2aXNvckxpc3Quc2l6ZSgpOyArK2kpIHsKICAgICAg
ICAgRGl2aXNvciBkaXZpc29yID0gZGl2aXNvckxpc3RbaV07CiAKLSAgICAgICAgYm9vbCBkaXZp
c29yV2lkdGhJc1BlcmZlY3QgPSBzaXplLndpZHRoKCkgPD0gZGl2aXNvci5maXJzdCAqIHRpbGVX
aWR0aCAmJiBhYnMoc2l6ZS53aWR0aCgpIC0gZGl2aXNvci5maXJzdCAqIHRpbGVXaWR0aCkgPCB0
aWxlV2lkdGg7Ci0gICAgICAgIGJvb2wgZGl2aXNvckhlaWdodElzUGVyZmVjdCA9IHNpemUuaGVp
Z2h0KCkgPD0gZGl2aXNvci5zZWNvbmQgKiB0aWxlSGVpZ2h0ICYmIGFicyhzaXplLmhlaWdodCgp
IC0gZGl2aXNvci5zZWNvbmQgKiB0aWxlSGVpZ2h0KSA8IHRpbGVIZWlnaHQ7Ci0gICAgICAgIGJv
b2wgZGl2aXNvcldpZHRoSXNWYWxpZCA9IGRpdmlzb3IuZmlyc3QgPj0gbWluaW11bU51bWJlck9m
VGlsZXNXaWRlIHx8IGRpdmlzb3JXaWR0aElzUGVyZmVjdDsKLSAgICAgICAgYm9vbCBkaXZpc29y
SGVpZ2h0SXNWYWxpZCA9IGRpdmlzb3Iuc2Vjb25kID49IG1pbmltdW1OdW1iZXJPZlRpbGVzSGln
aCB8fCBkaXZpc29ySGVpZ2h0SXNQZXJmZWN0OwotICAgICAgICBpZiAoIWRpdmlzb3JXaWR0aElz
VmFsaWQgfHwgIWRpdmlzb3JIZWlnaHRJc1ZhbGlkKQotICAgICAgICAgICAgY29udGludWU7Ci0K
LSAgICAgICAgaWYgKGRpdmlzb3IuZmlyc3QgPiBkaXZpc29yLnNlY29uZCAmJiBkaXJlY3Rpb24g
PT0gQmFja2luZ1N0b3JlUHJpdmF0ZTo6VmVydGljYWwgJiYgIWRpdmlzb3JIZWlnaHRJc1BlcmZl
Y3QpCisgICAgICAgIGNvbnN0IGJvb2wgaXNQZXJmZWN0V2lkdGggPSBkaXZpc29ySXNQZXJmZWN0
V2lkdGgoZGl2aXNvciwgc2l6ZSwgdGlsZVdpZHRoKTsKKyAgICAgICAgY29uc3QgYm9vbCBpc1Bl
cmZlY3RIZWlnaHQgPSBkaXZpc29ySXNQZXJmZWN0SGVpZ2h0KGRpdmlzb3IsIHNpemUsIHRpbGVI
ZWlnaHQpOworICAgICAgICBjb25zdCBib29sIGlzVmFsaWRXaWR0aCA9IGRpdmlzb3IuZmlyc3Qg
Pj0gbWluaW11bU51bWJlck9mVGlsZXNXaWRlIHx8IGlzUGVyZmVjdFdpZHRoOworICAgICAgICBj
b25zdCBib29sIGlzVmFsaWRIZWlnaHQgPSBkaXZpc29yLnNlY29uZCA+PSBtaW5pbXVtTnVtYmVy
T2ZUaWxlc0hpZ2ggfHwgaXNQZXJmZWN0SGVpZ2h0OworICAgICAgICBpZiAoIWlzVmFsaWRXaWR0
aCB8fCAhaXNWYWxpZEhlaWdodCkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIGlm
IChkaXZpc29yLnNlY29uZCA+IGRpdmlzb3IuZmlyc3QgJiYgZGlyZWN0aW9uID09IEJhY2tpbmdT
dG9yZVByaXZhdGU6Okhvcml6b250YWwgJiYgIWRpdmlzb3JXaWR0aElzUGVyZmVjdCkKLSAgICAg
ICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIGlmIChkaXZpc29yV2lkdGhJc1BlcmZlY3QgfHwg
ZGl2aXNvckhlaWdodElzUGVyZmVjdCkgeworICAgICAgICBpZiAoKGlzUGVyZmVjdFdpZHRoIHx8
IGlzUGVyZmVjdEhlaWdodCkpIHsKICAgICAgICAgICAgIGJlc3REaXZpc29yID0gZGl2aXNvcjsg
Ly8gRm91bmQgYSBwZXJmZWN0IGZpdCEKICNpZiBERUJVR19USUxFTUFUUklYCi0gICAgICAgICAg
ICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6bG9nKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZl
bENyaXRpY2FsLCAiYmVzdERpdmlzb3IgZm91bmQgcGVyZmVjdCBzaXplIHdpZHRoUGVyZmVjdD0l
cyBoZWlnaHRQZXJmZWN0PSVzIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZGl2aXNvcldpZHRoSXNQZXJmZWN0ID8gInRydWUiIDogImZhbHNlIiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZGl2aXNvckhlaWdodElzUGVyZmVjdCA/ICJ0cnVlIiA6ICJm
YWxzZSIpOworICAgICAgICAgICAgQmxhY2tCZXJyeTo6UGxhdGZvcm06OmxvZyhCbGFja0JlcnJ5
OjpQbGF0Zm9ybTo6TG9nTGV2ZWxDcml0aWNhbCwgImJlc3REaXZpc29yIGZvdW5kIHBlcmZlY3Qg
c2l6ZSBpc1BlcmZlY3RXaWR0aD0lcyBpc1BlcmZlY3RIZWlnaHQ9JXMiLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpc1BlcmZlY3RXaWR0aCA/ICJ0cnVlIiA6ICJmYWxzZSIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzUGVyZmVjdEhlaWdodCA/ICJ0
cnVlIiA6ICJmYWxzZSIpOwogI2VuZGlmCiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQog
CiAgICAgICAgIC8vIFN0b3JlIGJhc2lzIG9mIGNvbXBhcmlzb24uCi0gICAgICAgIGlmICghYmVz
dERpdmlzb3IuZmlyc3QgJiYgIWJlc3REaXZpc29yLnNlY29uZCkgeworICAgICAgICBpZiAoIWJl
c3REaXZpc29yLmZpcnN0IHx8ICFiZXN0RGl2aXNvci5zZWNvbmQpIHsKICAgICAgICAgICAgIGJl
c3REaXZpc29yID0gZGl2aXNvcjsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAK
KyAgICAgICAgLy8gSWYgdGhlIGN1cnJlbnQgYmVzdCBkaXZpc29yIGFncmVlcyB3aXRoIHRoZSBw
cmVmZXJyZWQgdGlsZSBtYXRyaXggZGlyZWN0aW9uLAorICAgICAgICAvLyB0aGVuIGNvbnRpbnVl
IGlmIHRoZSBjdXJyZW50IGNhbmRpZGF0ZSBkb2VzIG5vdC4KKyAgICAgICAgaWYgKGRpdmlzb3JJ
c1ByZWZlcnJlZERpcmVjdGlvbihiZXN0RGl2aXNvciwgZGlyZWN0aW9uKSAmJiAhZGl2aXNvcklz
UHJlZmVycmVkRGlyZWN0aW9uKGRpdmlzb3IsIGRpcmVjdGlvbikpCisgICAgICAgICAgICBjb250
aW51ZTsKKwogICAgICAgICAvLyBDb21wYXJlIHJhdGlvcy4KICAgICAgICAgZmxvYXQgZGlmZjEg
PSBmYWJzKChzdGF0aWNfY2FzdDxmbG9hdD4oZGl2aXNvci5maXJzdCkgLyBzdGF0aWNfY2FzdDxm
bG9hdD4oZGl2aXNvci5zZWNvbmQpKSAtIHJhdGlvKTsKICAgICAgICAgZmxvYXQgZGlmZjIgPSBm
YWJzKChzdGF0aWNfY2FzdDxmbG9hdD4oYmVzdERpdmlzb3IuZmlyc3QpIC8gc3RhdGljX2Nhc3Q8
ZmxvYXQ+KGJlc3REaXZpc29yLnNlY29uZCkpIC0gcmF0aW8pOwo=
</data>
<flag name="review"
          id="119443"
          type_id="1"
          status="-"
          setter="rwlbuis"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119433</attachid>
            <date>2011-12-15 08:33:33 -0800</date>
            <delta_ts>2011-12-15 08:34:55 -0800</delta_ts>
            <desc>Bugfix v3 now with ChangeLog!</desc>
            <filename>122703_B.patch</filename>
            <type>text/plain</type>
            <size>6508</size>
            <attacher name="Adam Treat">manyoso</attacher>
            
              <data encoding="base64">Y29tbWl0IDJkNjJkMmUyYzQzMTBkZDZkMGY5OTU1MTU3MWE2YjhkYjZmZWQxMzcKQXV0aG9yOiBB
ZGFtIFRyZWF0IDxhdHJlYXRAcmltLmNvbT4KRGF0ZTogICBUaHUgRGVjIDE1IDEwOjU5OjM0IDIw
MTEgLTA1MDAKCiAgICAyMDExLTEyLTE1ICBBZGFtIFRyZWF0ICA8YXRyZWF0QHJpbS5jb20+CiAg
ICAKICAgICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCiAgICAKICAgICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NjA5CiAgICAgICAg
ICAgIFBSIDEyMjcwMwogICAgCiAgICAgICAgICAgIEZvciBjZXJ0YWluIGNvbmZpZ3VyYXRpb25z
IG9mIHdlYnBhZ2UgY29udGVudCBhbmQgem9vbSBsZXZlbCB3ZSB3ZXJlCiAgICAgICAgICAgIGZh
aWxpbmcgdG8gcHJvZHVjZSBhIHZhbGlkIGJhY2tpbmdzdG9yZSBtYXRyaXggYnkgYmVpbmcgdG8g
c3RyaWN0IG9uCiAgICAgICAgICAgIHdoZXRoZXIgYSBnaXZlbiBtYXRyaXggZml0cyB0aGUgcHJl
ZmVycmVkIG1hdHJpeCBvcmllbnRhdGlvbi4KICAgICAgICAgICAgVGhpcyBwYXRjaCBmaXhlcyB0
aGlzIGJ5IGluc2lzdGluZyBvbiBzdG9yaW5nIGEgY2FuZGlkYXRlIGRpdmlzb3IKICAgICAgICAg
ICAgd2hldGhlciBvciBub3QgaXQgYWdyZWVzIHdpdGggdGhlIHByZWZlcnJlZCBtYXRyaXggb3Jp
ZW50YXRpb24gYW5kIHRoZW4KICAgICAgICAgICAgY29tcGFyaW5nIGFsbCBzdWJzZXF1ZW50IGRp
dmlzb3JzLgogICAgCiAgICAgICAgICAgICogYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNw
cDoKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6ZGl2aXNvcklzUGVyZmVjdFdpZHRo
KToKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6ZGl2aXNvcklzUGVyZmVjdEhlaWdo
dCk6CiAgICAgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OmRpdmlzb3JJc1ByZWZlcnJlZERp
cmVjdGlvbik6CiAgICAgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OmJlc3REaXZpc29yKToK
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCmluZGV4IGU4M2QzYjUuLjM1OTNlM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAK
KzIwMTEtMTItMTUgIEFkYW0gVHJlYXQgIDxhdHJlYXRAcmltLmNvbT4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzQ2MDkKKyAgICAgICAgUFIgMTIyNzAzCisKKyAgICAgICAgRm9y
IGNlcnRhaW4gY29uZmlndXJhdGlvbnMgb2Ygd2VicGFnZSBjb250ZW50IGFuZCB6b29tIGxldmVs
IHdlIHdlcmUKKyAgICAgICAgZmFpbGluZyB0byBwcm9kdWNlIGEgdmFsaWQgYmFja2luZ3N0b3Jl
IG1hdHJpeCBieSBiZWluZyB0byBzdHJpY3Qgb24KKyAgICAgICAgd2hldGhlciBhIGdpdmVuIG1h
dHJpeCBmaXRzIHRoZSBwcmVmZXJyZWQgbWF0cml4IG9yaWVudGF0aW9uLgorICAgICAgICBUaGlz
IHBhdGNoIGZpeGVzIHRoaXMgYnkgaW5zaXN0aW5nIG9uIHN0b3JpbmcgYSBjYW5kaWRhdGUgZGl2
aXNvcgorICAgICAgICB3aGV0aGVyIG9yIG5vdCBpdCBhZ3JlZXMgd2l0aCB0aGUgcHJlZmVycmVk
IG1hdHJpeCBvcmllbnRhdGlvbiBhbmQgdGhlbgorICAgICAgICBjb21wYXJpbmcgYWxsIHN1YnNl
cXVlbnQgZGl2aXNvcnMuCisKKyAgICAgICAgKiBibGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUu
Y3BwOgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0V2lkdGgp
OgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0SGVpZ2h0KToK
KyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6ZGl2aXNvcklzUHJlZmVycmVkRGlyZWN0aW9u
KToKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6YmVzdERpdmlzb3IpOgorCiAyMDExLTA3
LTI4ICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgQWRkIHNxbCB0
byBzdm46aWdub3JlIGFuZCByZW1vdmUgYXBwLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9i
bGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUuY3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5
L0FwaS9CYWNraW5nU3RvcmUuY3BwCmluZGV4IGM3MDVhNTEuLjRhOWNkYTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0JhY2tpbmdTdG9yZS5jcHAKQEAgLTg2LDYgKzg2LDIz
IEBAIHN0YXRpYyBEaXZpc29yTGlzdCBkaXZpc29ycyh1bnNpZ25lZCBuKQogICAgIHJldHVybiBk
aXZpc29yczsKIH0KIAorc3RhdGljIGJvb2wgZGl2aXNvcklzUGVyZmVjdFdpZHRoKERpdmlzb3Ig
ZGl2aXNvciwgUGxhdGZvcm06OkludFNpemUgc2l6ZSwgaW50IHRpbGVXaWR0aCkKK3sKKyAgICBy
ZXR1cm4gc2l6ZS53aWR0aCgpIDw9IGRpdmlzb3IuZmlyc3QgKiB0aWxlV2lkdGggJiYgYWJzKHNp
emUud2lkdGgoKSAtIGRpdmlzb3IuZmlyc3QgKiB0aWxlV2lkdGgpIDwgdGlsZVdpZHRoOworfQor
CitzdGF0aWMgYm9vbCBkaXZpc29ySXNQZXJmZWN0SGVpZ2h0KERpdmlzb3IgZGl2aXNvciwgUGxh
dGZvcm06OkludFNpemUgc2l6ZSwgaW50IHRpbGVIZWlnaHQpCit7CisgICAgcmV0dXJuIHNpemUu
aGVpZ2h0KCkgPD0gZGl2aXNvci5zZWNvbmQgKiB0aWxlSGVpZ2h0ICYmIGFicyhzaXplLmhlaWdo
dCgpIC0gZGl2aXNvci5zZWNvbmQgKiB0aWxlSGVpZ2h0KSA8IHRpbGVIZWlnaHQ7Cit9CisKK3N0
YXRpYyBib29sIGRpdmlzb3JJc1ByZWZlcnJlZERpcmVjdGlvbihEaXZpc29yIGRpdmlzb3IsIEJh
Y2tpbmdTdG9yZVByaXZhdGU6OlRpbGVNYXRyaXhEaXJlY3Rpb24gZGlyZWN0aW9uKQoreworICAg
IGlmIChkaXJlY3Rpb24gPT0gQmFja2luZ1N0b3JlUHJpdmF0ZTo6VmVydGljYWwpCisgICAgICAg
IHJldHVybiBkaXZpc29yLnNlY29uZCA+IGRpdmlzb3IuZmlyc3Q7CisgICAgcmV0dXJuIGRpdmlz
b3IuZmlyc3QgPiBkaXZpc29yLnNlY29uZDsKK30KKwogLy8gQ29tcHV0ZSBiZXN0IGRpdmlzb3Ig
Z2l2ZW4gdGhlIHJhdGlvIGRldGVybWluZWQgYnkgc2l6ZS4KIHN0YXRpYyBEaXZpc29yIGJlc3RE
aXZpc29yKFBsYXRmb3JtOjpJbnRTaXplIHNpemUsIGludCB0aWxlV2lkdGgsIGludCB0aWxlSGVp
Z2h0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1pbmltdW1OdW1iZXJPZlRpbGVz
V2lkZSwgaW50IG1pbmltdW1OdW1iZXJPZlRpbGVzSGlnaCwKQEAgLTExMCwzNSArMTI3LDM0IEBA
IHN0YXRpYyBEaXZpc29yIGJlc3REaXZpc29yKFBsYXRmb3JtOjpJbnRTaXplIHNpemUsIGludCB0
aWxlV2lkdGgsIGludCB0aWxlSGVpZ2h0CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBkaXZp
c29yTGlzdC5zaXplKCk7ICsraSkgewogICAgICAgICBEaXZpc29yIGRpdmlzb3IgPSBkaXZpc29y
TGlzdFtpXTsKIAotICAgICAgICBib29sIGRpdmlzb3JXaWR0aElzUGVyZmVjdCA9IHNpemUud2lk
dGgoKSA8PSBkaXZpc29yLmZpcnN0ICogdGlsZVdpZHRoICYmIGFicyhzaXplLndpZHRoKCkgLSBk
aXZpc29yLmZpcnN0ICogdGlsZVdpZHRoKSA8IHRpbGVXaWR0aDsKLSAgICAgICAgYm9vbCBkaXZp
c29ySGVpZ2h0SXNQZXJmZWN0ID0gc2l6ZS5oZWlnaHQoKSA8PSBkaXZpc29yLnNlY29uZCAqIHRp
bGVIZWlnaHQgJiYgYWJzKHNpemUuaGVpZ2h0KCkgLSBkaXZpc29yLnNlY29uZCAqIHRpbGVIZWln
aHQpIDwgdGlsZUhlaWdodDsKLSAgICAgICAgYm9vbCBkaXZpc29yV2lkdGhJc1ZhbGlkID0gZGl2
aXNvci5maXJzdCA+PSBtaW5pbXVtTnVtYmVyT2ZUaWxlc1dpZGUgfHwgZGl2aXNvcldpZHRoSXNQ
ZXJmZWN0OwotICAgICAgICBib29sIGRpdmlzb3JIZWlnaHRJc1ZhbGlkID0gZGl2aXNvci5zZWNv
bmQgPj0gbWluaW11bU51bWJlck9mVGlsZXNIaWdoIHx8IGRpdmlzb3JIZWlnaHRJc1BlcmZlY3Q7
Ci0gICAgICAgIGlmICghZGl2aXNvcldpZHRoSXNWYWxpZCB8fCAhZGl2aXNvckhlaWdodElzVmFs
aWQpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBpZiAoZGl2aXNvci5maXJzdCA+
IGRpdmlzb3Iuc2Vjb25kICYmIGRpcmVjdGlvbiA9PSBCYWNraW5nU3RvcmVQcml2YXRlOjpWZXJ0
aWNhbCAmJiAhZGl2aXNvckhlaWdodElzUGVyZmVjdCkKKyAgICAgICAgY29uc3QgYm9vbCBpc1Bl
cmZlY3RXaWR0aCA9IGRpdmlzb3JJc1BlcmZlY3RXaWR0aChkaXZpc29yLCBzaXplLCB0aWxlV2lk
dGgpOworICAgICAgICBjb25zdCBib29sIGlzUGVyZmVjdEhlaWdodCA9IGRpdmlzb3JJc1BlcmZl
Y3RIZWlnaHQoZGl2aXNvciwgc2l6ZSwgdGlsZUhlaWdodCk7CisgICAgICAgIGNvbnN0IGJvb2wg
aXNWYWxpZFdpZHRoID0gZGl2aXNvci5maXJzdCA+PSBtaW5pbXVtTnVtYmVyT2ZUaWxlc1dpZGUg
fHwgaXNQZXJmZWN0V2lkdGg7CisgICAgICAgIGNvbnN0IGJvb2wgaXNWYWxpZEhlaWdodCA9IGRp
dmlzb3Iuc2Vjb25kID49IG1pbmltdW1OdW1iZXJPZlRpbGVzSGlnaCB8fCBpc1BlcmZlY3RIZWln
aHQ7CisgICAgICAgIGlmICghaXNWYWxpZFdpZHRoIHx8ICFpc1ZhbGlkSGVpZ2h0KQogICAgICAg
ICAgICAgY29udGludWU7CiAKLSAgICAgICAgaWYgKGRpdmlzb3Iuc2Vjb25kID4gZGl2aXNvci5m
aXJzdCAmJiBkaXJlY3Rpb24gPT0gQmFja2luZ1N0b3JlUHJpdmF0ZTo6SG9yaXpvbnRhbCAmJiAh
ZGl2aXNvcldpZHRoSXNQZXJmZWN0KQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAg
aWYgKGRpdmlzb3JXaWR0aElzUGVyZmVjdCB8fCBkaXZpc29ySGVpZ2h0SXNQZXJmZWN0KSB7Cisg
ICAgICAgIGlmICgoaXNQZXJmZWN0V2lkdGggfHwgaXNQZXJmZWN0SGVpZ2h0KSkgewogICAgICAg
ICAgICAgYmVzdERpdmlzb3IgPSBkaXZpc29yOyAvLyBGb3VuZCBhIHBlcmZlY3QgZml0IQogI2lm
IERFQlVHX1RJTEVNQVRSSVgKLSAgICAgICAgICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpsb2co
QmxhY2tCZXJyeTo6UGxhdGZvcm06OkxvZ0xldmVsQ3JpdGljYWwsICJiZXN0RGl2aXNvciBmb3Vu
ZCBwZXJmZWN0IHNpemUgd2lkdGhQZXJmZWN0PSVzIGhlaWdodFBlcmZlY3Q9JXMiLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXZpc29yV2lkdGhJc1BlcmZlY3QgPyAidHJ1
ZSIgOiAiZmFsc2UiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXZpc29y
SGVpZ2h0SXNQZXJmZWN0ID8gInRydWUiIDogImZhbHNlIik7CisgICAgICAgICAgICBCbGFja0Jl
cnJ5OjpQbGF0Zm9ybTo6bG9nKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZlbENyaXRpY2Fs
LCAiYmVzdERpdmlzb3IgZm91bmQgcGVyZmVjdCBzaXplIGlzUGVyZmVjdFdpZHRoPSVzIGlzUGVy
ZmVjdEhlaWdodD0lcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzUGVy
ZmVjdFdpZHRoID8gInRydWUiIDogImZhbHNlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaXNQZXJmZWN0SGVpZ2h0ID8gInRydWUiIDogImZhbHNlIik7CiAjZW5kaWYKICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAKICAgICAgICAgLy8gU3RvcmUgYmFzaXMgb2Yg
Y29tcGFyaXNvbi4KLSAgICAgICAgaWYgKCFiZXN0RGl2aXNvci5maXJzdCAmJiAhYmVzdERpdmlz
b3Iuc2Vjb25kKSB7CisgICAgICAgIGlmICghYmVzdERpdmlzb3IuZmlyc3QgfHwgIWJlc3REaXZp
c29yLnNlY29uZCkgewogICAgICAgICAgICAgYmVzdERpdmlzb3IgPSBkaXZpc29yOwogICAgICAg
ICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAorICAgICAgICAvLyBJZiB0aGUgY3VycmVudCBi
ZXN0IGRpdmlzb3IgYWdyZWVzIHdpdGggdGhlIHByZWZlcnJlZCB0aWxlIG1hdHJpeCBkaXJlY3Rp
b24sCisgICAgICAgIC8vIHRoZW4gY29udGludWUgaWYgdGhlIGN1cnJlbnQgY2FuZGlkYXRlIGRv
ZXMgbm90LgorICAgICAgICBpZiAoZGl2aXNvcklzUHJlZmVycmVkRGlyZWN0aW9uKGJlc3REaXZp
c29yLCBkaXJlY3Rpb24pICYmICFkaXZpc29ySXNQcmVmZXJyZWREaXJlY3Rpb24oZGl2aXNvciwg
ZGlyZWN0aW9uKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCiAgICAgICAgIC8vIENvbXBhcmUg
cmF0aW9zLgogICAgICAgICBmbG9hdCBkaWZmMSA9IGZhYnMoKHN0YXRpY19jYXN0PGZsb2F0Pihk
aXZpc29yLmZpcnN0KSAvIHN0YXRpY19jYXN0PGZsb2F0PihkaXZpc29yLnNlY29uZCkpIC0gcmF0
aW8pOwogICAgICAgICBmbG9hdCBkaWZmMiA9IGZhYnMoKHN0YXRpY19jYXN0PGZsb2F0PihiZXN0
RGl2aXNvci5maXJzdCkgLyBzdGF0aWNfY2FzdDxmbG9hdD4oYmVzdERpdmlzb3Iuc2Vjb25kKSkg
LSByYXRpbyk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119434</attachid>
            <date>2011-12-15 08:34:55 -0800</date>
            <delta_ts>2011-12-15 09:33:18 -0800</delta_ts>
            <desc>Bugfix v4 removing useless &apos;()&apos;</desc>
            <filename>122703_C.patch</filename>
            <type>text/plain</type>
            <size>6506</size>
            <attacher name="Adam Treat">manyoso</attacher>
            
              <data encoding="base64">Y29tbWl0IDdjOGMzZDFjM2U5Zjk5M2MyYzAyN2MwYTkxOWM1NTZhZDlmZjgxNTcKQXV0aG9yOiBB
ZGFtIFRyZWF0IDxhdHJlYXRAcmltLmNvbT4KRGF0ZTogICBUaHUgRGVjIDE1IDEwOjU5OjM0IDIw
MTEgLTA1MDAKCiAgICAyMDExLTEyLTE1ICBBZGFtIFRyZWF0ICA8YXRyZWF0QHJpbS5jb20+CiAg
ICAKICAgICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCiAgICAKICAgICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NjA5CiAgICAgICAg
ICAgIFBSIDEyMjcwMwogICAgCiAgICAgICAgICAgIEZvciBjZXJ0YWluIGNvbmZpZ3VyYXRpb25z
IG9mIHdlYnBhZ2UgY29udGVudCBhbmQgem9vbSBsZXZlbCB3ZSB3ZXJlCiAgICAgICAgICAgIGZh
aWxpbmcgdG8gcHJvZHVjZSBhIHZhbGlkIGJhY2tpbmdzdG9yZSBtYXRyaXggYnkgYmVpbmcgdG8g
c3RyaWN0IG9uCiAgICAgICAgICAgIHdoZXRoZXIgYSBnaXZlbiBtYXRyaXggZml0cyB0aGUgcHJl
ZmVycmVkIG1hdHJpeCBvcmllbnRhdGlvbi4KICAgICAgICAgICAgVGhpcyBwYXRjaCBmaXhlcyB0
aGlzIGJ5IGluc2lzdGluZyBvbiBzdG9yaW5nIGEgY2FuZGlkYXRlIGRpdmlzb3IKICAgICAgICAg
ICAgd2hldGhlciBvciBub3QgaXQgYWdyZWVzIHdpdGggdGhlIHByZWZlcnJlZCBtYXRyaXggb3Jp
ZW50YXRpb24gYW5kIHRoZW4KICAgICAgICAgICAgY29tcGFyaW5nIGFsbCBzdWJzZXF1ZW50IGRp
dmlzb3JzLgogICAgCiAgICAgICAgICAgICogYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNw
cDoKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6ZGl2aXNvcklzUGVyZmVjdFdpZHRo
KToKICAgICAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6ZGl2aXNvcklzUGVyZmVjdEhlaWdo
dCk6CiAgICAgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OmRpdmlzb3JJc1ByZWZlcnJlZERp
cmVjdGlvbik6CiAgICAgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OmJlc3REaXZpc29yKToK
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCmluZGV4IGU4M2QzYjUuLjM1OTNlM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAK
KzIwMTEtMTItMTUgIEFkYW0gVHJlYXQgIDxhdHJlYXRAcmltLmNvbT4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzQ2MDkKKyAgICAgICAgUFIgMTIyNzAzCisKKyAgICAgICAgRm9y
IGNlcnRhaW4gY29uZmlndXJhdGlvbnMgb2Ygd2VicGFnZSBjb250ZW50IGFuZCB6b29tIGxldmVs
IHdlIHdlcmUKKyAgICAgICAgZmFpbGluZyB0byBwcm9kdWNlIGEgdmFsaWQgYmFja2luZ3N0b3Jl
IG1hdHJpeCBieSBiZWluZyB0byBzdHJpY3Qgb24KKyAgICAgICAgd2hldGhlciBhIGdpdmVuIG1h
dHJpeCBmaXRzIHRoZSBwcmVmZXJyZWQgbWF0cml4IG9yaWVudGF0aW9uLgorICAgICAgICBUaGlz
IHBhdGNoIGZpeGVzIHRoaXMgYnkgaW5zaXN0aW5nIG9uIHN0b3JpbmcgYSBjYW5kaWRhdGUgZGl2
aXNvcgorICAgICAgICB3aGV0aGVyIG9yIG5vdCBpdCBhZ3JlZXMgd2l0aCB0aGUgcHJlZmVycmVk
IG1hdHJpeCBvcmllbnRhdGlvbiBhbmQgdGhlbgorICAgICAgICBjb21wYXJpbmcgYWxsIHN1YnNl
cXVlbnQgZGl2aXNvcnMuCisKKyAgICAgICAgKiBibGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUu
Y3BwOgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0V2lkdGgp
OgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpkaXZpc29ySXNQZXJmZWN0SGVpZ2h0KToK
KyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6ZGl2aXNvcklzUHJlZmVycmVkRGlyZWN0aW9u
KToKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6YmVzdERpdmlzb3IpOgorCiAyMDExLTA3
LTI4ICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgQWRkIHNxbCB0
byBzdm46aWdub3JlIGFuZCByZW1vdmUgYXBwLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9i
bGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUuY3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5
L0FwaS9CYWNraW5nU3RvcmUuY3BwCmluZGV4IGM3MDVhNTEuLjMwZjQ3MWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0JhY2tpbmdTdG9yZS5jcHAKQEAgLTg2LDYgKzg2LDIz
IEBAIHN0YXRpYyBEaXZpc29yTGlzdCBkaXZpc29ycyh1bnNpZ25lZCBuKQogICAgIHJldHVybiBk
aXZpc29yczsKIH0KIAorc3RhdGljIGJvb2wgZGl2aXNvcklzUGVyZmVjdFdpZHRoKERpdmlzb3Ig
ZGl2aXNvciwgUGxhdGZvcm06OkludFNpemUgc2l6ZSwgaW50IHRpbGVXaWR0aCkKK3sKKyAgICBy
ZXR1cm4gc2l6ZS53aWR0aCgpIDw9IGRpdmlzb3IuZmlyc3QgKiB0aWxlV2lkdGggJiYgYWJzKHNp
emUud2lkdGgoKSAtIGRpdmlzb3IuZmlyc3QgKiB0aWxlV2lkdGgpIDwgdGlsZVdpZHRoOworfQor
CitzdGF0aWMgYm9vbCBkaXZpc29ySXNQZXJmZWN0SGVpZ2h0KERpdmlzb3IgZGl2aXNvciwgUGxh
dGZvcm06OkludFNpemUgc2l6ZSwgaW50IHRpbGVIZWlnaHQpCit7CisgICAgcmV0dXJuIHNpemUu
aGVpZ2h0KCkgPD0gZGl2aXNvci5zZWNvbmQgKiB0aWxlSGVpZ2h0ICYmIGFicyhzaXplLmhlaWdo
dCgpIC0gZGl2aXNvci5zZWNvbmQgKiB0aWxlSGVpZ2h0KSA8IHRpbGVIZWlnaHQ7Cit9CisKK3N0
YXRpYyBib29sIGRpdmlzb3JJc1ByZWZlcnJlZERpcmVjdGlvbihEaXZpc29yIGRpdmlzb3IsIEJh
Y2tpbmdTdG9yZVByaXZhdGU6OlRpbGVNYXRyaXhEaXJlY3Rpb24gZGlyZWN0aW9uKQoreworICAg
IGlmIChkaXJlY3Rpb24gPT0gQmFja2luZ1N0b3JlUHJpdmF0ZTo6VmVydGljYWwpCisgICAgICAg
IHJldHVybiBkaXZpc29yLnNlY29uZCA+IGRpdmlzb3IuZmlyc3Q7CisgICAgcmV0dXJuIGRpdmlz
b3IuZmlyc3QgPiBkaXZpc29yLnNlY29uZDsKK30KKwogLy8gQ29tcHV0ZSBiZXN0IGRpdmlzb3Ig
Z2l2ZW4gdGhlIHJhdGlvIGRldGVybWluZWQgYnkgc2l6ZS4KIHN0YXRpYyBEaXZpc29yIGJlc3RE
aXZpc29yKFBsYXRmb3JtOjpJbnRTaXplIHNpemUsIGludCB0aWxlV2lkdGgsIGludCB0aWxlSGVp
Z2h0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1pbmltdW1OdW1iZXJPZlRpbGVz
V2lkZSwgaW50IG1pbmltdW1OdW1iZXJPZlRpbGVzSGlnaCwKQEAgLTExMCwzNSArMTI3LDM0IEBA
IHN0YXRpYyBEaXZpc29yIGJlc3REaXZpc29yKFBsYXRmb3JtOjpJbnRTaXplIHNpemUsIGludCB0
aWxlV2lkdGgsIGludCB0aWxlSGVpZ2h0CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBkaXZp
c29yTGlzdC5zaXplKCk7ICsraSkgewogICAgICAgICBEaXZpc29yIGRpdmlzb3IgPSBkaXZpc29y
TGlzdFtpXTsKIAotICAgICAgICBib29sIGRpdmlzb3JXaWR0aElzUGVyZmVjdCA9IHNpemUud2lk
dGgoKSA8PSBkaXZpc29yLmZpcnN0ICogdGlsZVdpZHRoICYmIGFicyhzaXplLndpZHRoKCkgLSBk
aXZpc29yLmZpcnN0ICogdGlsZVdpZHRoKSA8IHRpbGVXaWR0aDsKLSAgICAgICAgYm9vbCBkaXZp
c29ySGVpZ2h0SXNQZXJmZWN0ID0gc2l6ZS5oZWlnaHQoKSA8PSBkaXZpc29yLnNlY29uZCAqIHRp
bGVIZWlnaHQgJiYgYWJzKHNpemUuaGVpZ2h0KCkgLSBkaXZpc29yLnNlY29uZCAqIHRpbGVIZWln
aHQpIDwgdGlsZUhlaWdodDsKLSAgICAgICAgYm9vbCBkaXZpc29yV2lkdGhJc1ZhbGlkID0gZGl2
aXNvci5maXJzdCA+PSBtaW5pbXVtTnVtYmVyT2ZUaWxlc1dpZGUgfHwgZGl2aXNvcldpZHRoSXNQ
ZXJmZWN0OwotICAgICAgICBib29sIGRpdmlzb3JIZWlnaHRJc1ZhbGlkID0gZGl2aXNvci5zZWNv
bmQgPj0gbWluaW11bU51bWJlck9mVGlsZXNIaWdoIHx8IGRpdmlzb3JIZWlnaHRJc1BlcmZlY3Q7
Ci0gICAgICAgIGlmICghZGl2aXNvcldpZHRoSXNWYWxpZCB8fCAhZGl2aXNvckhlaWdodElzVmFs
aWQpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBpZiAoZGl2aXNvci5maXJzdCA+
IGRpdmlzb3Iuc2Vjb25kICYmIGRpcmVjdGlvbiA9PSBCYWNraW5nU3RvcmVQcml2YXRlOjpWZXJ0
aWNhbCAmJiAhZGl2aXNvckhlaWdodElzUGVyZmVjdCkKKyAgICAgICAgY29uc3QgYm9vbCBpc1Bl
cmZlY3RXaWR0aCA9IGRpdmlzb3JJc1BlcmZlY3RXaWR0aChkaXZpc29yLCBzaXplLCB0aWxlV2lk
dGgpOworICAgICAgICBjb25zdCBib29sIGlzUGVyZmVjdEhlaWdodCA9IGRpdmlzb3JJc1BlcmZl
Y3RIZWlnaHQoZGl2aXNvciwgc2l6ZSwgdGlsZUhlaWdodCk7CisgICAgICAgIGNvbnN0IGJvb2wg
aXNWYWxpZFdpZHRoID0gZGl2aXNvci5maXJzdCA+PSBtaW5pbXVtTnVtYmVyT2ZUaWxlc1dpZGUg
fHwgaXNQZXJmZWN0V2lkdGg7CisgICAgICAgIGNvbnN0IGJvb2wgaXNWYWxpZEhlaWdodCA9IGRp
dmlzb3Iuc2Vjb25kID49IG1pbmltdW1OdW1iZXJPZlRpbGVzSGlnaCB8fCBpc1BlcmZlY3RIZWln
aHQ7CisgICAgICAgIGlmICghaXNWYWxpZFdpZHRoIHx8ICFpc1ZhbGlkSGVpZ2h0KQogICAgICAg
ICAgICAgY29udGludWU7CiAKLSAgICAgICAgaWYgKGRpdmlzb3Iuc2Vjb25kID4gZGl2aXNvci5m
aXJzdCAmJiBkaXJlY3Rpb24gPT0gQmFja2luZ1N0b3JlUHJpdmF0ZTo6SG9yaXpvbnRhbCAmJiAh
ZGl2aXNvcldpZHRoSXNQZXJmZWN0KQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAg
aWYgKGRpdmlzb3JXaWR0aElzUGVyZmVjdCB8fCBkaXZpc29ySGVpZ2h0SXNQZXJmZWN0KSB7Cisg
ICAgICAgIGlmIChpc1BlcmZlY3RXaWR0aCB8fCBpc1BlcmZlY3RIZWlnaHQpIHsKICAgICAgICAg
ICAgIGJlc3REaXZpc29yID0gZGl2aXNvcjsgLy8gRm91bmQgYSBwZXJmZWN0IGZpdCEKICNpZiBE
RUJVR19USUxFTUFUUklYCi0gICAgICAgICAgICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6bG9nKEJs
YWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZlbENyaXRpY2FsLCAiYmVzdERpdmlzb3IgZm91bmQg
cGVyZmVjdCBzaXplIHdpZHRoUGVyZmVjdD0lcyBoZWlnaHRQZXJmZWN0PSVzIiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZGl2aXNvcldpZHRoSXNQZXJmZWN0ID8gInRydWUi
IDogImZhbHNlIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGl2aXNvckhl
aWdodElzUGVyZmVjdCA/ICJ0cnVlIiA6ICJmYWxzZSIpOworICAgICAgICAgICAgQmxhY2tCZXJy
eTo6UGxhdGZvcm06OmxvZyhCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6TG9nTGV2ZWxDcml0aWNhbCwg
ImJlc3REaXZpc29yIGZvdW5kIHBlcmZlY3Qgc2l6ZSBpc1BlcmZlY3RXaWR0aD0lcyBpc1BlcmZl
Y3RIZWlnaHQ9JXMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc1BlcmZl
Y3RXaWR0aCA/ICJ0cnVlIiA6ICJmYWxzZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGlzUGVyZmVjdEhlaWdodCA/ICJ0cnVlIiA6ICJmYWxzZSIpOwogI2VuZGlmCiAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgfQogCiAgICAgICAgIC8vIFN0b3JlIGJhc2lzIG9mIGNv
bXBhcmlzb24uCi0gICAgICAgIGlmICghYmVzdERpdmlzb3IuZmlyc3QgJiYgIWJlc3REaXZpc29y
LnNlY29uZCkgeworICAgICAgICBpZiAoIWJlc3REaXZpc29yLmZpcnN0IHx8ICFiZXN0RGl2aXNv
ci5zZWNvbmQpIHsKICAgICAgICAgICAgIGJlc3REaXZpc29yID0gZGl2aXNvcjsKICAgICAgICAg
ICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAKKyAgICAgICAgLy8gSWYgdGhlIGN1cnJlbnQgYmVz
dCBkaXZpc29yIGFncmVlcyB3aXRoIHRoZSBwcmVmZXJyZWQgdGlsZSBtYXRyaXggZGlyZWN0aW9u
LAorICAgICAgICAvLyB0aGVuIGNvbnRpbnVlIGlmIHRoZSBjdXJyZW50IGNhbmRpZGF0ZSBkb2Vz
IG5vdC4KKyAgICAgICAgaWYgKGRpdmlzb3JJc1ByZWZlcnJlZERpcmVjdGlvbihiZXN0RGl2aXNv
ciwgZGlyZWN0aW9uKSAmJiAhZGl2aXNvcklzUHJlZmVycmVkRGlyZWN0aW9uKGRpdmlzb3IsIGRp
cmVjdGlvbikpCisgICAgICAgICAgICBjb250aW51ZTsKKwogICAgICAgICAvLyBDb21wYXJlIHJh
dGlvcy4KICAgICAgICAgZmxvYXQgZGlmZjEgPSBmYWJzKChzdGF0aWNfY2FzdDxmbG9hdD4oZGl2
aXNvci5maXJzdCkgLyBzdGF0aWNfY2FzdDxmbG9hdD4oZGl2aXNvci5zZWNvbmQpKSAtIHJhdGlv
KTsKICAgICAgICAgZmxvYXQgZGlmZjIgPSBmYWJzKChzdGF0aWNfY2FzdDxmbG9hdD4oYmVzdERp
dmlzb3IuZmlyc3QpIC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KGJlc3REaXZpc29yLnNlY29uZCkpIC0g
cmF0aW8pOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>