<?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>73922</bug_id>
          
          <creation_ts>2011-12-06 07:18:31 -0800</creation_ts>
          <short_desc>[Qt] Public API watch dog auto test.</short_desc>
          <delta_ts>2012-01-20 02:05:07 -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="Jocelyn Turcotte">jturcotte</reporter>
          <assigned_to name="Jocelyn Turcotte">jturcotte</assigned_to>
          <cc>hausmann</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>515894</commentid>
    <comment_count>0</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2011-12-06 07:18:31 -0800</bug_when>
    <thetext>[Qt] Public API watch dog auto test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>515897</commentid>
    <comment_count>1</comment_count>
      <attachid>118048</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2011-12-06 07:22:10 -0800</bug_when>
    <thetext>Created attachment 118048
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>515904</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-06 07:35:23 -0800</bug_when>
    <thetext>Attachment 118048 did not pass style-queue:

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

Source/WebKit2/UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:111:  Line contains only semicolon. If this should be an empty statement, use { } instead.  [whitespace/semicolon] [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>515911</commentid>
    <comment_count>3</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2011-12-06 07:47:00 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Attachment 118048 [details] did not pass style-queue:

Please ignore that one, it&apos;s on its own line to make editing the list easier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516812</commentid>
    <comment_count>4</comment_count>
      <attachid>118048</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-12-07 11:56:17 -0800</bug_when>
    <thetext>Comment on attachment 118048
Patch

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

&gt; Source/WebKit2/UIProcess/API/qt/tests/publicapi/publicapi.pro:3
&gt; +DEFINES += IMPORT_DIR=\&quot;\\\&quot;$${ROOT_BUILD_DIR}$${QMAKE_DIR_SEP}imports\\\&quot;\&quot;

Would it make sense to have this in tests.pri shared with qmltests?

&gt; Source/WebKit2/UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:126
&gt; +    QVariant val = property.read(obj);
&gt; +    if (val.type() == QVariant::UserType) {
&gt; +        QObject* childObj = *reinterpret_cast&lt;QObject**&gt;(val.data());
&gt; +        if (childObj)

I think you can write this as

    if (QObject* childObj = qvariant_cast&lt;QObject*&gt;(val)) {
    }

Even if that doesn&apos;t work I&apos;m almost sure there&apos;s a nicer way instead of using a reinterpret_cast on val.data() :)
&lt;/nitpick&gt;

&gt; Source/WebKit2/UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:157
&gt; +    view.setSource(QUrl(QUICK_TEST_SOURCE_DIR &quot;/tst_publicapi.qml&quot;));

I think instead of a separate file you can also use a data url here. Saves you the dummy external file :). I think some other auto-test uses that. Or no, I think Qt WTR uses that trick :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538626</commentid>
    <comment_count>5</comment_count>
      <attachid>123107</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-01-19 04:43:08 -0800</bug_when>
    <thetext>Created attachment 123107
Patch

Updated the patch to work with the latest API.
A signal now contains a QWebNavigationRequest which wasn&apos;t possible to check just with the root item.
The approach is now to manually keep a list of types to check and access their ::staticMetaObject directly.
Firing up a WebView in a QQuickView or accessing a QVariant value isn&apos;t necessary anymore.
The semicolon style error is intentional to make copy-pasting the API in the source file easier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538629</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-19 04:47:08 -0800</bug_when>
    <thetext>Attachment 123107 did not pass style-queue:

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

Source/WebKit2/UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:77:  Line contains only semicolon. If this should be an empty statement, use { } instead.  [whitespace/semicolon] [5]
Source/WebKit2/UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:108:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Total errors found: 2 in 5 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>538673</commentid>
    <comment_count>7</comment_count>
      <attachid>123121</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-01-19 06:55:57 -0800</bug_when>
    <thetext>Created attachment 123121
Patch

Add the style fix that was lying in my working tree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538676</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-19 07:00:27 -0800</bug_when>
    <thetext>Attachment 123121 did not pass style-queue:

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

Source/WebKit2/UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:77:  Line contains only semicolon. If this should be an empty statement, use { } instead.  [whitespace/semicolon] [5]
Total errors found: 1 in 5 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>539359</commentid>
    <comment_count>9</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-01-20 02:05:07 -0800</bug_when>
    <thetext>Committed r105498: &lt;http://trac.webkit.org/changeset/105498&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118048</attachid>
            <date>2011-12-06 07:22:10 -0800</date>
            <delta_ts>2012-01-19 04:43:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-73922-20111206162204.patch</filename>
            <type>text/plain</type>
            <size>11797</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAyMTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMjU4YTY5MTg5ZDY4MmU5
YmZhMzQxZGUxZjkzNWQ5N2FkZTk3ZGYxNC4uNGQ5NGQ1YTcwODE5ZDI5MzVmZGU1NGIzZTM4MTUy
NmZkZmU5N2I3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDExLTEyLTA2ICBKb2Nl
bHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0
XSBQdWJsaWMgQVBJIHdhdGNoIGRvZyBhdXRvIHRlc3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MzkyMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgdGVzdCBhaW1zIHRvIHByZXZlbnQgdW5pbnRl
bmRlZC91bmFwcHJvdmVkCisgICAgICAgIG1vZGlmaWNhdGlvbnMgdG8gdGhlIHB1YmxpYyBRTUwg
QVBJLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNhcGkvcHVibGlj
YXBpLnBybzogQWRkZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNh
cGkvdHN0X3B1YmxpY2FwaS5jcHA6IEFkZGVkLgorICAgICAgICAoZ2F0aGVyQVBJKToKKyAgICAg
ICAgKHRzdF9wdWJsaWNhcGk6OnB1YmxpY0FQSSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9x
dC90ZXN0cy9wdWJsaWNhcGkvdHN0X3B1YmxpY2FwaS5xbWw6IEFkZGVkLgorCiAyMDExLTEyLTA1
ICBJZ29yIE9saXZlaXJhICA8aWdvci5vbGl2ZWlyYUBvcGVuYm9zc2Eub3JnPgogCiAgICAgICAg
IFtRdF1bV0syXSBGcmFtZSBpcyBub3QgYmVpbmcgc2hvd2VkIGluIHRoZSBzY3JlZW4gd2hlbiBm
cmFtZUxvYWRDb21wbGV0ZWQgaXMgY2FsbGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3B1YmxpY2FwaS9wdWJsaWNhcGkucHJvIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNhcGkvcHVibGljYXBpLnBybwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi40ODdmNmQ0MGQ1NGFkYTg2OTE0OGNjZmMxYjIxMzM5MzYyYjk2ZmFlCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNh
cGkvcHVibGljYXBpLnBybwpAQCAtMCwwICsxLDQgQEAKK2luY2x1ZGUoLi4vdGVzdHMucHJpKQor
REVGSU5FUyArPSBRVUlDS19URVNUX1NPVVJDRV9ESVI9XCJcXFwiJCRQV0RcXFwiXCIKK0RFRklO
RVMgKz0gSU1QT1JUX0RJUj1cIlxcXCIkJHtST09UX0JVSUxEX0RJUn0kJHtRTUFLRV9ESVJfU0VQ
fWltcG9ydHNcXFwiXCIKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC90ZXN0cy9wdWJsaWNhcGkvdHN0X3B1YmxpY2FwaS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3B1YmxpY2FwaS90c3RfcHVibGljYXBpLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi44N2JlNjQzODUwNjU5MDlkYmI1MDM4YjIzNDE4MmI2YzQ0ZmVjNGI0Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNhcGkv
dHN0X3B1YmxpY2FwaS5jcHAKQEAgLTAsMCArMSwxNzYgQEAKKy8qCisgICAgQ29weXJpZ2h0IChD
KSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorCisg
ICAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0
IGFuZC9vcgorICAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljCisgICAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29m
dHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgICAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBv
ciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICAgVGhpcyBsaWJyYXJ5
IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgICAg
YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu
dHkgb2YKKyAgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuICBTZWUgdGhlIEdOVQorICAgIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm
b3IgbW9yZSBkZXRhaWxzLgorCisgICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAgIGFsb25nIHdpdGgg
dGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRv
CisgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3Ry
ZWV0LCBGaWZ0aCBGbG9vciwKKyAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyovCisK
KyNpbmNsdWRlICIuLi91dGlsLmgiCisKKyNpbmNsdWRlIDxRRGVjbGFyYXRpdmVFbmdpbmU+Cisj
aW5jbHVkZSA8UU1ldGFFbnVtPgorI2luY2x1ZGUgPFFNZXRhTWV0aG9kPgorI2luY2x1ZGUgPFFN
ZXRhT2JqZWN0PgorI2luY2x1ZGUgPFFNZXRhUHJvcGVydHk+CisjaW5jbHVkZSA8UVF1aWNrSXRl
bT4KKyNpbmNsdWRlIDxRUXVpY2tWaWV3PgorI2luY2x1ZGUgPFF0VGVzdC9RdFRlc3Q+CisKK2Ns
YXNzIHRzdF9wdWJsaWNhcGkgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKK3ByaXZh
dGUgc2xvdHM6CisgICAgdm9pZCBwdWJsaWNBUEkoKTsKK3ByaXZhdGU6CisgICAgc3RhdGljIFFT
dHJpbmdMaXN0IGV4cGVjdGVkQVBJOworfTsKKworUVN0cmluZ0xpc3QgdHN0X3B1YmxpY2FwaTo6
ZXhwZWN0ZWRBUEkgPSBRU3RyaW5nTGlzdCgpCisgICAgPDwgIlFRdWlja1dlYlZpZXcuQWNjZXB0
UmVxdWVzdCAtLT4gTmF2aWdhdGlvblJlcXVlc3RBY3Rpb24iCisgICAgPDwgIlFRdWlja1dlYlZp
ZXcuSWdub3JlUmVxdWVzdCAtLT4gTmF2aWdhdGlvblJlcXVlc3RBY3Rpb24iCisgICAgPDwgIlFR
dWlja1dlYlZpZXcuRG93bmxvYWRSZXF1ZXN0IC0tPiBOYXZpZ2F0aW9uUmVxdWVzdEFjdGlvbiIK
KyAgICA8PCAiUVF1aWNrV2ViVmlldy5FbmdpbmVFcnJvciAtLT4gRXJyb3JUeXBlIgorICAgIDw8
ICJRUXVpY2tXZWJWaWV3Lk5ldHdvcmtFcnJvciAtLT4gRXJyb3JUeXBlIgorICAgIDw8ICJRUXVp
Y2tXZWJWaWV3Lkh0dHBFcnJvciAtLT4gRXJyb3JUeXBlIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3
LkRvd25sb2FkRXJyb3IgLS0+IEVycm9yVHlwZSIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy50aXRs
ZSAtLT4gUVN0cmluZyIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy51cmwgLS0+IFFVcmwiCisgICAg
PDwgIlFRdWlja1dlYlZpZXcubG9hZFByb2dyZXNzIC0tPiBpbnQiCisgICAgPDwgIlFRdWlja1dl
YlZpZXcuY2FuR29CYWNrIC0tPiBib29sIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmNhbkdvRm9y
d2FyZCAtLT4gYm9vbCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5sb2FkaW5nIC0tPiBib29sIgor
ICAgIDw8ICJRUXVpY2tXZWJWaWV3LmNhblJlbG9hZCAtLT4gYm9vbCIKKyAgICA8PCAiUVF1aWNr
V2ViVmlldy5wcmVmZXJlbmNlcyAtLT4gUVdlYlByZWZlcmVuY2VzKiIKKyAgICA8PCAiUVF1aWNr
V2ViVmlldy5wcmVmZXJlbmNlcy5hdXRvTG9hZEltYWdlcyAtLT4gYm9vbCIKKyAgICA8PCAiUVF1
aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5qYXZhc2NyaXB0RW5hYmxlZCAtLT4gYm9vbCIKKyAgICA8
PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5wbHVnaW5zRW5hYmxlZCAtLT4gYm9vbCIKKyAg
ICA8PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5vZmZsaW5lV2ViQXBwbGljYXRpb25DYWNo
ZUVuYWJsZWQgLS0+IGJvb2wiCisgICAgPDwgIlFRdWlja1dlYlZpZXcucHJlZmVyZW5jZXMubG9j
YWxTdG9yYWdlRW5hYmxlZCAtLT4gYm9vbCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJl
bmNlcy54c3NBdWRpdGluZ0VuYWJsZWQgLS0+IGJvb2wiCisgICAgPDwgIlFRdWlja1dlYlZpZXcu
cHJlZmVyZW5jZXMucHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCAtLT4gYm9vbCIKKyAgICA8PCAiUVF1
aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5kbnNQcmVmZXRjaEVuYWJsZWQgLS0+IGJvb2wiCisgICAg
PDwgIlFRdWlja1dlYlZpZXcucHJlZmVyZW5jZXMubmF2aWdhdG9yUXRPYmplY3RFbmFibGVkIC0t
PiBib29sIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LnByZWZlcmVuY2VzLnN0YW5kYXJkRm9udEZh
bWlseSAtLT4gUVN0cmluZyIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5maXhl
ZEZvbnRGYW1pbHkgLS0+IFFTdHJpbmciCisgICAgPDwgIlFRdWlja1dlYlZpZXcucHJlZmVyZW5j
ZXMuc2VyaWZGb250RmFtaWx5IC0tPiBRU3RyaW5nIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LnBy
ZWZlcmVuY2VzLnNhbnNTZXJpZkZvbnRGYW1pbHkgLS0+IFFTdHJpbmciCisgICAgPDwgIlFRdWlj
a1dlYlZpZXcucHJlZmVyZW5jZXMuY3Vyc2l2ZUZvbnRGYW1pbHkgLS0+IFFTdHJpbmciCisgICAg
PDwgIlFRdWlja1dlYlZpZXcucHJlZmVyZW5jZXMuZmFudGFzeUZvbnRGYW1pbHkgLS0+IFFTdHJp
bmciCisgICAgPDwgIlFRdWlja1dlYlZpZXcucHJlZmVyZW5jZXMubWluaW11bUZvbnRTaXplIC0t
PiB1aW50IgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LnByZWZlcmVuY2VzLmRlZmF1bHRGb250U2l6
ZSAtLT4gdWludCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5kZWZhdWx0Rml4
ZWRGb250U2l6ZSAtLT4gdWludCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5h
dXRvTG9hZEltYWdlc0NoYW5nZWQoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5w
cmVmZXJlbmNlcy5wbHVnaW5zRW5hYmxlZENoYW5nZWQoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1
aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5qYXZhc2NyaXB0RW5hYmxlZENoYW5nZWQoKSAtLT4gdm9p
ZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5vZmZsaW5lV2ViQXBwbGljYXRp
b25DYWNoZUVuYWJsZWRDaGFuZ2VkKCkgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcu
cHJlZmVyZW5jZXMubG9jYWxTdG9yYWdlRW5hYmxlZENoYW5nZWQoKSAtLT4gdm9pZCIKKyAgICA8
PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJlbmNlcy54c3NBdWRpdGluZ0VuYWJsZWRDaGFuZ2VkKCkg
LS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcucHJlZmVyZW5jZXMucHJpdmF0ZUJyb3dz
aW5nRW5hYmxlZENoYW5nZWQoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wcmVm
ZXJlbmNlcy5kbnNQcmVmZXRjaEVuYWJsZWRDaGFuZ2VkKCkgLS0+IHZvaWQiCisgICAgPDwgIlFR
dWlja1dlYlZpZXcucHJlZmVyZW5jZXMubmF2aWdhdG9yUXRPYmplY3RFbmFibGVkQ2hhbmdlZCgp
IC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LnByZWZlcmVuY2VzLnN0YW5kYXJkRm9u
dEZhbWlseUNoYW5nZWQoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJl
bmNlcy5maXhlZEZvbnRGYW1pbHlDaGFuZ2VkKCkgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dl
YlZpZXcucHJlZmVyZW5jZXMuc2VyaWZGb250RmFtaWx5Q2hhbmdlZCgpIC0tPiB2b2lkIgorICAg
IDw8ICJRUXVpY2tXZWJWaWV3LnByZWZlcmVuY2VzLnNhbnNTZXJpZkZvbnRGYW1pbHlDaGFuZ2Vk
KCkgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcucHJlZmVyZW5jZXMuY3Vyc2l2ZUZv
bnRGYW1pbHlDaGFuZ2VkKCkgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcucHJlZmVy
ZW5jZXMuZmFudGFzeUZvbnRGYW1pbHlDaGFuZ2VkKCkgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlj
a1dlYlZpZXcucHJlZmVyZW5jZXMubWluaW11bUZvbnRTaXplQ2hhbmdlZCgpIC0tPiB2b2lkIgor
ICAgIDw8ICJRUXVpY2tXZWJWaWV3LnByZWZlcmVuY2VzLmRlZmF1bHRGb250U2l6ZUNoYW5nZWQo
KSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wcmVmZXJlbmNlcy5kZWZhdWx0Rml4
ZWRGb250U2l6ZUNoYW5nZWQoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wYWdl
IC0tPiBRUXVpY2tXZWJQYWdlKiIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy50aXRsZUNoYW5nZWQo
UVN0cmluZykgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcuc3RhdHVzQmFyTWVzc2Fn
ZUNoYW5nZWQoUVN0cmluZykgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcubG9hZFN0
YXJ0ZWQoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5sb2FkU3VjY2VlZGVkKCkg
LS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcubG9hZEZhaWxlZChRUXVpY2tXZWJWaWV3
OjpFcnJvclR5cGUsaW50LFFVcmwpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3Lmxv
YWRQcm9ncmVzc0NoYW5nZWQoaW50KSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy51
cmxDaGFuZ2VkKFFVcmwpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3Lm1lc3NhZ2VS
ZWNlaXZlZChRVmFyaWFudE1hcCkgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcubGlu
a0hvdmVyZWQoUVVybCxRU3RyaW5nKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5u
YXZpZ2F0aW9uU3RhdGVDaGFuZ2VkKCkgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcu
bmF2aWdhdGlvblJlcXVlc3RlZChRT2JqZWN0KikgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dl
YlZpZXcubG9hZChRVXJsKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5wb3N0TWVz
c2FnZShRU3RyaW5nKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5sb2FkSHRtbChR
U3RyaW5nLFFVcmwpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmxvYWRIdG1sKFFT
dHJpbmcpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmdvQmFjaygpIC0tPiB2b2lk
IgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmdvRm9yd2FyZCgpIC0tPiB2b2lkIgorICAgIDw8ICJR
UXVpY2tXZWJWaWV3LnN0b3AoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5yZWxv
YWQoKSAtLT4gdm9pZCIKKyAgICA7CisKK3N0YXRpYyB2b2lkIGdhdGhlckFQSShjb25zdCBRU3Ry
aW5nJiBwcmVmaXgsIFFPYmplY3QqIG9iaiwgUVN0cmluZ0xpc3QqIG91dHB1dCk7CitzdGF0aWMg
dm9pZCBnYXRoZXJBUEkoY29uc3QgUVN0cmluZyYgcHJlZml4LCBjb25zdCBRTWV0YUVudW0mIG1l
dGFFbnVtLCBRU3RyaW5nTGlzdCogb3V0cHV0KQoreworICAgIGZvciAoaW50IGkgPSAwOyBpIDwg
bWV0YUVudW0ua2V5Q291bnQoKTsgKytpKQorICAgICAgICAqb3V0cHV0IDw8IFFTdHJpbmc6OmZy
b21MYXRpbjEoIiUxJTIgLS0+ICUzIikuYXJnKHByZWZpeCkuYXJnKG1ldGFFbnVtLmtleShpKSku
YXJnKG1ldGFFbnVtLm5hbWUoKSk7Cit9CisKK3N0YXRpYyB2b2lkIGdhdGhlckFQSShjb25zdCBR
U3RyaW5nJiBwcmVmaXgsIFFPYmplY3QqIG9iaiwgY29uc3QgUU1ldGFQcm9wZXJ0eSYgcHJvcGVy
dHksIFFTdHJpbmdMaXN0KiBvdXRwdXQpCit7CisgICAgKm91dHB1dCA8PCBRU3RyaW5nOjpmcm9t
TGF0aW4xKCIlMSUyIC0tPiAlMyIpLmFyZyhwcmVmaXgpLmFyZyhwcm9wZXJ0eS5uYW1lKCkpLmFy
Zyhwcm9wZXJ0eS50eXBlTmFtZSgpKTsKKyAgICBRVmFyaWFudCB2YWwgPSBwcm9wZXJ0eS5yZWFk
KG9iaik7CisgICAgaWYgKHZhbC50eXBlKCkgPT0gUVZhcmlhbnQ6OlVzZXJUeXBlKSB7CisgICAg
ICAgIFFPYmplY3QqIGNoaWxkT2JqID0gKnJlaW50ZXJwcmV0X2Nhc3Q8UU9iamVjdCoqPih2YWwu
ZGF0YSgpKTsKKyAgICAgICAgaWYgKGNoaWxkT2JqKQorICAgICAgICAgICAgZ2F0aGVyQVBJKHBy
ZWZpeCArIHByb3BlcnR5Lm5hbWUoKSArICIuIiwgY2hpbGRPYmosIG91dHB1dCk7CisgICAgfQor
fQorCitzdGF0aWMgdm9pZCBnYXRoZXJBUEkoY29uc3QgUVN0cmluZyYgcHJlZml4LCBjb25zdCBR
TWV0YU1ldGhvZCYgbWV0aG9kLCBRU3RyaW5nTGlzdCogb3V0cHV0KQoreworICAgIGlmIChtZXRo
b2QuYWNjZXNzKCkgIT0gUU1ldGFNZXRob2Q6OlByaXZhdGUpIHsKKyAgICAgICAgYm9vbCBoYXNU
eXBlTmFtZSA9ICEhc3RybGVuKG1ldGhvZC50eXBlTmFtZSgpKTsKKyAgICAgICAgKm91dHB1dCA8
PCBRU3RyaW5nOjpmcm9tTGF0aW4xKCIlMSUyIC0tPiAlMyIpLmFyZyhwcmVmaXgpLmFyZyhtZXRo
b2Quc2lnbmF0dXJlKCkpLmFyZyhoYXNUeXBlTmFtZSA/IG1ldGhvZC50eXBlTmFtZSgpIDogInZv
aWQiKTsKKyAgICB9Cit9CisKK3N0YXRpYyB2b2lkIGdhdGhlckFQSShjb25zdCBRU3RyaW5nJiBw
cmVmaXgsIFFPYmplY3QqIG9iaiwgUVN0cmluZ0xpc3QqIG91dHB1dCkKK3sKKyAgICBjb25zdCBR
TWV0YU9iamVjdCogbWV0YSA9IG9iai0+bWV0YU9iamVjdCgpOworICAgIC8vICpPZmZzZXQgcG9p
bnRzIHVzIG9ubHkgYXQgdGhlIGxlYWYgY2xhc3MgbWVtYmVycywgd2UgZG9uJ3QgaGF2ZSBpbmhl
cml0YW5jZSBpbiBvdXIgQVBJIHlldCBhbnl3YXkuCisgICAgZm9yIChpbnQgaSA9IG1ldGEtPmVu
dW1lcmF0b3JPZmZzZXQoKTsgaSA8IG1ldGEtPmVudW1lcmF0b3JDb3VudCgpOyArK2kpCisgICAg
ICAgIGdhdGhlckFQSShwcmVmaXgsIG1ldGEtPmVudW1lcmF0b3IoaSksIG91dHB1dCk7CisgICAg
Zm9yIChpbnQgaSA9IG1ldGEtPnByb3BlcnR5T2Zmc2V0KCk7IGkgPCBtZXRhLT5wcm9wZXJ0eUNv
dW50KCk7ICsraSkKKyAgICAgICAgZ2F0aGVyQVBJKHByZWZpeCwgb2JqLCBtZXRhLT5wcm9wZXJ0
eShpKSwgb3V0cHV0KTsKKyAgICBmb3IgKGludCBpID0gbWV0YS0+bWV0aG9kT2Zmc2V0KCk7IGkg
PCBtZXRhLT5tZXRob2RDb3VudCgpOyArK2kpCisgICAgICAgIGdhdGhlckFQSShwcmVmaXgsIG1l
dGEtPm1ldGhvZChpKSwgb3V0cHV0KTsKK30KKwordm9pZCB0c3RfcHVibGljYXBpOjpwdWJsaWNB
UEkoKQoreworICAgIGFkZFF0V2ViUHJvY2Vzc1RvUGF0aCgpOworCisgICAgUVF1aWNrVmlldyB2
aWV3OworICAgIHZpZXcuZW5naW5lKCktPmFkZEltcG9ydFBhdGgoSU1QT1JUX0RJUik7CisgICAg
dmlldy5zZXRTb3VyY2UoUVVybChRVUlDS19URVNUX1NPVVJDRV9ESVIgIi90c3RfcHVibGljYXBp
LnFtbCIpKTsKKworICAgIFFTdHJpbmdMaXN0IGFjdHVhbEFQSTsKKyAgICBnYXRoZXJBUEkoUVN0
cmluZzo6ZnJvbUxhdGluMSh2aWV3LnJvb3RPYmplY3QoKS0+bWV0YU9iamVjdCgpLT5jbGFzc05h
bWUoKSkgKyAiLiIsIHZpZXcucm9vdE9iamVjdCgpLCAmYWN0dWFsQVBJKTsKKworICAgIC8vIFVu
Y29tbWVudCB0byBwcmludCB0aGUgYWN0dWFsIEFQSS4KKyAgICAvLyBmb3JlYWNoKFFTdHJpbmcg
YWN0dWFsLCBhY3R1YWxBUEkpCisgICAgLy8gICAgIHByaW50ZigiICAgIDw8IFwiJXNcIlxuIiwg
cVByaW50YWJsZShhY3R1YWwpKTsKKworICAgIC8vIE1ha2Ugc3VyZSB0aGF0IG5vdGhpbmcgc2xp
cHMgaW4gdGhlIHB1YmxpYyBBUEkgdW5pbnRlbnRpb25hbGx5LgorICAgIGZvcmVhY2ggKFFTdHJp
bmcgYWN0dWFsLCBhY3R1YWxBUEkpCisgICAgICAgIFFWRVJJRlkyKGV4cGVjdGVkQVBJLmNvbnRh
aW5zKGFjdHVhbCksIHFQcmludGFibGUoYWN0dWFsKSk7CisgICAgLy8gTWFrZSBzdXJlIHRoYXQg
dGhlIGV4cGVjdGVkIGxpc3QgaXMgdXAtdG8tZGF0ZSB3aXRoIGludGVudGlvbmFsbHkgYWRkZWQg
QVBJcy4KKyAgICBmb3JlYWNoIChRU3RyaW5nIGV4cGVjdGVkLCBleHBlY3RlZEFQSSkKKyAgICAg
ICAgUVZFUklGWTIoYWN0dWFsQVBJLmNvbnRhaW5zKGV4cGVjdGVkKSwgcVByaW50YWJsZShleHBl
Y3RlZCkpOworfQorCitRVFdFQktJVF9BUElfVEVTVF9NQUlOKHRzdF9wdWJsaWNhcGkpCisKKyNp
bmNsdWRlICJ0c3RfcHVibGljYXBpLm1vYyIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvdGVzdHMvcHVibGljYXBpL3RzdF9wdWJsaWNhcGkucW1sIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNhcGkvdHN0X3B1YmxpY2FwaS5x
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNmJkOWE4MGExZWZhODUxODhhMWY3NTUwZWRjZDVmMjY5ZTJiY2E5ZAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMv
cHVibGljYXBpL3RzdF9wdWJsaWNhcGkucW1sCkBAIC0wLDAgKzEsNSBAQAoraW1wb3J0IFF0UXVp
Y2sgMi4wCitpbXBvcnQgUXRXZWJLaXQgMy4wCisKK1dlYlZpZXcgeworfQpkaWZmIC0tZ2l0IGEv
U291cmNlL3Rlc3RzLnByaSBiL1NvdXJjZS90ZXN0cy5wcmkKaW5kZXggMWI0MTVmZGYxZGY4ZDIz
YWRhZTg2OTFhMTI4ZjYwZjFiZGJkNzUzMC4uYzlhNmI3YWYxNTIyOTE5MjE2MGM2ZTBhMTNiYWM3
ODkxMDBiY2MyZCAxMDA2NDQKLS0tIGEvU291cmNlL3Rlc3RzLnByaQorKysgYi9Tb3VyY2UvdGVz
dHMucHJpCkBAIC00Myw2ICs0Myw3IEBAIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9XRUJHTD0x
KSB7CiAgICAgV0VCS0lUMl9URVNUU19ESVIgPSAkJFBXRC9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvdGVzdHMKIAogICAgIFNVQkRJUlMgKz0gXAorICAgICAgICAkJFdFQktJVDJfVEVTVFNfRElS
L3B1YmxpY2FwaSBcCiAgICAgICAgICQkV0VCS0lUMl9URVNUU19ESVIvcXF1aWNrd2VidmlldyBc
CiAgICAgICAgICQkV0VCS0lUMl9URVNUU19ESVIvcW1sdGVzdHMKIH0KZGlmZiAtLWdpdCBhL0No
YW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAyNDUyYzI0ODkxYWU1YTExMzY4YWYxNjAyMjA5YmZh
ZWFhMjNjZmE2Li5hOWY3ODZhMDJhN2UzNmI5MjdhYmU2M2M2ODRiMmVhY2IzZDdjOGEyIDEwMDY0
NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTEt
MTItMDYgIEpvY2VseW4gVHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQG5va2lhLmNvbT4KKwor
ICAgICAgICBbUXRdIFB1YmxpYyBBUEkgd2F0Y2ggZG9nIGF1dG8gdGVzdC4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTczOTIyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyB0ZXN0IGFpbXMgdG8gcHJl
dmVudCB1bmludGVuZGVkL3VuYXBwcm92ZWQKKyAgICAgICAgbW9kaWZpY2F0aW9ucyB0byB0aGUg
cHVibGljIFFNTCBBUEkuCisKKyAgICAgICAgKiBTb3VyY2UvdGVzdHMucHJpOgorCiAyMDExLTEy
LTA1ICBBbGV4YW5kZXIgRsOmcsO4eSAgPGFsZXhhbmRlci5mYWVyb3lAbm9raWEuY29tPgogCiAg
ICAgICAgIFtRdF0gQWRkIFNvdXJjZS9xdHdlYmtpdHZlcnNpb24uaCB0byAuZ2l0aWdub3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123107</attachid>
            <date>2012-01-19 04:43:08 -0800</date>
            <delta_ts>2012-01-19 06:55:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-73922-20120119134306.patch</filename>
            <type>text/plain</type>
            <size>9947</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1MjY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggODgzYzZkNjhlODk4ZTIz
OGFjYTY2NjY5ZGEyMjAwOWM4YmUxYjQ0YS4uMGRhYzc3NzM1NDQ4ZTJjZWY3YzllZjExYjdkZDdm
OTY3MTkzOWFlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAxLTE5ICBKb2Nl
bHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0
XSBQdWJsaWMgQVBJIHdhdGNoIGRvZyBhdXRvIHRlc3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MzkyMgorCisgICAgICAgIFJldmlld2VkIGJ5IFNp
bW9uIEhhdXNtYW5uLgorCisgICAgICAgIFRoaXMgdGVzdCBhaW1zIHRvIHByZXZlbnQgdW5pbnRl
bmRlZC91bmFwcHJvdmVkCisgICAgICAgIG1vZGlmaWNhdGlvbnMgdG8gdGhlIHB1YmxpYyBRTUwg
QVBJLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNhcGkvcHVibGlj
YXBpLnBybzogQWRkZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNh
cGkvdHN0X3B1YmxpY2FwaS5jcHA6IEFkZGVkLgorICAgICAgICAoaXNDaGVja2VkRW51bSk6Cisg
ICAgICAgIChpc0NoZWNrZWRDbGFzcyk6CisgICAgICAgIChjaGVja0tub3duVHlwZSk6CisgICAg
ICAgIChnYXRoZXJBUEkpOgorICAgICAgICAodHN0X3B1YmxpY2FwaTo6cHVibGljQVBJKToKKwog
MjAxMi0wMS0xOCAgSm9jZWx5biBUdXJjb3R0ZSAgPGpvY2VseW4udHVyY290dGVAbm9raWEuY29t
PgogCiAgICAgICAgIFdLMitBQytUaWxpbmc6IFByb2plY3QgdGhlIHZpc2libGUgcmVjdCBvbiB0
aGUgdHJhbnNmb3JtZWQgbGF5ZXIgaW5zdGVhZCBvZiBtYXBwaW5nIGl0LgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNhcGkvcHVibGljYXBp
LnBybyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcHVibGljYXBpL3B1
YmxpY2FwaS5wcm8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzI4NTIxZjhhYWUxZjI3OGZhNzU1YmMyM2U3MDliNTE1
NjQ1ODJjYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvdGVzdHMvcHVibGljYXBpL3B1YmxpY2FwaS5wcm8KQEAgLTAsMCArMSwyIEBACitpbmNsdWRl
KC4uL3Rlc3RzLnByaSkKK0NPTkZJRyArPSBxdHdlYmtpdC1wcml2YXRlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3B1YmxpY2FwaS90c3RfcHVibGlj
YXBpLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcHVibGljYXBp
L3RzdF9wdWJsaWNhcGkuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA3NjA4MTBiYjRhZTM3MTlmYmUyMjA3ZWUz
Y2Y1Yzg0MTA3NTkyY2EKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3Rlc3RzL3B1YmxpY2FwaS90c3RfcHVibGljYXBpLmNwcApAQCAtMCwwICsxLDE3
MCBAQAorLyoKKyAgICBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29y
IGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2Fy
ZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVuZGVyIHRo
ZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNlbnNlIGFz
IHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgICB2
ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl
cnNpb24uCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh
dCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv
dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgIE1FUkNIQU5UQUJJTElUWSBvciBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICAgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICBZb3Ugc2hv
dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlCisgICAgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZ
SU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICAgIEJvc3Rvbiwg
TUEgMDIxMTAtMTMwMSwgVVNBLgorKi8KKworI2luY2x1ZGUgPFFNZXRhRW51bT4KKyNpbmNsdWRl
IDxRTWV0YU1ldGhvZD4KKyNpbmNsdWRlIDxRTWV0YU9iamVjdD4KKyNpbmNsdWRlIDxRTWV0YVBy
b3BlcnR5PgorI2luY2x1ZGUgPFFNZXRhVHlwZT4KKyNpbmNsdWRlIDxRdFRlc3QvUXRUZXN0Pgor
I2luY2x1ZGUgPHFxdWlja3dlYnZpZXdfcC5oPgorI2luY2x1ZGUgPHF3ZWJuYXZpZ2F0aW9ucmVx
dWVzdF9wLmg+CisKK2NsYXNzIHRzdF9wdWJsaWNhcGkgOiBwdWJsaWMgUU9iamVjdCB7CisgICAg
UV9PQkpFQ1QKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCBwdWJsaWNBUEkoKTsKK307CisKK3N0
YXRpYyBRTGlzdDxjb25zdCBRTWV0YU9iamVjdCo+IHR5cGVzVG9DaGVjayA9IFFMaXN0PGNvbnN0
IFFNZXRhT2JqZWN0Kj4oKQorICAgIDw8ICZRUXVpY2tXZWJWaWV3OjpzdGF0aWNNZXRhT2JqZWN0
CisgICAgPDwgJlFXZWJOYXZpZ2F0aW9uUmVxdWVzdDo6c3RhdGljTWV0YU9iamVjdDsKKworc3Rh
dGljIFFTdHJpbmdMaXN0IGV4cGVjdGVkQVBJID0gUVN0cmluZ0xpc3QoKQorICAgIDw8ICJRUXVp
Y2tXZWJWaWV3LkFjY2VwdFJlcXVlc3QgLS0+IE5hdmlnYXRpb25SZXF1ZXN0QWN0aW9uIgorICAg
IDw8ICJRUXVpY2tXZWJWaWV3Lklnbm9yZVJlcXVlc3QgLS0+IE5hdmlnYXRpb25SZXF1ZXN0QWN0
aW9uIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LkludGVybmFsRXJyb3JEb21haW4gLS0+IEVycm9y
RG9tYWluIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3Lk5ldHdvcmtFcnJvckRvbWFpbiAtLT4gRXJy
b3JEb21haW4iCisgICAgPDwgIlFRdWlja1dlYlZpZXcuSHR0cEVycm9yRG9tYWluIC0tPiBFcnJv
ckRvbWFpbiIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5Eb3dubG9hZEVycm9yRG9tYWluIC0tPiBF
cnJvckRvbWFpbiIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy50aXRsZSAtLT4gUVN0cmluZyIKKyAg
ICA8PCAiUVF1aWNrV2ViVmlldy51cmwgLS0+IFFVcmwiCisgICAgPDwgIlFRdWlja1dlYlZpZXcu
aWNvbiAtLT4gUVVybCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5sb2FkUHJvZ3Jlc3MgLS0+IGlu
dCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5jYW5Hb0JhY2sgLS0+IGJvb2wiCisgICAgPDwgIlFR
dWlja1dlYlZpZXcuY2FuR29Gb3J3YXJkIC0tPiBib29sIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3
LmxvYWRpbmcgLS0+IGJvb2wiCisgICAgPDwgIlFRdWlja1dlYlZpZXcuY2FuUmVsb2FkIC0tPiBi
b29sIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LnRpdGxlQ2hhbmdlZChRU3RyaW5nKSAtLT4gdm9p
ZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5sb2FkU3RhcnRlZCgpIC0tPiB2b2lkIgorICAgIDw8
ICJRUXVpY2tXZWJWaWV3LmxvYWRTdWNjZWVkZWQoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNr
V2ViVmlldy5sb2FkRmFpbGVkKFFRdWlja1dlYlZpZXc6OkVycm9yRG9tYWluLGludCxRVXJsLFFT
dHJpbmcpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmxvYWRQcm9ncmVzc0NoYW5n
ZWQoaW50KSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy51cmxDaGFuZ2VkKFFVcmwp
IC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3Lmljb25DaGFuZ2VkKFFVcmwpIC0tPiB2
b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmxpbmtIb3ZlcmVkKFFVcmwsUVN0cmluZykgLS0+
IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcubmF2aWdhdGlvblN0YXRlQ2hhbmdlZCgpIC0t
PiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3Lm5hdmlnYXRpb25SZXF1ZXN0ZWQoUVdlYk5h
dmlnYXRpb25SZXF1ZXN0KikgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcubG9hZChR
VXJsKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5sb2FkSHRtbChRU3RyaW5nLFFV
cmwpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmxvYWRIdG1sKFFTdHJpbmcpIC0t
PiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmdvQmFjaygpIC0tPiB2b2lkIgorICAgIDw8
ICJRUXVpY2tXZWJWaWV3LmdvRm9yd2FyZCgpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJW
aWV3LnN0b3AoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5yZWxvYWQoKSAtLT4g
dm9pZCIKKyAgICA8PCAiUVdlYk5hdmlnYXRpb25SZXF1ZXN0LnVybCAtLT4gUVVybCIKKyAgICA8
PCAiUVdlYk5hdmlnYXRpb25SZXF1ZXN0Lm9yaWdpbmF0aW5nVXJsIC0tPiBRVXJsIgorICAgIDw8
ICJRV2ViTmF2aWdhdGlvblJlcXVlc3QuYnV0dG9uIC0tPiBpbnQiCisgICAgPDwgIlFXZWJOYXZp
Z2F0aW9uUmVxdWVzdC5tb2RpZmllcnMgLS0+IGludCIKKyAgICA8PCAiUVdlYk5hdmlnYXRpb25S
ZXF1ZXN0LmFjdGlvbiAtLT4gaW50IgorICAgIDw8ICJRV2ViTmF2aWdhdGlvblJlcXVlc3QuYWN0
aW9uQ2hhbmdlZCgpIC0tPiB2b2lkIgorICAgIDsKKworc3RhdGljIGJvb2wgaXNDaGVja2VkRW51
bShjb25zdCBRQnl0ZUFycmF5JiB0eXBlTmFtZSkKK3sKKyAgICBRTGlzdDxRQnl0ZUFycmF5PiB0
b2tlbnMgPSB0eXBlTmFtZS5zcGxpdCgnOicpOworICAgIGlmICh0b2tlbnMuc2l6ZSgpID09IDMp
IHsKKyAgICAgICAgUUJ5dGVBcnJheSYgZW51bUNsYXNzID0gdG9rZW5zWzBdOworICAgICAgICBR
Qnl0ZUFycmF5JiBlbnVtTmFtZSA9IHRva2Vuc1syXTsKKyAgICAgICAgZm9yZWFjaCAoY29uc3Qg
UU1ldGFPYmplY3QqIG1vLCB0eXBlc1RvQ2hlY2spIHsKKyAgICAgICAgICAgIGlmIChtby0+Y2xh
c3NOYW1lKCkgIT0gZW51bUNsYXNzKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAg
ICAgICAgZm9yIChpbnQgaSA9IG1vLT5lbnVtZXJhdG9yT2Zmc2V0KCk7IGkgPCBtby0+ZW51bWVy
YXRvckNvdW50KCk7ICsraSkKKyAgICAgICAgICAgICAgICBpZiAobW8tPmVudW1lcmF0b3IoaSku
bmFtZSgpID09IGVudW1OYW1lKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAg
ICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3N0YXRpYyBib29sIGlzQ2hl
Y2tlZENsYXNzKGNvbnN0IFFCeXRlQXJyYXkmIHR5cGVOYW1lKQoreworICAgIGZvcmVhY2ggKGNv
bnN0IFFNZXRhT2JqZWN0KiBtbywgdHlwZXNUb0NoZWNrKSB7CisgICAgICAgIFFCeXRlQXJyYXkg
bW9UeXBlTmFtZShtby0+Y2xhc3NOYW1lKCkpOworICAgICAgICBpZiAobW9UeXBlTmFtZSA9PSB0
eXBlTmFtZSB8fCBtb1R5cGVOYW1lICsgIioiID09IHR5cGVOYW1lKQorICAgICAgICAgICAgcmV0
dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKworc3RhdGljIHZvaWQgY2hl
Y2tLbm93blR5cGUoY29uc3QgUUJ5dGVBcnJheSYgdHlwZU5hbWUpCit7CisgICAgaWYgKCh0eXBl
TmFtZSAhPSAidm9pZCIgJiYgUU1ldGFUeXBlOjp0eXBlKHR5cGVOYW1lKSA9PSAwKSB8fCBRTWV0
YVR5cGU6OnR5cGUodHlwZU5hbWUpID49IFFNZXRhVHlwZTo6VXNlcikgeworICAgICAgICBib29s
IGtub3duRW51bSA9IGlzQ2hlY2tlZEVudW0odHlwZU5hbWUpOworICAgICAgICBib29sIGtub3du
Q2xhc3MgPSBpc0NoZWNrZWRDbGFzcyh0eXBlTmFtZSk7CisgICAgICAgIFFWRVJJRlkyKGtub3du
RW51bSB8fCBrbm93bkNsYXNzLCBxUHJpbnRhYmxlKFFTdHJpbmcoIlRoZSBBUEkgdXNlcyBhbiB1
bmtub3duIHR5cGUgWyUxXSwgeW91IG1pZ2h0IGhhdmUgdG8gYWRkIGl0IHRvIHRoZSB0eXBlc1Rv
Q2hlY2sgbGlzdC4iKS5hcmcodHlwZU5hbWUuY29uc3REYXRhKCkpKSk7CisgICAgfQorfQorCitz
dGF0aWMgdm9pZCBnYXRoZXJBUEkoY29uc3QgUVN0cmluZyYgcHJlZml4LCBjb25zdCBRTWV0YUVu
dW0mIG1ldGFFbnVtLCBRU3RyaW5nTGlzdCogb3V0cHV0KQoreworICAgIGZvciAoaW50IGkgPSAw
OyBpIDwgbWV0YUVudW0ua2V5Q291bnQoKTsgKytpKQorICAgICAgICAqb3V0cHV0IDw8IFFTdHJp
bmc6OmZyb21MYXRpbjEoIiUxJTIgLS0+ICUzIikuYXJnKHByZWZpeCkuYXJnKG1ldGFFbnVtLmtl
eShpKSkuYXJnKG1ldGFFbnVtLm5hbWUoKSk7Cit9CisKK3N0YXRpYyB2b2lkIGdhdGhlckFQSShj
b25zdCBRU3RyaW5nJiBwcmVmaXgsIGNvbnN0IFFNZXRhUHJvcGVydHkmIHByb3BlcnR5LCBRU3Ry
aW5nTGlzdCogb3V0cHV0KQoreworICAgICpvdXRwdXQgPDwgUVN0cmluZzo6ZnJvbUxhdGluMSgi
JTElMiAtLT4gJTMiKS5hcmcocHJlZml4KS5hcmcocHJvcGVydHkubmFtZSgpKS5hcmcocHJvcGVy
dHkudHlwZU5hbWUoKSk7CisgICAgY2hlY2tLbm93blR5cGUocHJvcGVydHkudHlwZU5hbWUoKSk7
Cit9CisKK3N0YXRpYyB2b2lkIGdhdGhlckFQSShjb25zdCBRU3RyaW5nJiBwcmVmaXgsIGNvbnN0
IFFNZXRhTWV0aG9kJiBtZXRob2QsIFFTdHJpbmdMaXN0KiBvdXRwdXQpCit7CisgICAgaWYgKG1l
dGhvZC5hY2Nlc3MoKSAhPSBRTWV0YU1ldGhvZDo6UHJpdmF0ZSkgeworICAgICAgICBjb25zdCBj
aGFyKiBtZXRob2RUeXBlTmFtZSA9ICEhc3RybGVuKG1ldGhvZC50eXBlTmFtZSgpKSA/IG1ldGhv
ZC50eXBlTmFtZSgpIDogInZvaWQiOworICAgICAgICAqb3V0cHV0IDw8IFFTdHJpbmc6OmZyb21M
YXRpbjEoIiUxJTIgLS0+ICUzIikuYXJnKHByZWZpeCkuYXJnKG1ldGhvZC5zaWduYXR1cmUoKSku
YXJnKG1ldGhvZFR5cGVOYW1lKTsKKworICAgICAgICBjaGVja0tub3duVHlwZShtZXRob2RUeXBl
TmFtZSk7CisgICAgICAgIGZvcmVhY2ggKFFCeXRlQXJyYXkgcGFyYW1UeXBlLCBtZXRob2QucGFy
YW1ldGVyVHlwZXMoKSkKKyAgICAgICAgICAgIGNoZWNrS25vd25UeXBlKHBhcmFtVHlwZSk7Cisg
ICAgfQorfQorCitzdGF0aWMgdm9pZCBnYXRoZXJBUEkoY29uc3QgUVN0cmluZyYgcHJlZml4LCBj
b25zdCBRTWV0YU9iamVjdCogbWV0YSwgUVN0cmluZ0xpc3QqIG91dHB1dCkKK3sKKyAgICAvLyAq
T2Zmc2V0IHBvaW50cyB1cyBvbmx5IGF0IHRoZSBsZWFmIGNsYXNzIG1lbWJlcnMsIHdlIGRvbid0
IGhhdmUgaW5oZXJpdGFuY2UgaW4gb3VyIEFQSSB5ZXQgYW55d2F5LgorICAgIGZvciAoaW50IGkg
PSBtZXRhLT5lbnVtZXJhdG9yT2Zmc2V0KCk7IGkgPCBtZXRhLT5lbnVtZXJhdG9yQ291bnQoKTsg
KytpKQorICAgICAgICBnYXRoZXJBUEkocHJlZml4LCBtZXRhLT5lbnVtZXJhdG9yKGkpLCBvdXRw
dXQpOworICAgIGZvciAoaW50IGkgPSBtZXRhLT5wcm9wZXJ0eU9mZnNldCgpOyBpIDwgbWV0YS0+
cHJvcGVydHlDb3VudCgpOyArK2kpCisgICAgICAgIGdhdGhlckFQSShwcmVmaXgsIG1ldGEtPnBy
b3BlcnR5KGkpLCBvdXRwdXQpOworICAgIGZvciAoaW50IGkgPSBtZXRhLT5tZXRob2RPZmZzZXQo
KTsgaSA8IG1ldGEtPm1ldGhvZENvdW50KCk7ICsraSkKKyAgICAgICAgZ2F0aGVyQVBJKHByZWZp
eCwgbWV0YS0+bWV0aG9kKGkpLCBvdXRwdXQpOworfQorCit2b2lkIHRzdF9wdWJsaWNhcGk6OnB1
YmxpY0FQSSgpCit7CisgICAgUVN0cmluZ0xpc3QgYWN0dWFsQVBJOworICAgIGZvcmVhY2ggKGNv
bnN0IFFNZXRhT2JqZWN0KiBtZXRhLCB0eXBlc1RvQ2hlY2spCisgICAgICAgIGdhdGhlckFQSShR
U3RyaW5nOjpmcm9tTGF0aW4xKG1ldGEtPmNsYXNzTmFtZSgpKSArICIuIiwgbWV0YSwgJmFjdHVh
bEFQSSk7CisKKyAgICAvLyBVbmNvbW1lbnQgdG8gcHJpbnQgdGhlIGFjdHVhbCBBUEkuCisgICAg
Ly8gZm9yZWFjaChRU3RyaW5nIGFjdHVhbCwgYWN0dWFsQVBJKQorICAgIC8vICAgICBwcmludGYo
IiAgICA8PCBcIiVzXCJcbiIsIHFQcmludGFibGUoYWN0dWFsKSk7CisKKyAgICAvLyBNYWtlIHN1
cmUgdGhhdCBub3RoaW5nIHNsaXBzIGluIHRoZSBwdWJsaWMgQVBJIHVuaW50ZW50aW9uYWxseS4K
KyAgICBmb3JlYWNoIChRU3RyaW5nIGFjdHVhbCwgYWN0dWFsQVBJKQorICAgICAgICBRVkVSSUZZ
MihleHBlY3RlZEFQSS5jb250YWlucyhhY3R1YWwpLCBxUHJpbnRhYmxlKGFjdHVhbCkpOworICAg
IC8vIE1ha2Ugc3VyZSB0aGF0IHRoZSBleHBlY3RlZCBsaXN0IGlzIHVwLXRvLWRhdGUgd2l0aCBp
bnRlbnRpb25hbGx5IGFkZGVkIEFQSXMuCisgICAgZm9yZWFjaCAoUVN0cmluZyBleHBlY3RlZCwg
ZXhwZWN0ZWRBUEkpCisgICAgICAgIFFWRVJJRlkyKGFjdHVhbEFQSS5jb250YWlucyhleHBlY3Rl
ZCksIHFQcmludGFibGUoZXhwZWN0ZWQpKTsKK30KKworUVRFU1RfTUFJTih0c3RfcHVibGljYXBp
KQorCisjaW5jbHVkZSAidHN0X3B1YmxpY2FwaS5tb2MiCmRpZmYgLS1naXQgYS9Tb3VyY2UvdGVz
dHMucHJpIGIvU291cmNlL3Rlc3RzLnByaQppbmRleCAxYjQxNWZkZjFkZjhkMjNhZGFlODY5MWEx
MjhmNjBmMWJkYmQ3NTMwLi5jOWE2YjdhZjE1MjI5MTkyMTYwYzZlMGExM2JhYzc4OTEwMGJjYzJk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvdGVzdHMucHJpCisrKyBiL1NvdXJjZS90ZXN0cy5wcmkKQEAg
LTQzLDYgKzQzLDcgQEAgY29udGFpbnMoREVGSU5FUywgRU5BQkxFX1dFQkdMPTEpIHsKICAgICBX
RUJLSVQyX1RFU1RTX0RJUiA9ICQkUFdEL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cwog
CiAgICAgU1VCRElSUyArPSBcCisgICAgICAgICQkV0VCS0lUMl9URVNUU19ESVIvcHVibGljYXBp
IFwKICAgICAgICAgJCRXRUJLSVQyX1RFU1RTX0RJUi9xcXVpY2t3ZWJ2aWV3IFwKICAgICAgICAg
JCRXRUJLSVQyX1RFU1RTX0RJUi9xbWx0ZXN0cwogfQpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIv
Q2hhbmdlTG9nCmluZGV4IDBlNGZjMGI0MDQ4ZTkzNzRmMDVmNmU5MDU5N2U1N2YxYWM5ZDQwZjIu
LjFlMDMxNDg5NDJhOTkwNzcxNDAyNTZkMjdiYzRjZDk1NGI0MWFhMDUgMTAwNjQ0Ci0tLSBhL0No
YW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMi0wMS0xOSAgSm9j
ZWx5biBUdXJjb3R0ZSAgPGpvY2VseW4udHVyY290dGVAbm9raWEuY29tPgorCisgICAgICAgIFtR
dF0gUHVibGljIEFQSSB3YXRjaCBkb2cgYXV0byB0ZXN0LgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzM5MjIKKworICAgICAgICBSZXZpZXdlZCBieSBT
aW1vbiBIYXVzbWFubi4KKworICAgICAgICBUaGlzIHRlc3QgYWltcyB0byBwcmV2ZW50IHVuaW50
ZW5kZWQvdW5hcHByb3ZlZAorICAgICAgICBtb2RpZmljYXRpb25zIHRvIHRoZSBwdWJsaWMgUU1M
IEFQSS4KKworICAgICAgICAqIFNvdXJjZS90ZXN0cy5wcmk6CisKIDIwMTItMDEtMTggIEJhbGF6
cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgogCiAgICAgICAgIFtRdF0gQ29uc29saWRh
dGUgbGF5b3V0IHRlc3QgY3Jhc2ggbG9nZ2luZwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123121</attachid>
            <date>2012-01-19 06:55:57 -0800</date>
            <delta_ts>2012-01-19 13:19:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-73922-20120119155555.patch</filename>
            <type>text/plain</type>
            <size>9942</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1MjY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggODgzYzZkNjhlODk4ZTIz
OGFjYTY2NjY5ZGEyMjAwOWM4YmUxYjQ0YS4uMGRhYzc3NzM1NDQ4ZTJjZWY3YzllZjExYjdkZDdm
OTY3MTkzOWFlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAxLTE5ICBKb2Nl
bHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0
XSBQdWJsaWMgQVBJIHdhdGNoIGRvZyBhdXRvIHRlc3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MzkyMgorCisgICAgICAgIFJldmlld2VkIGJ5IFNp
bW9uIEhhdXNtYW5uLgorCisgICAgICAgIFRoaXMgdGVzdCBhaW1zIHRvIHByZXZlbnQgdW5pbnRl
bmRlZC91bmFwcHJvdmVkCisgICAgICAgIG1vZGlmaWNhdGlvbnMgdG8gdGhlIHB1YmxpYyBRTUwg
QVBJLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNhcGkvcHVibGlj
YXBpLnBybzogQWRkZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNh
cGkvdHN0X3B1YmxpY2FwaS5jcHA6IEFkZGVkLgorICAgICAgICAoaXNDaGVja2VkRW51bSk6Cisg
ICAgICAgIChpc0NoZWNrZWRDbGFzcyk6CisgICAgICAgIChjaGVja0tub3duVHlwZSk6CisgICAg
ICAgIChnYXRoZXJBUEkpOgorICAgICAgICAodHN0X3B1YmxpY2FwaTo6cHVibGljQVBJKToKKwog
MjAxMi0wMS0xOCAgSm9jZWx5biBUdXJjb3R0ZSAgPGpvY2VseW4udHVyY290dGVAbm9raWEuY29t
PgogCiAgICAgICAgIFdLMitBQytUaWxpbmc6IFByb2plY3QgdGhlIHZpc2libGUgcmVjdCBvbiB0
aGUgdHJhbnNmb3JtZWQgbGF5ZXIgaW5zdGVhZCBvZiBtYXBwaW5nIGl0LgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9wdWJsaWNhcGkvcHVibGljYXBp
LnBybyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcHVibGljYXBpL3B1
YmxpY2FwaS5wcm8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzI4NTIxZjhhYWUxZjI3OGZhNzU1YmMyM2U3MDliNTE1
NjQ1ODJjYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvdGVzdHMvcHVibGljYXBpL3B1YmxpY2FwaS5wcm8KQEAgLTAsMCArMSwyIEBACitpbmNsdWRl
KC4uL3Rlc3RzLnByaSkKK0NPTkZJRyArPSBxdHdlYmtpdC1wcml2YXRlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3B1YmxpY2FwaS90c3RfcHVibGlj
YXBpLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcHVibGljYXBp
L3RzdF9wdWJsaWNhcGkuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjliODUwNzdjMmUzYjhlYTQ2YTNkYTgxMzI3
NDY4MjUwNjU3MDE4OTcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3Rlc3RzL3B1YmxpY2FwaS90c3RfcHVibGljYXBpLmNwcApAQCAtMCwwICsxLDE3
MCBAQAorLyoKKyAgICBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29y
IGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2Fy
ZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVuZGVyIHRo
ZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNlbnNlIGFz
IHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgICB2
ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl
cnNpb24uCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh
dCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv
dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgIE1FUkNIQU5UQUJJTElUWSBvciBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICAgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICBZb3Ugc2hv
dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlCisgICAgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZ
SU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICAgIEJvc3Rvbiwg
TUEgMDIxMTAtMTMwMSwgVVNBLgorKi8KKworI2luY2x1ZGUgPFFNZXRhRW51bT4KKyNpbmNsdWRl
IDxRTWV0YU1ldGhvZD4KKyNpbmNsdWRlIDxRTWV0YU9iamVjdD4KKyNpbmNsdWRlIDxRTWV0YVBy
b3BlcnR5PgorI2luY2x1ZGUgPFFNZXRhVHlwZT4KKyNpbmNsdWRlIDxRdFRlc3QvUXRUZXN0Pgor
I2luY2x1ZGUgPHFxdWlja3dlYnZpZXdfcC5oPgorI2luY2x1ZGUgPHF3ZWJuYXZpZ2F0aW9ucmVx
dWVzdF9wLmg+CisKK2NsYXNzIHRzdF9wdWJsaWNhcGkgOiBwdWJsaWMgUU9iamVjdCB7CisgICAg
UV9PQkpFQ1QKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCBwdWJsaWNBUEkoKTsKK307CisKK3N0
YXRpYyBRTGlzdDxjb25zdCBRTWV0YU9iamVjdCo+IHR5cGVzVG9DaGVjayA9IFFMaXN0PGNvbnN0
IFFNZXRhT2JqZWN0Kj4oKQorICAgIDw8ICZRUXVpY2tXZWJWaWV3OjpzdGF0aWNNZXRhT2JqZWN0
CisgICAgPDwgJlFXZWJOYXZpZ2F0aW9uUmVxdWVzdDo6c3RhdGljTWV0YU9iamVjdDsKKworc3Rh
dGljIFFTdHJpbmdMaXN0IGV4cGVjdGVkQVBJID0gUVN0cmluZ0xpc3QoKQorICAgIDw8ICJRUXVp
Y2tXZWJWaWV3LkFjY2VwdFJlcXVlc3QgLS0+IE5hdmlnYXRpb25SZXF1ZXN0QWN0aW9uIgorICAg
IDw8ICJRUXVpY2tXZWJWaWV3Lklnbm9yZVJlcXVlc3QgLS0+IE5hdmlnYXRpb25SZXF1ZXN0QWN0
aW9uIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LkludGVybmFsRXJyb3JEb21haW4gLS0+IEVycm9y
RG9tYWluIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3Lk5ldHdvcmtFcnJvckRvbWFpbiAtLT4gRXJy
b3JEb21haW4iCisgICAgPDwgIlFRdWlja1dlYlZpZXcuSHR0cEVycm9yRG9tYWluIC0tPiBFcnJv
ckRvbWFpbiIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5Eb3dubG9hZEVycm9yRG9tYWluIC0tPiBF
cnJvckRvbWFpbiIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy50aXRsZSAtLT4gUVN0cmluZyIKKyAg
ICA8PCAiUVF1aWNrV2ViVmlldy51cmwgLS0+IFFVcmwiCisgICAgPDwgIlFRdWlja1dlYlZpZXcu
aWNvbiAtLT4gUVVybCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5sb2FkUHJvZ3Jlc3MgLS0+IGlu
dCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5jYW5Hb0JhY2sgLS0+IGJvb2wiCisgICAgPDwgIlFR
dWlja1dlYlZpZXcuY2FuR29Gb3J3YXJkIC0tPiBib29sIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3
LmxvYWRpbmcgLS0+IGJvb2wiCisgICAgPDwgIlFRdWlja1dlYlZpZXcuY2FuUmVsb2FkIC0tPiBi
b29sIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LnRpdGxlQ2hhbmdlZChRU3RyaW5nKSAtLT4gdm9p
ZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5sb2FkU3RhcnRlZCgpIC0tPiB2b2lkIgorICAgIDw8
ICJRUXVpY2tXZWJWaWV3LmxvYWRTdWNjZWVkZWQoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNr
V2ViVmlldy5sb2FkRmFpbGVkKFFRdWlja1dlYlZpZXc6OkVycm9yRG9tYWluLGludCxRVXJsLFFT
dHJpbmcpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmxvYWRQcm9ncmVzc0NoYW5n
ZWQoaW50KSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy51cmxDaGFuZ2VkKFFVcmwp
IC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3Lmljb25DaGFuZ2VkKFFVcmwpIC0tPiB2
b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmxpbmtIb3ZlcmVkKFFVcmwsUVN0cmluZykgLS0+
IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcubmF2aWdhdGlvblN0YXRlQ2hhbmdlZCgpIC0t
PiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3Lm5hdmlnYXRpb25SZXF1ZXN0ZWQoUVdlYk5h
dmlnYXRpb25SZXF1ZXN0KikgLS0+IHZvaWQiCisgICAgPDwgIlFRdWlja1dlYlZpZXcubG9hZChR
VXJsKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5sb2FkSHRtbChRU3RyaW5nLFFV
cmwpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmxvYWRIdG1sKFFTdHJpbmcpIC0t
PiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJWaWV3LmdvQmFjaygpIC0tPiB2b2lkIgorICAgIDw8
ICJRUXVpY2tXZWJWaWV3LmdvRm9yd2FyZCgpIC0tPiB2b2lkIgorICAgIDw8ICJRUXVpY2tXZWJW
aWV3LnN0b3AoKSAtLT4gdm9pZCIKKyAgICA8PCAiUVF1aWNrV2ViVmlldy5yZWxvYWQoKSAtLT4g
dm9pZCIKKyAgICA8PCAiUVdlYk5hdmlnYXRpb25SZXF1ZXN0LnVybCAtLT4gUVVybCIKKyAgICA8
PCAiUVdlYk5hdmlnYXRpb25SZXF1ZXN0Lm9yaWdpbmF0aW5nVXJsIC0tPiBRVXJsIgorICAgIDw8
ICJRV2ViTmF2aWdhdGlvblJlcXVlc3QuYnV0dG9uIC0tPiBpbnQiCisgICAgPDwgIlFXZWJOYXZp
Z2F0aW9uUmVxdWVzdC5tb2RpZmllcnMgLS0+IGludCIKKyAgICA8PCAiUVdlYk5hdmlnYXRpb25S
ZXF1ZXN0LmFjdGlvbiAtLT4gaW50IgorICAgIDw8ICJRV2ViTmF2aWdhdGlvblJlcXVlc3QuYWN0
aW9uQ2hhbmdlZCgpIC0tPiB2b2lkIgorICAgIDsKKworc3RhdGljIGJvb2wgaXNDaGVja2VkRW51
bShjb25zdCBRQnl0ZUFycmF5JiB0eXBlTmFtZSkKK3sKKyAgICBRTGlzdDxRQnl0ZUFycmF5PiB0
b2tlbnMgPSB0eXBlTmFtZS5zcGxpdCgnOicpOworICAgIGlmICh0b2tlbnMuc2l6ZSgpID09IDMp
IHsKKyAgICAgICAgUUJ5dGVBcnJheSYgZW51bUNsYXNzID0gdG9rZW5zWzBdOworICAgICAgICBR
Qnl0ZUFycmF5JiBlbnVtTmFtZSA9IHRva2Vuc1syXTsKKyAgICAgICAgZm9yZWFjaCAoY29uc3Qg
UU1ldGFPYmplY3QqIG1vLCB0eXBlc1RvQ2hlY2spIHsKKyAgICAgICAgICAgIGlmIChtby0+Y2xh
c3NOYW1lKCkgIT0gZW51bUNsYXNzKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAg
ICAgICAgZm9yIChpbnQgaSA9IG1vLT5lbnVtZXJhdG9yT2Zmc2V0KCk7IGkgPCBtby0+ZW51bWVy
YXRvckNvdW50KCk7ICsraSkKKyAgICAgICAgICAgICAgICBpZiAobW8tPmVudW1lcmF0b3IoaSku
bmFtZSgpID09IGVudW1OYW1lKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAg
ICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3N0YXRpYyBib29sIGlzQ2hl
Y2tlZENsYXNzKGNvbnN0IFFCeXRlQXJyYXkmIHR5cGVOYW1lKQoreworICAgIGZvcmVhY2ggKGNv
bnN0IFFNZXRhT2JqZWN0KiBtbywgdHlwZXNUb0NoZWNrKSB7CisgICAgICAgIFFCeXRlQXJyYXkg
bW9UeXBlTmFtZShtby0+Y2xhc3NOYW1lKCkpOworICAgICAgICBpZiAobW9UeXBlTmFtZSA9PSB0
eXBlTmFtZSB8fCBtb1R5cGVOYW1lICsgIioiID09IHR5cGVOYW1lKQorICAgICAgICAgICAgcmV0
dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKworc3RhdGljIHZvaWQgY2hl
Y2tLbm93blR5cGUoY29uc3QgUUJ5dGVBcnJheSYgdHlwZU5hbWUpCit7CisgICAgaWYgKCh0eXBl
TmFtZSAhPSAidm9pZCIgJiYgUU1ldGFUeXBlOjp0eXBlKHR5cGVOYW1lKSkgfHwgUU1ldGFUeXBl
Ojp0eXBlKHR5cGVOYW1lKSA+PSBRTWV0YVR5cGU6OlVzZXIpIHsKKyAgICAgICAgYm9vbCBrbm93
bkVudW0gPSBpc0NoZWNrZWRFbnVtKHR5cGVOYW1lKTsKKyAgICAgICAgYm9vbCBrbm93bkNsYXNz
ID0gaXNDaGVja2VkQ2xhc3ModHlwZU5hbWUpOworICAgICAgICBRVkVSSUZZMihrbm93bkVudW0g
fHwga25vd25DbGFzcywgcVByaW50YWJsZShRU3RyaW5nKCJUaGUgQVBJIHVzZXMgYW4gdW5rbm93
biB0eXBlIFslMV0sIHlvdSBtaWdodCBoYXZlIHRvIGFkZCBpdCB0byB0aGUgdHlwZXNUb0NoZWNr
IGxpc3QuIikuYXJnKHR5cGVOYW1lLmNvbnN0RGF0YSgpKSkpOworICAgIH0KK30KKworc3RhdGlj
IHZvaWQgZ2F0aGVyQVBJKGNvbnN0IFFTdHJpbmcmIHByZWZpeCwgY29uc3QgUU1ldGFFbnVtJiBt
ZXRhRW51bSwgUVN0cmluZ0xpc3QqIG91dHB1dCkKK3sKKyAgICBmb3IgKGludCBpID0gMDsgaSA8
IG1ldGFFbnVtLmtleUNvdW50KCk7ICsraSkKKyAgICAgICAgKm91dHB1dCA8PCBRU3RyaW5nOjpm
cm9tTGF0aW4xKCIlMSUyIC0tPiAlMyIpLmFyZyhwcmVmaXgpLmFyZyhtZXRhRW51bS5rZXkoaSkp
LmFyZyhtZXRhRW51bS5uYW1lKCkpOworfQorCitzdGF0aWMgdm9pZCBnYXRoZXJBUEkoY29uc3Qg
UVN0cmluZyYgcHJlZml4LCBjb25zdCBRTWV0YVByb3BlcnR5JiBwcm9wZXJ0eSwgUVN0cmluZ0xp
c3QqIG91dHB1dCkKK3sKKyAgICAqb3V0cHV0IDw8IFFTdHJpbmc6OmZyb21MYXRpbjEoIiUxJTIg
LS0+ICUzIikuYXJnKHByZWZpeCkuYXJnKHByb3BlcnR5Lm5hbWUoKSkuYXJnKHByb3BlcnR5LnR5
cGVOYW1lKCkpOworICAgIGNoZWNrS25vd25UeXBlKHByb3BlcnR5LnR5cGVOYW1lKCkpOworfQor
CitzdGF0aWMgdm9pZCBnYXRoZXJBUEkoY29uc3QgUVN0cmluZyYgcHJlZml4LCBjb25zdCBRTWV0
YU1ldGhvZCYgbWV0aG9kLCBRU3RyaW5nTGlzdCogb3V0cHV0KQoreworICAgIGlmIChtZXRob2Qu
YWNjZXNzKCkgIT0gUU1ldGFNZXRob2Q6OlByaXZhdGUpIHsKKyAgICAgICAgY29uc3QgY2hhciog
bWV0aG9kVHlwZU5hbWUgPSAhIXN0cmxlbihtZXRob2QudHlwZU5hbWUoKSkgPyBtZXRob2QudHlw
ZU5hbWUoKSA6ICJ2b2lkIjsKKyAgICAgICAgKm91dHB1dCA8PCBRU3RyaW5nOjpmcm9tTGF0aW4x
KCIlMSUyIC0tPiAlMyIpLmFyZyhwcmVmaXgpLmFyZyhtZXRob2Quc2lnbmF0dXJlKCkpLmFyZyht
ZXRob2RUeXBlTmFtZSk7CisKKyAgICAgICAgY2hlY2tLbm93blR5cGUobWV0aG9kVHlwZU5hbWUp
OworICAgICAgICBmb3JlYWNoIChRQnl0ZUFycmF5IHBhcmFtVHlwZSwgbWV0aG9kLnBhcmFtZXRl
clR5cGVzKCkpCisgICAgICAgICAgICBjaGVja0tub3duVHlwZShwYXJhbVR5cGUpOworICAgIH0K
K30KKworc3RhdGljIHZvaWQgZ2F0aGVyQVBJKGNvbnN0IFFTdHJpbmcmIHByZWZpeCwgY29uc3Qg
UU1ldGFPYmplY3QqIG1ldGEsIFFTdHJpbmdMaXN0KiBvdXRwdXQpCit7CisgICAgLy8gKk9mZnNl
dCBwb2ludHMgdXMgb25seSBhdCB0aGUgbGVhZiBjbGFzcyBtZW1iZXJzLCB3ZSBkb24ndCBoYXZl
IGluaGVyaXRhbmNlIGluIG91ciBBUEkgeWV0IGFueXdheS4KKyAgICBmb3IgKGludCBpID0gbWV0
YS0+ZW51bWVyYXRvck9mZnNldCgpOyBpIDwgbWV0YS0+ZW51bWVyYXRvckNvdW50KCk7ICsraSkK
KyAgICAgICAgZ2F0aGVyQVBJKHByZWZpeCwgbWV0YS0+ZW51bWVyYXRvcihpKSwgb3V0cHV0KTsK
KyAgICBmb3IgKGludCBpID0gbWV0YS0+cHJvcGVydHlPZmZzZXQoKTsgaSA8IG1ldGEtPnByb3Bl
cnR5Q291bnQoKTsgKytpKQorICAgICAgICBnYXRoZXJBUEkocHJlZml4LCBtZXRhLT5wcm9wZXJ0
eShpKSwgb3V0cHV0KTsKKyAgICBmb3IgKGludCBpID0gbWV0YS0+bWV0aG9kT2Zmc2V0KCk7IGkg
PCBtZXRhLT5tZXRob2RDb3VudCgpOyArK2kpCisgICAgICAgIGdhdGhlckFQSShwcmVmaXgsIG1l
dGEtPm1ldGhvZChpKSwgb3V0cHV0KTsKK30KKwordm9pZCB0c3RfcHVibGljYXBpOjpwdWJsaWNB
UEkoKQoreworICAgIFFTdHJpbmdMaXN0IGFjdHVhbEFQSTsKKyAgICBmb3JlYWNoIChjb25zdCBR
TWV0YU9iamVjdCogbWV0YSwgdHlwZXNUb0NoZWNrKQorICAgICAgICBnYXRoZXJBUEkoUVN0cmlu
Zzo6ZnJvbUxhdGluMShtZXRhLT5jbGFzc05hbWUoKSkgKyAiLiIsIG1ldGEsICZhY3R1YWxBUEkp
OworCisgICAgLy8gVW5jb21tZW50IHRvIHByaW50IHRoZSBhY3R1YWwgQVBJLgorICAgIC8vIGZv
cmVhY2goUVN0cmluZyBhY3R1YWwsIGFjdHVhbEFQSSkKKyAgICAvLyAgICAgcHJpbnRmKCIgICAg
PDwgXCIlc1wiXG4iLCBxUHJpbnRhYmxlKGFjdHVhbCkpOworCisgICAgLy8gTWFrZSBzdXJlIHRo
YXQgbm90aGluZyBzbGlwcyBpbiB0aGUgcHVibGljIEFQSSB1bmludGVudGlvbmFsbHkuCisgICAg
Zm9yZWFjaCAoUVN0cmluZyBhY3R1YWwsIGFjdHVhbEFQSSkKKyAgICAgICAgUVZFUklGWTIoZXhw
ZWN0ZWRBUEkuY29udGFpbnMoYWN0dWFsKSwgcVByaW50YWJsZShhY3R1YWwpKTsKKyAgICAvLyBN
YWtlIHN1cmUgdGhhdCB0aGUgZXhwZWN0ZWQgbGlzdCBpcyB1cC10by1kYXRlIHdpdGggaW50ZW50
aW9uYWxseSBhZGRlZCBBUElzLgorICAgIGZvcmVhY2ggKFFTdHJpbmcgZXhwZWN0ZWQsIGV4cGVj
dGVkQVBJKQorICAgICAgICBRVkVSSUZZMihhY3R1YWxBUEkuY29udGFpbnMoZXhwZWN0ZWQpLCBx
UHJpbnRhYmxlKGV4cGVjdGVkKSk7Cit9CisKK1FURVNUX01BSU4odHN0X3B1YmxpY2FwaSkKKwor
I2luY2x1ZGUgInRzdF9wdWJsaWNhcGkubW9jIgpkaWZmIC0tZ2l0IGEvU291cmNlL3Rlc3RzLnBy
aSBiL1NvdXJjZS90ZXN0cy5wcmkKaW5kZXggMWI0MTVmZGYxZGY4ZDIzYWRhZTg2OTFhMTI4ZjYw
ZjFiZGJkNzUzMC4uYzlhNmI3YWYxNTIyOTE5MjE2MGM2ZTBhMTNiYWM3ODkxMDBiY2MyZCAxMDA2
NDQKLS0tIGEvU291cmNlL3Rlc3RzLnByaQorKysgYi9Tb3VyY2UvdGVzdHMucHJpCkBAIC00Myw2
ICs0Myw3IEBAIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9XRUJHTD0xKSB7CiAgICAgV0VCS0lU
Ml9URVNUU19ESVIgPSAkJFBXRC9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMKIAogICAg
IFNVQkRJUlMgKz0gXAorICAgICAgICAkJFdFQktJVDJfVEVTVFNfRElSL3B1YmxpY2FwaSBcCiAg
ICAgICAgICQkV0VCS0lUMl9URVNUU19ESVIvcXF1aWNrd2VidmlldyBcCiAgICAgICAgICQkV0VC
S0lUMl9URVNUU19ESVIvcW1sdGVzdHMKIH0KZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5n
ZUxvZwppbmRleCAwZTRmYzBiNDA0OGU5Mzc0ZjA1ZjZlOTA1OTdlNTdmMWFjOWQ0MGYyLi4xZTAz
MTQ4OTQyYTk5MDc3MTQwMjU2ZDI3YmM0Y2Q5NTRiNDFhYTA1IDEwMDY0NAotLS0gYS9DaGFuZ2VM
b2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDEtMTkgIEpvY2VseW4g
VHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQG5va2lhLmNvbT4KKworICAgICAgICBbUXRdIFB1
YmxpYyBBUEkgd2F0Y2ggZG9nIGF1dG8gdGVzdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTczOTIyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24g
SGF1c21hbm4uCisKKyAgICAgICAgVGhpcyB0ZXN0IGFpbXMgdG8gcHJldmVudCB1bmludGVuZGVk
L3VuYXBwcm92ZWQKKyAgICAgICAgbW9kaWZpY2F0aW9ucyB0byB0aGUgcHVibGljIFFNTCBBUEku
CisKKyAgICAgICAgKiBTb3VyY2UvdGVzdHMucHJpOgorCiAyMDEyLTAxLTE4ICBCYWxhenMgS2Vs
ZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KIAogICAgICAgICBbUXRdIENvbnNvbGlkYXRlIGxh
eW91dCB0ZXN0IGNyYXNoIGxvZ2dpbmcK
</data>
<flag name="review"
          id="124092"
          type_id="1"
          status="+"
          setter="hausmann"
    />
          </attachment>
      

    </bug>

</bugzilla>