<?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>99463</bug_id>
          
          <creation_ts>2012-10-16 07:38:17 -0700</creation_ts>
          <short_desc>[Qt] OpenGL rendering is not possible on bots using Xvfb</short_desc>
          <delta_ts>2012-10-18 08:16:36 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</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>
          <dependson>95992</dependson>
    
    <dependson>98654</dependson>
          <blocked>94800</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Balazs Kelemen">kbalazs</reporter>
          <assigned_to name="Balazs Kelemen">kbalazs</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>jturcotte</cc>
    
    <cc>ojan</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>743131</commentid>
    <comment_count>0</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-16 07:38:17 -0700</bug_when>
    <thetext>We need a workaround to be able to land the patches for pixel testing without breaking testing bots that run tests in xvfb-run. Painting seems to be extremely slow with Xvfb.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743155</commentid>
    <comment_count>1</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-16 08:16:17 -0700</bug_when>
    <thetext>At first glance it fixes the slowdown in xvfb-run. I tested it in the bot environment (but not ran all the tests yet).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743158</commentid>
    <comment_count>2</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-16 08:19:29 -0700</bug_when>
    <thetext>So the plan is to 1. get an r+, 2. ask Ossy to set env var for every bot, 3. land the two pixel test and this in one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743162</commentid>
    <comment_count>3</comment_count>
      <attachid>168952</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-16 08:23:07 -0700</bug_when>
    <thetext>Created attachment 168952
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743170</commentid>
    <comment_count>4</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-16 08:39:34 -0700</bug_when>
    <thetext>Test session finished in 21.5 minutes with this for me on the bot machine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743182</commentid>
    <comment_count>5</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-16 08:51:02 -0700</bug_when>
    <thetext>Of course it won&apos;t build on the ews without the dependencies.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743195</commentid>
    <comment_count>6</comment_count>
      <attachid>168952</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-10-16 09:15:52 -0700</bug_when>
    <thetext>Comment on attachment 168952
Patch

Attachment 168952 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/14389201</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743230</commentid>
    <comment_count>7</comment_count>
      <attachid>168952</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-10-16 09:57:16 -0700</bug_when>
    <thetext>Comment on attachment 168952
Patch

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

&gt; Tools/WebKitTestRunner/qt/PlatformWebViewQt.cpp:73
&gt; +        if (!isRunningWithXvfb()) {

Is there really no way to detect this at runtime? This is like showing a dialog to the user asking if his processor supports 64 bits before launching a 64 bits binary, computers are supposed to be smarter than this.

&gt; Tools/WebKitTestRunner/qt/TestInvocationQt.cpp:69
&gt; +    if (TestController::shared().mainWebView()-&gt;supportsSnapshot()) {

I don&apos;t understand why you need to define it for every port if you only call it from Qt code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744039</commentid>
    <comment_count>8</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-17 02:13:33 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 168952 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=168952&amp;action=review
&gt; 
&gt; &gt; Tools/WebKitTestRunner/qt/PlatformWebViewQt.cpp:73
&gt; &gt; +        if (!isRunningWithXvfb()) {
&gt; 
&gt; Is there really no way to detect this at runtime? This is like showing a dialog to the user asking if his processor supports 64 bits before launching a 64 bits binary, computers are supposed to be smarter than this.

I don&apos;t see an evident way to detect what X server we are running against, but I will try to find something. Most probably the best I can get up with is to check whether xvfb is running via /proc.

&gt; 
&gt; &gt; Tools/WebKitTestRunner/qt/TestInvocationQt.cpp:69
&gt; &gt; +    if (TestController::shared().mainWebView()-&gt;supportsSnapshot()) {
&gt; 
&gt; I don&apos;t understand why you need to define it for every port if you only call it from Qt code.

Ok, I will move it behind PLATFORM(QT).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744073</commentid>
    <comment_count>9</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-10-17 02:52:56 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; I don&apos;t see an evident way to detect what X server we are running against, but I will try to find something. Most probably the best I can get up with is to check whether xvfb is running via /proc.

The problem is not xvfb itself but rather that it&apos;s slow. So it would be nice to know first why it&apos;s slow on xvfb, if it runs in software, etc. There has to be a way to call some Qt/OpenGL function to get caps telling us if it&apos;s worth making those snapshot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744210</commentid>
    <comment_count>10</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-10-17 06:44:45 -0700</bug_when>
    <thetext>After discussion on IRC I&apos;m not sure anymore that there would be a reliable way to detect this from within WebKitTestRunner. It turns out that this is caused by the mesa software rasterizer. So the environment variable is probably the best option we have beside adding a new command line option to WebKitTestRunner and run-webkit-test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744221</commentid>
    <comment_count>11</comment_count>
      <attachid>169177</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-17 07:00:21 -0700</bug_when>
    <thetext>Created attachment 169177
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744251</commentid>
    <comment_count>12</comment_count>
      <attachid>169188</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-17 08:19:46 -0700</bug_when>
    <thetext>Created attachment 169188
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744252</commentid>
    <comment_count>13</comment_count>
      <attachid>169189</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-17 08:22:36 -0700</bug_when>
    <thetext>Created attachment 169189
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744282</commentid>
    <comment_count>14</comment_count>
      <attachid>169189</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-10-17 08:56:02 -0700</bug_when>
    <thetext>Comment on attachment 169189
Patch

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

&gt; Tools/ChangeLog:27
&gt; +        of evaulating pixel results if the snapshot is not supported, that is to check

s/evaulating/evaluating/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744285</commentid>
    <comment_count>15</comment_count>
      <attachid>169189</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-17 08:58:27 -0700</bug_when>
    <thetext>Comment on attachment 169189
Patch

Going to land tomorrow when I can watch the bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>745267</commentid>
    <comment_count>16</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-10-18 08:16:22 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/131727</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168952</attachid>
            <date>2012-10-16 08:23:07 -0700</date>
            <delta_ts>2012-10-17 07:00:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-99463-20121016172155.patch</filename>
            <type>text/plain</type>
            <size>9077</size>
            <attacher name="Balazs Kelemen">kbalazs</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxNDU2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzU0OGJhZjljMjM3NGRmNTg4ODAzNDgxYzQ4MzEyNmJl
NmVlMzUyYi4uZDZiYzEzMzQ5MjNhNzRkMzNhYWEzMGU5MGMwZTgwNmYzMmMxYjliZiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5
IEBACisyMDEyLTEwLTE2ICBCYWxhenMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBbUXRdIE9wZW5HTCByZW5kZXJpbmcgaXMgbm90IHBvc3NpYmxlIG9uIGJvdHMgdXNp
bmcgWHZmYgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
OTk0NjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGRlZCBhIHdvcmthcm91bmQgdG8gZGlzYWxsb3cgT3BlbkdsIHJlbmRlcmluZyBpZiB3ZSBhcmUg
cnVubmluZyB3aXRoIFh2ZmIgYmVjYXVlcworICAgICAgICBpdCBpcyBleHRyZW1lbHkgc2xvdyBh
bmQgd2UgY291bGQgbm90IGNyZWF0ZSB2YWxpZCByZXN1bHRzIGluIHRoaXMgY2FzZSBhbnl3YXku
IExldAorICAgICAgICB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgUVRfV0VCS0lUX1JVTk5JTkdf
V0lUSF9YVkZCIHJlYWNoIHRoZSBkcml2ZXIuIERvbid0IHRyeSB0bworICAgICAgICBzZXQgYW4g
T3BlbkdMIHN1cmZhY2UgYW5kIHNldCB0aGUgc2V0UmVuZGVyV2l0aG91dFNob3dpbmcgZmxhZyBv
biB0aGUgd2luZG93IGlmIHRoZQorICAgICAgICB2YXJpYWJsZSBpcyBzZXQuIFRoaXMgdmFyaWFi
bGUgc2hvdWxkIGJlIGRlZmluZWQgb24gYm90cyB0aGF0IHJ1biB0aGUgdGVzdCBoYXJuZXNzCisg
ICAgICAgIGluIHh2ZmItcnVuLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9xdC5weToKKyAgICAgICAgKFF0UG9ydC5zZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2
ZXIpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3Lmg6CisgICAg
ICAgIChQbGF0Zm9ybVdlYlZpZXcpOiBBZGRlZCBzdXBwb3J0c1NuYXBzaG90KCkgbWV0aG9kIHRv
IGJlIGltcGxlbWVudGVkCisgICAgICAgIHBlciBwbGF0Zm9ybS4gRm9yIHRoZSBvdGhlciBwbGF0
Zm9ybXMgSSBtYWRlIGl0IHJldHVybiB3aXRoIGNvbnN0YW50CisgICAgICAgIGZhbHNlIG9yIHRy
dWUgYWNjb3JkaW5nIHRvIHdoZXRoZXIgdGhlIHNuYXBzaG90IGZlYXR1cmUgaXMgaW1wbGVtZW50
ZWQKKyAgICAgICAgb24gdGhlIHBvcnQuIEZvciBRdCB3ZSBhbHNvIHRha2UgaW50byBhY2NvdW50
IHdoZXRoZXIgd2UgYXJlIHJ1bm5pbmcKKyAgICAgICAgd2l0aCBYdmZiLiBJIG1hZGUgaXQgYSBt
ZW1iZXIgbWV0aG9kIHNvIHdlIGNhbiBlYXNpbHkgaGFuZGxlIGNpcmN1bXN0YW5zZXMKKyAgICAg
ICAgYWJvdXQgdGhlIHZpZXcgaW5zdGFuY2UgaW4gdGhlIGZ1dHVyZSBpZiBpdCB3b3VsZCBiZSBu
ZWNlc3NhcnkuCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9lZmwvUGxhdGZvcm1XZWJWaWV3
RWZsLmNwcDoKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjpzdXBwb3J0c1NuYXBzaG90
KToKKyAgICAgICAgKFdUUik6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9ndGsvUGxhdGZv
cm1XZWJWaWV3R3RrLmNwcDoKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjpzdXBwb3J0
c1NuYXBzaG90KToKKyAgICAgICAgKFdUUik6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9t
YWMvUGxhdGZvcm1XZWJWaWV3TWFjLm1tOgorICAgICAgICAoV1RSOjpQbGF0Zm9ybVdlYlZpZXc6
OnN1cHBvcnRzU25hcHNob3QpOgorICAgICAgICAoV1RSKToKKyAgICAgICAgKiBXZWJLaXRUZXN0
UnVubmVyL3F0L1BsYXRmb3JtV2ViVmlld1F0LmNwcDoKKyAgICAgICAgKFdUUjo6aXNSdW5uaW5n
V2l0aFh2ZmIpOgorICAgICAgICAoV1RSKToKKyAgICAgICAgKFdUUjo6V3JhcHBlcldpbmRvdzo6
aGFuZGxlU3RhdHVzQ2hhbmdlZCk6CisgICAgICAgIChXVFI6OlBsYXRmb3JtV2ViVmlldzo6c3Vw
cG9ydHNTbmFwc2hvdCk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9xdC9UZXN0SW52b2Nh
dGlvblF0LmNwcDogIFVzZSB0aGUgb2xkIG1ldGhvZCBvZgorICAgICAgICBldmF1bGF0aW5nIHBp
eGVsIHJlc3VsdHMgaWYgdGhlIHNuYXBzaG90IGlzIG5vdCBzdXBwb3J0ZWQsIHRoYXQgaXMKKyAg
ICAgICAgdG8gY2hlY2sgdGhlIGltYWdlIHdlIGdvdCBmcm9tIHRoZSB3ZWIgcHJvY2Vzcy4gVGhp
cyBpcyBuZWNlc3NhcnkKKyAgICAgICAgZm9yIHRoZSBib3RzIHRvIGJlIGFibGUgdG8gcnVuIHJl
ZiB0ZXN0cy4KKyAgICAgICAgKFdUUjo6VGVzdEludm9jYXRpb246OmR1bXBQaXhlbHNBbmRDb21w
YXJlV2l0aEV4cGVjdGVkKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL3dpbi9QbGF0Zm9y
bVdlYlZpZXdXaW4uY3BwOgorICAgICAgICAoV1RSOjpQbGF0Zm9ybVdlYlZpZXc6OnN1cHBvcnRz
U25hcHNob3QpOgorICAgICAgICAoV1RSKToKKwogMjAxMi0xMC0xNiAgU2ltb24gSGF1c21hbm4g
IDxzaW1vbi5oYXVzbWFubkBkaWdpYS5jb20+CiAKICAgICAgICAgW1F0XSBGaXggbm1ha2Ugd2lw
ZWNsZWFuIG9uIFdpbmRvd3MKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvcXQucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9wb3J0L3F0LnB5CmluZGV4IDViODM0MmQ5Y2UwZDliOTI3OTY4YjM5NTBiNzNlNTU3MzM0MzVm
NDYuLmEyMTA4MGYyMmMzOGZiNzYxN2M4MTBiOTdjMjA3OGE0ZGMwOTQxNmQgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQucHkKKysrIGIvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9xdC5weQpAQCAtMTYwLDYgKzE2
MCw3IEBAIGNsYXNzIFF0UG9ydChQb3J0KToKICAgICAgICAgc2VsZi5fY29weV92YWx1ZV9mcm9t
X2Vudmlyb25faWZfc2V0KGNsZWFuX2VudiwgJ0RJU0FCTEVfTklfV0FSTklORycpCiAgICAgICAg
IHNlbGYuX2NvcHlfdmFsdWVfZnJvbV9lbnZpcm9uX2lmX3NldChjbGVhbl9lbnYsICdRVF9XRUJL
SVRfUEFVU0VfVUlfUFJPQ0VTUycpCiAgICAgICAgIHNlbGYuX2NvcHlfdmFsdWVfZnJvbV9lbnZp
cm9uX2lmX3NldChjbGVhbl9lbnYsICdRVF9RUEFfUExBVEZPUk1fUExVR0lOX1BBVEgnKQorICAg
ICAgICBzZWxmLl9jb3B5X3ZhbHVlX2Zyb21fZW52aXJvbl9pZl9zZXQoY2xlYW5fZW52LCAnUVRf
V0VCS0lUX1JVTk5JTkdfV0lUSF9YVkZCJykKICAgICAgICAgcmV0dXJuIGNsZWFuX2VudgogCiAg
ICAgIyBGSVhNRTogV2Ugc2hvdWxkIGZpbmQgYSB3YXkgdG8gc2hhcmUgdGhpcyBpbXBsbWVudGF0
aW9uIHdpdGggR3RrLApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0Zm9y
bVdlYlZpZXcuaCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3LmgKaW5k
ZXggNDNiNzljMzNlMDEyNmY5MjQ4MGE0M2I2ODY4NWQ3MmM5NWFkOTczMy4uZGJhZjllMGEwMzNm
ODQzMmE4NDE1Y2I4ZjdiYWEwMDQ5OWFmMjE0ZSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9QbGF0Zm9ybVdlYlZpZXcuaAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Bs
YXRmb3JtV2ViVmlldy5oCkBAIC04Nyw3ICs4Nyw4IEBAIHB1YmxpYzoKICAgICB2b2lkIG1ha2VX
ZWJWaWV3Rmlyc3RSZXNwb25kZXIoKTsKICAgICB2b2lkIHNldFdpbmRvd0lzS2V5KGJvb2wgaXNL
ZXkpIHsgbV93aW5kb3dJc0tleSA9IGlzS2V5OyB9CiAgICAgYm9vbCB3aW5kb3dJc0tleSgpIGNv
bnN0IHsgcmV0dXJuIG1fd2luZG93SXNLZXk7IH0KLSAgICAKKworICAgIGJvb2wgc3VwcG9ydHNT
bmFwc2hvdCgpIGNvbnN0OwogICAgIFdLUmV0YWluUHRyPFdLSW1hZ2VSZWY+IHdpbmRvd1NuYXBz
aG90SW1hZ2UoKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvZWZsL1BsYXRmb3JtV2ViVmlld0VmbC5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2Vm
bC9QbGF0Zm9ybVdlYlZpZXdFZmwuY3BwCmluZGV4IDA2MTg3YTA2NmQzMDJlY2JmOGMyZGVjMDNi
ZWE1ZjI2OWYzZGRhNmUuLjg2MmQzNGY0ODgzYzFjOTVlYTcwNzg4N2E4OWRjOWNlYzUyYjY2YjEg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvZWZsL1BsYXRmb3JtV2ViVmlld0Vm
bC5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9lZmwvUGxhdGZvcm1XZWJWaWV3RWZs
LmNwcApAQCAtMTA3LDUgKzEwNywxMCBAQCBXS1JldGFpblB0cjxXS0ltYWdlUmVmPiBQbGF0Zm9y
bVdlYlZpZXc6OndpbmRvd1NuYXBzaG90SW1hZ2UoKQogICAgIHJldHVybiAwOwogfQogCitib29s
IFBsYXRmb3JtV2ViVmlldzo6c3VwcG9ydHNTbmFwc2hvdCgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IGZhbHNlOworfQorCiB9IC8vIG5hbWVzcGFjZSBXVFIKIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci9ndGsvUGxhdGZvcm1XZWJWaWV3R3RrLmNwcCBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvZ3RrL1BsYXRmb3JtV2ViVmlld0d0ay5jcHAKaW5kZXggZjE2MTVkNGFjMzVkN2M3
ZWUwMDEwYjMwYmUyN2I0NWFmOWMwMzkwMC4uMmZkYjBmZDFkNGE0ODExYmNhMDk0YmQzM2VkMGU3
YWEzYWVkNDZlZSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9ndGsvUGxhdGZv
cm1XZWJWaWV3R3RrLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2d0ay9QbGF0Zm9y
bVdlYlZpZXdHdGsuY3BwCkBAIC0xMjAsNSArMTIwLDEwIEBAIFdLUmV0YWluUHRyPFdLSW1hZ2VS
ZWY+IFBsYXRmb3JtV2ViVmlldzo6d2luZG93U25hcHNob3RJbWFnZSgpCiAgICAgcmV0dXJuIDA7
CiB9CiAKK2Jvb2wgUGxhdGZvcm1XZWJWaWV3OjpzdXBwb3J0c1NuYXBzaG90KCkgY29uc3QKK3sK
KyAgICByZXR1cm4gZmFsc2U7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdUUgogCmRpZmYgLS1naXQg
YS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0gYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0KaW5kZXggZGI1ZDEx
OTdjZWViOGIwNDgzMDM2MmM1MDcxYTZkZTkyYzRhMzkyYS4uMmQzZWQ1MmMzYmZlZmNjOTdhYzc5
ZWE3MGQ5OGFiODY4M2QxMzAwYSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9t
YWMvUGxhdGZvcm1XZWJWaWV3TWFjLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFj
L1BsYXRmb3JtV2ViVmlld01hYy5tbQpAQCAtMTY4LDQgKzE2OCw5IEBAIFdLUmV0YWluUHRyPFdL
SW1hZ2VSZWY+IFBsYXRmb3JtV2ViVmlldzo6d2luZG93U25hcHNob3RJbWFnZSgpCiAgICAgcmV0
dXJuIGFkb3B0V0soV0tJbWFnZUNyZWF0ZUZyb21DR0ltYWdlKHdpbmRvd1NuYXBzaG90SW1hZ2Uu
Z2V0KCksIDApKTsKIH0KIAorYm9vbCBQbGF0Zm9ybVdlYlZpZXc6OnN1cHBvcnRzU25hcHNob3Qo
KSBjb25zdAoreworICAgIHJldHVybiB0cnVlOworfQorCiB9IC8vIG5hbWVzcGFjZSBXVFIKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvcXQvUGxhdGZvcm1XZWJWaWV3UXQuY3Bw
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAKaW5kZXgg
MWU1M2IwODg1ZjQwZDgzNTc4OGQ0MjRiMGEwN2IwYzc3MTg5ZGU1Yi4uZTk0ZjNjMTc1NTk1MDEz
YzliY2UwY2FlNjM2MjFlNzU0MGYzY2U4MiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAKQEAgLTM5LDYgKzM5LDE1IEBACiAKIG5hbWVzcGFj
ZSBXVFIgewogCitzdGF0aWMgYm9vbCBpc1J1bm5pbmdXaXRoWHZmYigpCit7CisgICAgc3RhdGlj
IGJvb2wgaXNSdW5uaW5nSW5YdmZiOworICAgIHN0YXRpYyBib29sIGhhc0NoZWNrZWQgPSBmYWxz
ZTsKKyAgICBpZiAoIWhhc0NoZWNrZWQpCisgICAgICAgIGlzUnVubmluZ0luWHZmYiA9IHFnZXRl
bnYoIlFUX1dFQktJVF9SVU5OSU5HX1dJVEhfWFZGQiIpID09ICIxIjsKKyAgICByZXR1cm4gaXNS
dW5uaW5nSW5YdmZiOworfQorCiBjbGFzcyBXcmFwcGVyV2luZG93IDogcHVibGljIFFRdWlja1Zp
ZXcgewogICAgIFFfT0JKRUNUCiBwdWJsaWM6CkBAIC02MSw2ICs3MCwxMiBAQCBwcml2YXRlIFFf
U0xPVFM6CiAgICAgICAgIG1fdmlldy0+c2V0UGFyZW50SXRlbShyb290T2JqZWN0KCkpOwogICAg
ICAgICBRUW1sUHJvcGVydHk6OndyaXRlKG1fdmlldywgImFuY2hvcnMuZmlsbCIsIHFWYXJpYW50
RnJvbVZhbHVlKHJvb3RPYmplY3QoKSkpOwogCisgICAgICAgIGlmICghaXNSdW5uaW5nV2l0aFh2
ZmIoKSkgeworICAgICAgICAgICAgc2V0U3VyZmFjZVR5cGUoT3BlbkdMU3VyZmFjZSk7CisgICAg
ICAgICAgICBjcmVhdGUoKTsKKyAgICAgICAgICAgIFFRdWlja1dpbmRvd1ByaXZhdGU6OmdldCh0
aGlzKS0+c2V0UmVuZGVyV2l0aG91dFNob3dpbmcodHJ1ZSk7CisgICAgICAgIH0KKwogICAgICAg
ICBRV2luZG93U3lzdGVtSW50ZXJmYWNlOjpoYW5kbGVXaW5kb3dBY3RpdmF0ZWQodGhpcyk7CiAg
ICAgICAgIG1fdmlldy0+cGFnZSgpLT5zZXRGb2N1cyh0cnVlKTsKICAgICB9CkBAIC0xNTcsNiAr
MTcyLDExIEBAIFdLUmV0YWluUHRyPFdLSW1hZ2VSZWY+IFBsYXRmb3JtV2ViVmlldzo6d2luZG93
U25hcHNob3RJbWFnZSgpCiAgICAgcmV0dXJuIDA7CiB9CiAKK2Jvb2wgUGxhdGZvcm1XZWJWaWV3
OjpzdXBwb3J0c1NuYXBzaG90KCkgY29uc3QKK3sKKyAgICByZXR1cm4gIWlzUnVubmluZ1dpdGhY
dmZiKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdUUgogCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJW
aWV3UXQubW9jIgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9UZXN0SW52
b2NhdGlvblF0LmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvcXQvVGVzdEludm9jYXRpb25R
dC5jcHAKaW5kZXggOTgxYzIwMzJhMjk3ODcwMmY2YjZjYTI0YTE5OGRmNDk5MTRkY2YzZi4uODhj
MDIzYzMzYzI5ODA4M2Y3ZWVhOTkwNTAzYzgzNDhlYjNkMTc5ZSAxMDA2NDQKLS0tIGEvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9xdC9UZXN0SW52b2NhdGlvblF0LmNwcAorKysgYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL3F0L1Rlc3RJbnZvY2F0aW9uUXQuY3BwCkBAIC02NSw3ICs2NSwyMyBAQCBz
dGF0aWMgdm9pZCBkdW1wSW1hZ2UoY29uc3QgUUltYWdlJiBpbWFnZSkKIAogdm9pZCBUZXN0SW52
b2NhdGlvbjo6ZHVtcFBpeGVsc0FuZENvbXBhcmVXaXRoRXhwZWN0ZWQoV0tJbWFnZVJlZiBpbWFn
ZVJlZiwgV0tBcnJheVJlZiByZXBhaW50UmVjdHMpCiB7Ci0gICAgUUltYWdlIGltYWdlID0gV0tJ
bWFnZUNyZWF0ZVFJbWFnZShpbWFnZVJlZik7CisgICAgUUltYWdlIGltYWdlOworICAgIGlmIChU
ZXN0Q29udHJvbGxlcjo6c2hhcmVkKCkubWFpbldlYlZpZXcoKS0+c3VwcG9ydHNTbmFwc2hvdCgp
KSB7CisgICAgICAgIFdLUGFnZVJlZiBwYWdlID0gVGVzdENvbnRyb2xsZXI6OnNoYXJlZCgpLm1h
aW5XZWJWaWV3KCktPnBhZ2UoKTsKKyAgICAgICAgV0tQYWdlRm9yY2VSZXBhaW50KHBhZ2UsIHRo
aXMsICZmb3JjZVJlcGFpbnREb25lQ2FsbGJhY2spOworCisgICAgICAgIFRlc3RDb250cm9sbGVy
OjpzaGFyZWQoKS5ydW5VbnRpbChtX2dvdFJlcGFpbnQsIFRlc3RDb250cm9sbGVyOjpTaG9ydFRp
bWVvdXQpOworCisgICAgICAgIGlmIChtX2dvdFJlcGFpbnQpCisgICAgICAgICAgICBpbWFnZSA9
IFdLSW1hZ2VDcmVhdGVRSW1hZ2UoVGVzdENvbnRyb2xsZXI6OnNoYXJlZCgpLm1haW5XZWJWaWV3
KCktPndpbmRvd1NuYXBzaG90SW1hZ2UoKS5nZXQoKSk7CisgICAgICAgIGVsc2UgeworICAgICAg
ICAgICAgLy8gVGhlIHRlc3QgaGFybmVzcyBleHBlY3RzIGFuIGltYWdlIHNvIHdlIG91dHB1dCBh
biBlbXB0eSBvbmUuCisgICAgICAgICAgICBXS1JlY3Qgd2luZG93UmVjdCA9IFRlc3RDb250cm9s
bGVyOjpzaGFyZWQoKS5tYWluV2ViVmlldygpLT53aW5kb3dGcmFtZSgpOworICAgICAgICAgICAg
aW1hZ2UgPSBRSW1hZ2UoUVNpemUod2luZG93UmVjdC5zaXplLndpZHRoLCB3aW5kb3dSZWN0LnNp
emUuaGVpZ2h0KSwgUUltYWdlOjpGb3JtYXRfQVJHQjMyX1ByZW11bHRpcGxpZWQpOworICAgICAg
ICAgICAgaW1hZ2UuZmlsbChRdDo6cmVkKTsKKyAgICAgICAgfQorICAgIH0gZWxzZQorICAgICAg
ICBpbWFnZSA9IFdLSW1hZ2VDcmVhdGVRSW1hZ2UoaW1hZ2VSZWYpOwogCiAgICAgaWYgKHJlcGFp
bnRSZWN0cykgewogICAgICAgICBRSW1hZ2UgbWFzayhpbWFnZS5zaXplKCksIGltYWdlLmZvcm1h
dCgpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvd2luL1BsYXRmb3JtV2Vi
Vmlld1dpbi5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3dpbi9QbGF0Zm9ybVdlYlZpZXdX
aW4uY3BwCmluZGV4IDJmYmNlZjkyMjlhMGY2N2Y2OTE0ZDI1ZjFhZjlmNjU1MmMzMDk3MWIuLmMx
ZTkyZDhhNGRmMzFkNGZlYzI4NTUzNWJiOWI0YmMzOGRhYWNhYmQgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1dlYktpdFRlc3RSdW5uZXIvd2luL1BsYXRmb3JtV2ViVmlld1dpbi5jcHAKKysrIGIvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci93aW4vUGxhdGZvcm1XZWJWaWV3V2luLmNwcApAQCAtMTE4LDQgKzEx
OCw5IEBAIFdLUmV0YWluUHRyPFdLSW1hZ2VSZWY+IFBsYXRmb3JtV2ViVmlldzo6d2luZG93U25h
cHNob3RJbWFnZSgpCiAgICAgcmV0dXJuIDA7CiB9CiAKK2Jvb2wgUGxhdGZvcm1XZWJWaWV3Ojpz
dXBwb3J0c1NuYXBzaG90KCkgY29uc3QKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIH0gLy8g
bmFtZXNwYWNlIFdUUgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>169177</attachid>
            <date>2012-10-17 07:00:21 -0700</date>
            <delta_ts>2012-10-17 08:19:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-99463-20121017155906.patch</filename>
            <type>text/plain</type>
            <size>6752</size>
            <attacher name="Balazs Kelemen">kbalazs</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxMzA3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjY4ZjE0MGUzNjY3NWVjOTZhYmNkZjBhMWVkZWJiZjIz
NGEwYTMzYi4uNTRmYjU0YjJlZjM1ZGZjYjY5NGYxZmNlN2I0ZjY4NDFkYjIxNjEzMyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMz
IEBACisyMDEyLTEwLTE3ICBCYWxhenMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBbUXRdIE9wZW5HTCByZW5kZXJpbmcgaXMgbm90IHBvc3NpYmxlIG9uIGJvdHMgdXNp
bmcgWHZmYgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
OTk0NjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGRlZCBhIHdvcmthcm91bmQgdG8gYmUgYWJsZSB0byBkaXNhbGxvdyBVSSBzaWRlIE9wZW5HTCBy
ZW5kZXJpbmcKKyAgICAgICAgaWYgdGhlIGVudmlyb25tZW50IGlzIG5vdCBzdWl0YWJsZSBiZWNh
dXNlIGl0IGNhbiBiZSBleHRyZW1lbHkgc2xvdworICAgICAgICB3aXRoIGEgc29mdHdhcmUgYmFj
a2VuZC4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQu
cHk6CisgICAgICAgIChRdFBvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKTogTGV0IHRoZSBl
bnZpcm9ubWVudCB2YXJpYWJsZQorICAgICAgICBRVF9XRUJLSVRfRElTQUJMRV9XSU5ET1dfU05B
UFNIT1QgcmVhY2ggdGhlIGRyaXZlci4gVGhpcyB2YXJpYWJsZQorICAgICAgICBzaG91bGQgYmUg
ZGVmaW5lZCBvbiBib3RzIHRoYXQgZG9uJ3QgaGF2ZSBhIHN1aXRhYmxlIE9wZW5HTCBlbnZpcm9u
bWVudC4KKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1BsYXRmb3JtV2ViVmlldy5oOgorICAg
ICAgICAoUGxhdGZvcm1XZWJWaWV3KToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL3F0L1Bs
YXRmb3JtV2ViVmlld1F0LmNwcDoKKyAgICAgICAgKFdUUjo6V3JhcHBlcldpbmRvdzo6aGFuZGxl
U3RhdHVzQ2hhbmdlZCk6IERvbid0IHRyeSB0byBjcmVhdGUgYW4gT3BlbkdMCisgICAgICAgIHN1
cmZhY2UgYW5kIHNldCB0aGUgc2V0UmVuZGVyV2l0aG91dFNob3dpbmcgZmxhZyBvbiB0aGUgd2lu
ZG93IGlmIHRoZQorICAgICAgICB2YXJpYWJsZSBpcyBzZXQuCisgICAgICAgIChXVFI6OlBsYXRm
b3JtV2ViVmlldzo6d2luZG93U25hcHNob3RJbWFnZSk6CisgICAgICAgIChXVFI6OlBsYXRmb3Jt
V2ViVmlldzo6c3VwcG9ydHNXaW5kb3dTbmFwc2hvdCk6CisgICAgICAgIChXVFIpOgorICAgICAg
ICAqIFdlYktpdFRlc3RSdW5uZXIvcXQvVGVzdEludm9jYXRpb25RdC5jcHA6CisgICAgICAgIChX
VFI6OlRlc3RJbnZvY2F0aW9uOjpkdW1wUGl4ZWxzQW5kQ29tcGFyZVdpdGhFeHBlY3RlZCk6IFVz
ZSB0aGUgb2xkIG1ldGhvZAorICAgICAgICBvZiBldmF1bGF0aW5nIHBpeGVsIHJlc3VsdHMgaWYg
dGhlIHNuYXBzaG90IGlzIG5vdCBzdXBwb3J0ZWQsIHRoYXQgaXMgdG8gY2hlY2sKKyAgICAgICAg
dGhlIGltYWdlIHdlIGdvdCBmcm9tIHRoZSB3ZWIgcHJvY2Vzcy4gVGhpcyBpcyBuZWNlc3Nhcnkg
Zm9yIHRoZSBib3RzIHRvIGJlIGFibGUKKyAgICAgICAgdG8gcnVuIHJlZiB0ZXN0cy4KKwogMjAx
Mi0xMC0xNSAgQmFsYXpzIEtlbGVtZW4gIDxrYmFsYXpzQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
W1F0XSBJbXBsZW1lbnQgcGl4ZWwgc25hcHNob3QgZ2VuZXJhdGlvbiBpbiBXVFIKZGlmZiAtLWdp
dCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQucHkgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5CmluZGV4IDViODM0MmQ5
Y2UwZDliOTI3OTY4YjM5NTBiNzNlNTU3MzM0MzVmNDYuLjZkYjBjN2Q5ODc3MDMwMzY3NDhlNmM2
MGU4NTg3NWY4NmIxZWJhOTMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvcXQucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9xdC5weQpAQCAtMTYwLDYgKzE2MCw3IEBAIGNsYXNzIFF0UG9ydChQb3J0KToK
ICAgICAgICAgc2VsZi5fY29weV92YWx1ZV9mcm9tX2Vudmlyb25faWZfc2V0KGNsZWFuX2Vudiwg
J0RJU0FCTEVfTklfV0FSTklORycpCiAgICAgICAgIHNlbGYuX2NvcHlfdmFsdWVfZnJvbV9lbnZp
cm9uX2lmX3NldChjbGVhbl9lbnYsICdRVF9XRUJLSVRfUEFVU0VfVUlfUFJPQ0VTUycpCiAgICAg
ICAgIHNlbGYuX2NvcHlfdmFsdWVfZnJvbV9lbnZpcm9uX2lmX3NldChjbGVhbl9lbnYsICdRVF9R
UEFfUExBVEZPUk1fUExVR0lOX1BBVEgnKQorICAgICAgICBzZWxmLl9jb3B5X3ZhbHVlX2Zyb21f
ZW52aXJvbl9pZl9zZXQoY2xlYW5fZW52LCAnUVRfV0VCS0lUX0RJU0FCTEVfV0lORE9XX1NOQVBT
SE9UJykKICAgICAgICAgcmV0dXJuIGNsZWFuX2VudgogCiAgICAgIyBGSVhNRTogV2Ugc2hvdWxk
IGZpbmQgYSB3YXkgdG8gc2hhcmUgdGhpcyBpbXBsbWVudGF0aW9uIHdpdGggR3RrLApkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0Zm9ybVdlYlZpZXcuaCBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3LmgKaW5kZXggNDNiNzljMzNlMDEyNmY5MjQ4
MGE0M2I2ODY4NWQ3MmM5NWFkOTczMy4uNzAyZDVlZjYzZWNkNzViOGNhMTRhOThiZTk4MWIwZGY1
ZGVhN2Q0YiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0Zm9ybVdlYlZp
ZXcuaAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1BsYXRmb3JtV2ViVmlldy5oCkBAIC03
Nyw2ICs3Nyw3IEBAIHB1YmxpYzoKICAgICBib29sIHNlbmRFdmVudChRRXZlbnQqKTsKICAgICB2
b2lkIHBvc3RFdmVudChRRXZlbnQqKTsKICAgICB2b2lkIHNldE1vZGFsRXZlbnRMb29wKFFFdmVu
dExvb3AqIGV2ZW50TG9vcCkgeyBtX21vZGFsRXZlbnRMb29wID0gZXZlbnRMb29wOyB9CisgICAg
c3RhdGljIGJvb2wgc3VwcG9ydHNXaW5kb3dTbmFwc2hvdCgpOwogI2VuZGlmCiAKICAgICBXS1Jl
Y3Qgd2luZG93RnJhbWUoKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvcXQv
UGxhdGZvcm1XZWJWaWV3UXQuY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9QbGF0Zm9y
bVdlYlZpZXdRdC5jcHAKaW5kZXggOGM3NjA1OTkyNzE4ZTU4YzBhNTY0MWEwYTU0Nzg4MTFlYmNj
MTJjYy4uYjA2MDIwNzZjMzdiNzJiNDBhMWRmZTUxY2RjNTVhM2Q1ZWI1MjRkZSAxMDA2NDQKLS0t
IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAKKysrIGIv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAKQEAgLTYyLDEw
ICs2MiwxMSBAQCBwcml2YXRlIFFfU0xPVFM6CiAgICAgICAgIG1fdmlldy0+c2V0UGFyZW50SXRl
bShyb290T2JqZWN0KCkpOwogICAgICAgICBRUW1sUHJvcGVydHk6OndyaXRlKG1fdmlldywgImFu
Y2hvcnMuZmlsbCIsIHFWYXJpYW50RnJvbVZhbHVlKHJvb3RPYmplY3QoKSkpOwogCi0gICAgICAg
IHNldFN1cmZhY2VUeXBlKE9wZW5HTFN1cmZhY2UpOwotICAgICAgICBjcmVhdGUoKTsKLQotICAg
ICAgICBRUXVpY2tXaW5kb3dQcml2YXRlOjpnZXQodGhpcyktPnNldFJlbmRlcldpdGhvdXRTaG93
aW5nKHRydWUpOworICAgICAgICBpZiAoUGxhdGZvcm1XZWJWaWV3OjpzdXBwb3J0c1dpbmRvd1Nu
YXBzaG90KCkpIHsKKyAgICAgICAgICAgIHNldFN1cmZhY2VUeXBlKE9wZW5HTFN1cmZhY2UpOwor
ICAgICAgICAgICAgY3JlYXRlKCk7CisgICAgICAgICAgICBRUXVpY2tXaW5kb3dQcml2YXRlOjpn
ZXQodGhpcyktPnNldFJlbmRlcldpdGhvdXRTaG93aW5nKHRydWUpOworICAgICAgICB9CiAKICAg
ICAgICAgUVdpbmRvd1N5c3RlbUludGVyZmFjZTo6aGFuZGxlV2luZG93QWN0aXZhdGVkKHRoaXMp
OwogICAgICAgICBtX3ZpZXctPnBhZ2UoKS0+c2V0Rm9jdXModHJ1ZSk7CkBAIC0xNTgsOSArMTU5
LDE5IEBAIHZvaWQgUGxhdGZvcm1XZWJWaWV3OjptYWtlV2ViVmlld0ZpcnN0UmVzcG9uZGVyKCkK
IAogV0tSZXRhaW5QdHI8V0tJbWFnZVJlZj4gUGxhdGZvcm1XZWJWaWV3Ojp3aW5kb3dTbmFwc2hv
dEltYWdlKCkKIHsKKyAgICBBU1NFUlQoc3VwcG9ydHNXaW5kb3dTbmFwc2hvdCgpKTsKICAgICBy
ZXR1cm4gYWRvcHRXSyhXS0ltYWdlQ3JlYXRlRnJvbVFJbWFnZShtX3dpbmRvdy0+Z3JhYldpbmRv
dygpKSk7CiB9CiAKK3N0YXRpYyBib29sIFBsYXRmb3JtV2ViVmlldzo6c3VwcG9ydHNXaW5kb3dT
bmFwc2hvdCgpCit7CisgICAgc3RhdGljIGJvb2wgcmVzdWx0OworICAgIHN0YXRpYyBib29sIGhh
c0NoZWNrZWQgPSBmYWxzZTsKKyAgICBpZiAoIWhhc0NoZWNrZWQpCisgICAgICAgIHJlc3VsdCA9
IHFnZXRlbnYoIlFUX1dFQktJVF9ESVNBQkxFX1dJTkRPV19TTkFQU0hPVCIpICE9ICIxIjsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorCiB9IC8vIG5hbWVzcGFjZSBXVFIKIAogI2luY2x1ZGUgIlBs
YXRmb3JtV2ViVmlld1F0Lm1vYyIKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
cXQvVGVzdEludm9jYXRpb25RdC5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1Rlc3RJ
bnZvY2F0aW9uUXQuY3BwCmluZGV4IGI2OTY1NDQzNjRkNzhkOGE2ODJmZDA2YTA1YTY1NjZlOTM5
NzIzMzAuLjNmMGJhMGUwYzRiZWExMTQ4OWQwOGY0NjUxZmRlY2EzMTgxMDliYmEgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvcXQvVGVzdEludm9jYXRpb25RdC5jcHAKKysrIGIv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9UZXN0SW52b2NhdGlvblF0LmNwcApAQCAtNzMsMjAg
KzczLDIzIEBAIHZvaWQgVGVzdEludm9jYXRpb246OmZvcmNlUmVwYWludERvbmVDYWxsYmFjayhX
S0Vycm9yUmVmLCB2b2lkICpjb250ZXh0KQogCiB2b2lkIFRlc3RJbnZvY2F0aW9uOjpkdW1wUGl4
ZWxzQW5kQ29tcGFyZVdpdGhFeHBlY3RlZChXS0ltYWdlUmVmIGltYWdlUmVmLCBXS0FycmF5UmVm
IHJlcGFpbnRSZWN0cykKIHsKLSAgICBXS1BhZ2VSZWYgcGFnZSA9IFRlc3RDb250cm9sbGVyOjpz
aGFyZWQoKS5tYWluV2ViVmlldygpLT5wYWdlKCk7Ci0gICAgV0tQYWdlRm9yY2VSZXBhaW50KHBh
Z2UsIHRoaXMsICZmb3JjZVJlcGFpbnREb25lQ2FsbGJhY2spOwotCi0gICAgVGVzdENvbnRyb2xs
ZXI6OnNoYXJlZCgpLnJ1blVudGlsKG1fZ290UmVwYWludCwgVGVzdENvbnRyb2xsZXI6OlNob3J0
VGltZW91dCk7Ci0KICAgICBRSW1hZ2UgaW1hZ2U7Ci0gICAgaWYgKG1fZ290UmVwYWludCkKLSAg
ICAgICAgaW1hZ2UgPSBXS0ltYWdlQ3JlYXRlUUltYWdlKFRlc3RDb250cm9sbGVyOjpzaGFyZWQo
KS5tYWluV2ViVmlldygpLT53aW5kb3dTbmFwc2hvdEltYWdlKCkuZ2V0KCkpOwotICAgIGVsc2Ug
ewotICAgICAgICAvLyBUaGUgdGVzdCBoYXJuZXNzIGV4cGVjdHMgYW4gaW1hZ2Ugc28gd2Ugb3V0
cHV0IGFuIGVtcHR5IG9uZS4KLSAgICAgICAgV0tSZWN0IHdpbmRvd1JlY3QgPSBUZXN0Q29udHJv
bGxlcjo6c2hhcmVkKCkubWFpbldlYlZpZXcoKS0+d2luZG93RnJhbWUoKTsKLSAgICAgICAgaW1h
Z2UgPSBRSW1hZ2UoUVNpemUod2luZG93UmVjdC5zaXplLndpZHRoLCB3aW5kb3dSZWN0LnNpemUu
aGVpZ2h0KSwgUUltYWdlOjpGb3JtYXRfQVJHQjMyX1ByZW11bHRpcGxpZWQpOwotICAgICAgICBp
bWFnZS5maWxsKFF0OjpyZWQpOwotICAgIH0KKyAgICBpZiAoUGxhdGZvcm1XZWJWaWV3OjpzdXBw
b3J0c1dpbmRvd1NuYXBzaG90KCkpIHsKKyAgICAgICAgV0tQYWdlUmVmIHBhZ2UgPSBUZXN0Q29u
dHJvbGxlcjo6c2hhcmVkKCkubWFpbldlYlZpZXcoKS0+cGFnZSgpOworICAgICAgICBXS1BhZ2VG
b3JjZVJlcGFpbnQocGFnZSwgdGhpcywgJmZvcmNlUmVwYWludERvbmVDYWxsYmFjayk7CisKKyAg
ICAgICAgVGVzdENvbnRyb2xsZXI6OnNoYXJlZCgpLnJ1blVudGlsKG1fZ290UmVwYWludCwgVGVz
dENvbnRyb2xsZXI6OlNob3J0VGltZW91dCk7CisKKyAgICAgICAgaWYgKG1fZ290UmVwYWludCkK
KyAgICAgICAgICAgIGltYWdlID0gV0tJbWFnZUNyZWF0ZVFJbWFnZShUZXN0Q29udHJvbGxlcjo6
c2hhcmVkKCkubWFpbldlYlZpZXcoKS0+d2luZG93U25hcHNob3RJbWFnZSgpLmdldCgpKTsKKyAg
ICAgICAgZWxzZSB7CisgICAgICAgICAgICAvLyBUaGUgdGVzdCBoYXJuZXNzIGV4cGVjdHMgYW4g
aW1hZ2Ugc28gd2Ugb3V0cHV0IGFuIGVtcHR5IG9uZS4KKyAgICAgICAgICAgIFdLUmVjdCB3aW5k
b3dSZWN0ID0gVGVzdENvbnRyb2xsZXI6OnNoYXJlZCgpLm1haW5XZWJWaWV3KCktPndpbmRvd0Zy
YW1lKCk7CisgICAgICAgICAgICBpbWFnZSA9IFFJbWFnZShRU2l6ZSh3aW5kb3dSZWN0LnNpemUu
d2lkdGgsIHdpbmRvd1JlY3Quc2l6ZS5oZWlnaHQpLCBRSW1hZ2U6OkZvcm1hdF9BUkdCMzJfUHJl
bXVsdGlwbGllZCk7CisgICAgICAgICAgICBpbWFnZS5maWxsKFF0OjpyZWQpOworICAgICAgICB9
CisgICAgfSBlbHNlCisgICAgICAgIGltYWdlID0gV0tJbWFnZUNyZWF0ZVFJbWFnZShpbWFnZVJl
Zik7CiAKICAgICBpZiAocmVwYWludFJlY3RzKSB7CiAgICAgICAgIFFJbWFnZSBtYXNrKGltYWdl
LnNpemUoKSwgaW1hZ2UuZm9ybWF0KCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>169188</attachid>
            <date>2012-10-17 08:19:46 -0700</date>
            <delta_ts>2012-10-17 08:22:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-99463-20121017171832.patch</filename>
            <type>text/plain</type>
            <size>6661</size>
            <attacher name="Balazs Kelemen">kbalazs</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxMzA3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjY4ZjE0MGUzNjY3NWVjOTZhYmNkZjBhMWVkZWJiZjIz
NGEwYTMzYi4uNDQ0NzExZWU2N2RhM2RmYWNhODAwODhmZWEyMmM1MjRlYjE5NGQ0NSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMz
IEBACisyMDEyLTEwLTE3ICBCYWxhenMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBbUXRdIE9wZW5HTCByZW5kZXJpbmcgaXMgbm90IHBvc3NpYmxlIG9uIGJvdHMgdXNp
bmcgWHZmYgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
OTk0NjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGRlZCBhIHdvcmthcm91bmQgdG8gYmUgYWJsZSB0byBkaXNhbGxvdyBVSSBzaWRlIE9wZW5HTCBy
ZW5kZXJpbmcKKyAgICAgICAgaWYgdGhlIGVudmlyb25tZW50IGlzIG5vdCBzdWl0YWJsZSBiZWNh
dXNlIGl0IGNhbiBiZSBleHRyZW1lbHkgc2xvdworICAgICAgICB3aXRoIGEgc29mdHdhcmUgYmFj
a2VuZC4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQu
cHk6CisgICAgICAgIChRdFBvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKTogTGV0IHRoZSBl
bnZpcm9ubWVudCB2YXJpYWJsZQorICAgICAgICBRVF9XRUJLSVRfRElTQUJMRV9VSVBST0NFU1Nf
RFVNUFBJWEVMUyByZWFjaCB0aGUgZHJpdmVyLiBUaGlzIHZhcmlhYmxlCisgICAgICAgIHNob3Vs
ZCBiZSBkZWZpbmVkIG9uIGJvdHMgdGhhdCBkb24ndCBoYXZlIGEgc3VpdGFibGUgT3BlbkdMIGVu
dmlyb25tZW50LgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3Lmg6
CisgICAgICAgIChQbGF0Zm9ybVdlYlZpZXcpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
cXQvUGxhdGZvcm1XZWJWaWV3UXQuY3BwOgorICAgICAgICAoV1RSOjpXcmFwcGVyV2luZG93Ojpo
YW5kbGVTdGF0dXNDaGFuZ2VkKTogRG9uJ3QgdHJ5IHRvIGNyZWF0ZSBhbiBPcGVuR0wKKyAgICAg
ICAgc3VyZmFjZSBhbmQgc2V0IHRoZSBzZXRSZW5kZXJXaXRob3V0U2hvd2luZyBmbGFnIG9uIHRo
ZSB3aW5kb3cgaWYgdGhlCisgICAgICAgIHZhcmlhYmxlIGlzIHNldC4KKyAgICAgICAgKFdUUjo6
UGxhdGZvcm1XZWJWaWV3Ojp3aW5kb3dTbmFwc2hvdEltYWdlKToKKyAgICAgICAgKFdUUjo6UGxh
dGZvcm1XZWJWaWV3Ojp3aW5kb3dTaGFwc2hvdEVuYWJsZWQpOgorICAgICAgICAoV1RSKToKKyAg
ICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL3F0L1Rlc3RJbnZvY2F0aW9uUXQuY3BwOgorICAgICAg
ICAoV1RSOjpUZXN0SW52b2NhdGlvbjo6ZHVtcFBpeGVsc0FuZENvbXBhcmVXaXRoRXhwZWN0ZWQp
OiBVc2UgdGhlIG9sZCBtZXRob2QKKyAgICAgICAgb2YgZXZhdWxhdGluZyBwaXhlbCByZXN1bHRz
IGlmIHRoZSBzbmFwc2hvdCBpcyBub3Qgc3VwcG9ydGVkLCB0aGF0IGlzIHRvIGNoZWNrCisgICAg
ICAgIHRoZSBpbWFnZSB3ZSBnb3QgZnJvbSB0aGUgd2ViIHByb2Nlc3MuIFRoaXMgaXMgbmVjZXNz
YXJ5IGZvciB0aGUgYm90cyB0byBiZSBhYmxlCisgICAgICAgIHRvIHJ1biByZWYgdGVzdHMuCisK
IDIwMTItMTAtMTUgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgogCiAgICAg
ICAgIFtRdF0gSW1wbGVtZW50IHBpeGVsIHNuYXBzaG90IGdlbmVyYXRpb24gaW4gV1RSCmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5IGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9xdC5weQppbmRleCA1Yjgz
NDJkOWNlMGQ5YjkyNzk2OGIzOTUwYjczZTU1NzMzNDM1ZjQ2Li43NmFhZGVmMmFkY2FjZmM1MDEy
YTA3ZTAxM2ZlMjFiNGM4ZmNhZGQ0IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvcXQucHkKQEAgLTE2MCw2ICsxNjAsNyBAQCBjbGFzcyBRdFBvcnQoUG9y
dCk6CiAgICAgICAgIHNlbGYuX2NvcHlfdmFsdWVfZnJvbV9lbnZpcm9uX2lmX3NldChjbGVhbl9l
bnYsICdESVNBQkxFX05JX1dBUk5JTkcnKQogICAgICAgICBzZWxmLl9jb3B5X3ZhbHVlX2Zyb21f
ZW52aXJvbl9pZl9zZXQoY2xlYW5fZW52LCAnUVRfV0VCS0lUX1BBVVNFX1VJX1BST0NFU1MnKQog
ICAgICAgICBzZWxmLl9jb3B5X3ZhbHVlX2Zyb21fZW52aXJvbl9pZl9zZXQoY2xlYW5fZW52LCAn
UVRfUVBBX1BMQVRGT1JNX1BMVUdJTl9QQVRIJykKKyAgICAgICAgc2VsZi5fY29weV92YWx1ZV9m
cm9tX2Vudmlyb25faWZfc2V0KGNsZWFuX2VudiwgJ1FUX1dFQktJVF9ESVNBQkxFX1VJUFJPQ0VT
U19EVU1QUElYRUxTJykKICAgICAgICAgcmV0dXJuIGNsZWFuX2VudgogCiAgICAgIyBGSVhNRTog
V2Ugc2hvdWxkIGZpbmQgYSB3YXkgdG8gc2hhcmUgdGhpcyBpbXBsbWVudGF0aW9uIHdpdGggR3Rr
LApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0Zm9ybVdlYlZpZXcuaCBi
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3LmgKaW5kZXggNDNiNzljMzNl
MDEyNmY5MjQ4MGE0M2I2ODY4NWQ3MmM5NWFkOTczMy4uMTM4NTllMTQzZTJmNzhkMmM4YjM5ZWI0
ZjExNmFhOTk1ZmYyYTgzNSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0
Zm9ybVdlYlZpZXcuaAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1BsYXRmb3JtV2ViVmll
dy5oCkBAIC03Nyw2ICs3Nyw3IEBAIHB1YmxpYzoKICAgICBib29sIHNlbmRFdmVudChRRXZlbnQq
KTsKICAgICB2b2lkIHBvc3RFdmVudChRRXZlbnQqKTsKICAgICB2b2lkIHNldE1vZGFsRXZlbnRM
b29wKFFFdmVudExvb3AqIGV2ZW50TG9vcCkgeyBtX21vZGFsRXZlbnRMb29wID0gZXZlbnRMb29w
OyB9CisgICAgc3RhdGljIGJvb2wgd2luZG93U2hhcHNob3RFbmFibGVkKCk7CiAjZW5kaWYKIAog
ICAgIFdLUmVjdCB3aW5kb3dGcmFtZSgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0
L1BsYXRmb3JtV2ViVmlld1F0LmNwcAppbmRleCA4Yzc2MDU5OTI3MThlNThjMGE1NjQxYTBhNTQ3
ODgxMWViY2MxMmNjLi5kYmE2YWU4ZDFiNDE3MzA0MzcwZTlhNGQ4MjZiMjkxOTg4MTYwZDY1IDEw
MDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1BsYXRmb3JtV2ViVmlld1F0LmNw
cAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1BsYXRmb3JtV2ViVmlld1F0LmNwcApA
QCAtNjIsMTAgKzYyLDExIEBAIHByaXZhdGUgUV9TTE9UUzoKICAgICAgICAgbV92aWV3LT5zZXRQ
YXJlbnRJdGVtKHJvb3RPYmplY3QoKSk7CiAgICAgICAgIFFRbWxQcm9wZXJ0eTo6d3JpdGUobV92
aWV3LCAiYW5jaG9ycy5maWxsIiwgcVZhcmlhbnRGcm9tVmFsdWUocm9vdE9iamVjdCgpKSk7CiAK
LSAgICAgICAgc2V0U3VyZmFjZVR5cGUoT3BlbkdMU3VyZmFjZSk7Ci0gICAgICAgIGNyZWF0ZSgp
OwotCi0gICAgICAgIFFRdWlja1dpbmRvd1ByaXZhdGU6OmdldCh0aGlzKS0+c2V0UmVuZGVyV2l0
aG91dFNob3dpbmcodHJ1ZSk7CisgICAgICAgIGlmIChQbGF0Zm9ybVdlYlZpZXc6OnN1cHBvcnRz
V2luZG93U25hcHNob3QoKSkgeworICAgICAgICAgICAgc2V0U3VyZmFjZVR5cGUoT3BlbkdMU3Vy
ZmFjZSk7CisgICAgICAgICAgICBjcmVhdGUoKTsKKyAgICAgICAgICAgIFFRdWlja1dpbmRvd1By
aXZhdGU6OmdldCh0aGlzKS0+c2V0UmVuZGVyV2l0aG91dFNob3dpbmcodHJ1ZSk7CisgICAgICAg
IH0KIAogICAgICAgICBRV2luZG93U3lzdGVtSW50ZXJmYWNlOjpoYW5kbGVXaW5kb3dBY3RpdmF0
ZWQodGhpcyk7CiAgICAgICAgIG1fdmlldy0+cGFnZSgpLT5zZXRGb2N1cyh0cnVlKTsKQEAgLTE2
MSw2ICsxNjIsMTUgQEAgV0tSZXRhaW5QdHI8V0tJbWFnZVJlZj4gUGxhdGZvcm1XZWJWaWV3Ojp3
aW5kb3dTbmFwc2hvdEltYWdlKCkKICAgICByZXR1cm4gYWRvcHRXSyhXS0ltYWdlQ3JlYXRlRnJv
bVFJbWFnZShtX3dpbmRvdy0+Z3JhYldpbmRvdygpKSk7CiB9CiAKK2Jvb2wgUGxhdGZvcm1XZWJW
aWV3Ojp3aW5kb3dTaGFwc2hvdEVuYWJsZWQoKQoreworICAgIHN0YXRpYyBib29sIHJlc3VsdDsK
KyAgICBzdGF0aWMgYm9vbCBoYXNDaGVja2VkID0gZmFsc2U7CisgICAgaWYgKCFoYXNDaGVja2Vk
KQorICAgICAgICByZXN1bHQgPSBxZ2V0ZW52KCJRVF9XRUJLSVRfRElTQUJMRV9VSVBST0NFU1Nf
RFVNUFBJWEVMUyIpICE9ICIxIjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCiB9IC8vIG5hbWVz
cGFjZSBXVFIKIAogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlld1F0Lm1vYyIKZGlmZiAtLWdpdCBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvcXQvVGVzdEludm9jYXRpb25RdC5jcHAgYi9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL3F0L1Rlc3RJbnZvY2F0aW9uUXQuY3BwCmluZGV4IGI2OTY1NDQzNjRk
NzhkOGE2ODJmZDA2YTA1YTY1NjZlOTM5NzIzMzAuLjBjMjMxNTA4ZThjZTQyZDQwZTgzM2NhMjI0
MmE5YjAxMGIwMzQ3YmMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvcXQvVGVz
dEludm9jYXRpb25RdC5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9UZXN0SW52
b2NhdGlvblF0LmNwcApAQCAtNzMsMjAgKzczLDIzIEBAIHZvaWQgVGVzdEludm9jYXRpb246OmZv
cmNlUmVwYWludERvbmVDYWxsYmFjayhXS0Vycm9yUmVmLCB2b2lkICpjb250ZXh0KQogCiB2b2lk
IFRlc3RJbnZvY2F0aW9uOjpkdW1wUGl4ZWxzQW5kQ29tcGFyZVdpdGhFeHBlY3RlZChXS0ltYWdl
UmVmIGltYWdlUmVmLCBXS0FycmF5UmVmIHJlcGFpbnRSZWN0cykKIHsKLSAgICBXS1BhZ2VSZWYg
cGFnZSA9IFRlc3RDb250cm9sbGVyOjpzaGFyZWQoKS5tYWluV2ViVmlldygpLT5wYWdlKCk7Ci0g
ICAgV0tQYWdlRm9yY2VSZXBhaW50KHBhZ2UsIHRoaXMsICZmb3JjZVJlcGFpbnREb25lQ2FsbGJh
Y2spOwotCi0gICAgVGVzdENvbnRyb2xsZXI6OnNoYXJlZCgpLnJ1blVudGlsKG1fZ290UmVwYWlu
dCwgVGVzdENvbnRyb2xsZXI6OlNob3J0VGltZW91dCk7Ci0KICAgICBRSW1hZ2UgaW1hZ2U7Ci0g
ICAgaWYgKG1fZ290UmVwYWludCkKLSAgICAgICAgaW1hZ2UgPSBXS0ltYWdlQ3JlYXRlUUltYWdl
KFRlc3RDb250cm9sbGVyOjpzaGFyZWQoKS5tYWluV2ViVmlldygpLT53aW5kb3dTbmFwc2hvdElt
YWdlKCkuZ2V0KCkpOwotICAgIGVsc2UgewotICAgICAgICAvLyBUaGUgdGVzdCBoYXJuZXNzIGV4
cGVjdHMgYW4gaW1hZ2Ugc28gd2Ugb3V0cHV0IGFuIGVtcHR5IG9uZS4KLSAgICAgICAgV0tSZWN0
IHdpbmRvd1JlY3QgPSBUZXN0Q29udHJvbGxlcjo6c2hhcmVkKCkubWFpbldlYlZpZXcoKS0+d2lu
ZG93RnJhbWUoKTsKLSAgICAgICAgaW1hZ2UgPSBRSW1hZ2UoUVNpemUod2luZG93UmVjdC5zaXpl
LndpZHRoLCB3aW5kb3dSZWN0LnNpemUuaGVpZ2h0KSwgUUltYWdlOjpGb3JtYXRfQVJHQjMyX1By
ZW11bHRpcGxpZWQpOwotICAgICAgICBpbWFnZS5maWxsKFF0OjpyZWQpOwotICAgIH0KKyAgICBp
ZiAoUGxhdGZvcm1XZWJWaWV3Ojp3aW5kb3dTaGFwc2hvdEVuYWJsZWQoKSkgeworICAgICAgICBX
S1BhZ2VSZWYgcGFnZSA9IFRlc3RDb250cm9sbGVyOjpzaGFyZWQoKS5tYWluV2ViVmlldygpLT5w
YWdlKCk7CisgICAgICAgIFdLUGFnZUZvcmNlUmVwYWludChwYWdlLCB0aGlzLCAmZm9yY2VSZXBh
aW50RG9uZUNhbGxiYWNrKTsKKworICAgICAgICBUZXN0Q29udHJvbGxlcjo6c2hhcmVkKCkucnVu
VW50aWwobV9nb3RSZXBhaW50LCBUZXN0Q29udHJvbGxlcjo6U2hvcnRUaW1lb3V0KTsKKworICAg
ICAgICBpZiAobV9nb3RSZXBhaW50KQorICAgICAgICAgICAgaW1hZ2UgPSBXS0ltYWdlQ3JlYXRl
UUltYWdlKFRlc3RDb250cm9sbGVyOjpzaGFyZWQoKS5tYWluV2ViVmlldygpLT53aW5kb3dTbmFw
c2hvdEltYWdlKCkuZ2V0KCkpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIC8vIFRoZSB0
ZXN0IGhhcm5lc3MgZXhwZWN0cyBhbiBpbWFnZSBzbyB3ZSBvdXRwdXQgYW4gZW1wdHkgb25lLgor
ICAgICAgICAgICAgV0tSZWN0IHdpbmRvd1JlY3QgPSBUZXN0Q29udHJvbGxlcjo6c2hhcmVkKCku
bWFpbldlYlZpZXcoKS0+d2luZG93RnJhbWUoKTsKKyAgICAgICAgICAgIGltYWdlID0gUUltYWdl
KFFTaXplKHdpbmRvd1JlY3Quc2l6ZS53aWR0aCwgd2luZG93UmVjdC5zaXplLmhlaWdodCksIFFJ
bWFnZTo6Rm9ybWF0X0FSR0IzMl9QcmVtdWx0aXBsaWVkKTsKKyAgICAgICAgICAgIGltYWdlLmZp
bGwoUXQ6OnJlZCk7CisgICAgICAgIH0KKyAgICB9IGVsc2UKKyAgICAgICAgaW1hZ2UgPSBXS0lt
YWdlQ3JlYXRlUUltYWdlKGltYWdlUmVmKTsKIAogICAgIGlmIChyZXBhaW50UmVjdHMpIHsKICAg
ICAgICAgUUltYWdlIG1hc2soaW1hZ2Uuc2l6ZSgpLCBpbWFnZS5mb3JtYXQoKSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>169189</attachid>
            <date>2012-10-17 08:22:36 -0700</date>
            <delta_ts>2012-10-18 08:16:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-99463-20121017172121.patch</filename>
            <type>text/plain</type>
            <size>6660</size>
            <attacher name="Balazs Kelemen">kbalazs</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxMzA3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjY4ZjE0MGUzNjY3NWVjOTZhYmNkZjBhMWVkZWJiZjIz
NGEwYTMzYi4uNDQ0NzExZWU2N2RhM2RmYWNhODAwODhmZWEyMmM1MjRlYjE5NGQ0NSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMz
IEBACisyMDEyLTEwLTE3ICBCYWxhenMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBbUXRdIE9wZW5HTCByZW5kZXJpbmcgaXMgbm90IHBvc3NpYmxlIG9uIGJvdHMgdXNp
bmcgWHZmYgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
OTk0NjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGRlZCBhIHdvcmthcm91bmQgdG8gYmUgYWJsZSB0byBkaXNhbGxvdyBVSSBzaWRlIE9wZW5HTCBy
ZW5kZXJpbmcKKyAgICAgICAgaWYgdGhlIGVudmlyb25tZW50IGlzIG5vdCBzdWl0YWJsZSBiZWNh
dXNlIGl0IGNhbiBiZSBleHRyZW1lbHkgc2xvdworICAgICAgICB3aXRoIGEgc29mdHdhcmUgYmFj
a2VuZC4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQu
cHk6CisgICAgICAgIChRdFBvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKTogTGV0IHRoZSBl
bnZpcm9ubWVudCB2YXJpYWJsZQorICAgICAgICBRVF9XRUJLSVRfRElTQUJMRV9VSVBST0NFU1Nf
RFVNUFBJWEVMUyByZWFjaCB0aGUgZHJpdmVyLiBUaGlzIHZhcmlhYmxlCisgICAgICAgIHNob3Vs
ZCBiZSBkZWZpbmVkIG9uIGJvdHMgdGhhdCBkb24ndCBoYXZlIGEgc3VpdGFibGUgT3BlbkdMIGVu
dmlyb25tZW50LgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3Lmg6
CisgICAgICAgIChQbGF0Zm9ybVdlYlZpZXcpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
cXQvUGxhdGZvcm1XZWJWaWV3UXQuY3BwOgorICAgICAgICAoV1RSOjpXcmFwcGVyV2luZG93Ojpo
YW5kbGVTdGF0dXNDaGFuZ2VkKTogRG9uJ3QgdHJ5IHRvIGNyZWF0ZSBhbiBPcGVuR0wKKyAgICAg
ICAgc3VyZmFjZSBhbmQgc2V0IHRoZSBzZXRSZW5kZXJXaXRob3V0U2hvd2luZyBmbGFnIG9uIHRo
ZSB3aW5kb3cgaWYgdGhlCisgICAgICAgIHZhcmlhYmxlIGlzIHNldC4KKyAgICAgICAgKFdUUjo6
UGxhdGZvcm1XZWJWaWV3Ojp3aW5kb3dTbmFwc2hvdEltYWdlKToKKyAgICAgICAgKFdUUjo6UGxh
dGZvcm1XZWJWaWV3Ojp3aW5kb3dTaGFwc2hvdEVuYWJsZWQpOgorICAgICAgICAoV1RSKToKKyAg
ICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL3F0L1Rlc3RJbnZvY2F0aW9uUXQuY3BwOgorICAgICAg
ICAoV1RSOjpUZXN0SW52b2NhdGlvbjo6ZHVtcFBpeGVsc0FuZENvbXBhcmVXaXRoRXhwZWN0ZWQp
OiBVc2UgdGhlIG9sZCBtZXRob2QKKyAgICAgICAgb2YgZXZhdWxhdGluZyBwaXhlbCByZXN1bHRz
IGlmIHRoZSBzbmFwc2hvdCBpcyBub3Qgc3VwcG9ydGVkLCB0aGF0IGlzIHRvIGNoZWNrCisgICAg
ICAgIHRoZSBpbWFnZSB3ZSBnb3QgZnJvbSB0aGUgd2ViIHByb2Nlc3MuIFRoaXMgaXMgbmVjZXNz
YXJ5IGZvciB0aGUgYm90cyB0byBiZSBhYmxlCisgICAgICAgIHRvIHJ1biByZWYgdGVzdHMuCisK
IDIwMTItMTAtMTUgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgogCiAgICAg
ICAgIFtRdF0gSW1wbGVtZW50IHBpeGVsIHNuYXBzaG90IGdlbmVyYXRpb24gaW4gV1RSCmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5IGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9xdC5weQppbmRleCA1Yjgz
NDJkOWNlMGQ5YjkyNzk2OGIzOTUwYjczZTU1NzMzNDM1ZjQ2Li43NmFhZGVmMmFkY2FjZmM1MDEy
YTA3ZTAxM2ZlMjFiNGM4ZmNhZGQ0IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvcXQucHkKQEAgLTE2MCw2ICsxNjAsNyBAQCBjbGFzcyBRdFBvcnQoUG9y
dCk6CiAgICAgICAgIHNlbGYuX2NvcHlfdmFsdWVfZnJvbV9lbnZpcm9uX2lmX3NldChjbGVhbl9l
bnYsICdESVNBQkxFX05JX1dBUk5JTkcnKQogICAgICAgICBzZWxmLl9jb3B5X3ZhbHVlX2Zyb21f
ZW52aXJvbl9pZl9zZXQoY2xlYW5fZW52LCAnUVRfV0VCS0lUX1BBVVNFX1VJX1BST0NFU1MnKQog
ICAgICAgICBzZWxmLl9jb3B5X3ZhbHVlX2Zyb21fZW52aXJvbl9pZl9zZXQoY2xlYW5fZW52LCAn
UVRfUVBBX1BMQVRGT1JNX1BMVUdJTl9QQVRIJykKKyAgICAgICAgc2VsZi5fY29weV92YWx1ZV9m
cm9tX2Vudmlyb25faWZfc2V0KGNsZWFuX2VudiwgJ1FUX1dFQktJVF9ESVNBQkxFX1VJUFJPQ0VT
U19EVU1QUElYRUxTJykKICAgICAgICAgcmV0dXJuIGNsZWFuX2VudgogCiAgICAgIyBGSVhNRTog
V2Ugc2hvdWxkIGZpbmQgYSB3YXkgdG8gc2hhcmUgdGhpcyBpbXBsbWVudGF0aW9uIHdpdGggR3Rr
LApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0Zm9ybVdlYlZpZXcuaCBi
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3LmgKaW5kZXggNDNiNzljMzNl
MDEyNmY5MjQ4MGE0M2I2ODY4NWQ3MmM5NWFkOTczMy4uMTM4NTllMTQzZTJmNzhkMmM4YjM5ZWI0
ZjExNmFhOTk1ZmYyYTgzNSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0
Zm9ybVdlYlZpZXcuaAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1BsYXRmb3JtV2ViVmll
dy5oCkBAIC03Nyw2ICs3Nyw3IEBAIHB1YmxpYzoKICAgICBib29sIHNlbmRFdmVudChRRXZlbnQq
KTsKICAgICB2b2lkIHBvc3RFdmVudChRRXZlbnQqKTsKICAgICB2b2lkIHNldE1vZGFsRXZlbnRM
b29wKFFFdmVudExvb3AqIGV2ZW50TG9vcCkgeyBtX21vZGFsRXZlbnRMb29wID0gZXZlbnRMb29w
OyB9CisgICAgc3RhdGljIGJvb2wgd2luZG93U2hhcHNob3RFbmFibGVkKCk7CiAjZW5kaWYKIAog
ICAgIFdLUmVjdCB3aW5kb3dGcmFtZSgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0
L1BsYXRmb3JtV2ViVmlld1F0LmNwcAppbmRleCA4Yzc2MDU5OTI3MThlNThjMGE1NjQxYTBhNTQ3
ODgxMWViY2MxMmNjLi5lMTFlNmU3NGFmNzhjMzRiZDE3ZmVkZWYwMDVlMTFkZTYwMDJlMzE4IDEw
MDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1BsYXRmb3JtV2ViVmlld1F0LmNw
cAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1BsYXRmb3JtV2ViVmlld1F0LmNwcApA
QCAtNjIsMTAgKzYyLDExIEBAIHByaXZhdGUgUV9TTE9UUzoKICAgICAgICAgbV92aWV3LT5zZXRQ
YXJlbnRJdGVtKHJvb3RPYmplY3QoKSk7CiAgICAgICAgIFFRbWxQcm9wZXJ0eTo6d3JpdGUobV92
aWV3LCAiYW5jaG9ycy5maWxsIiwgcVZhcmlhbnRGcm9tVmFsdWUocm9vdE9iamVjdCgpKSk7CiAK
LSAgICAgICAgc2V0U3VyZmFjZVR5cGUoT3BlbkdMU3VyZmFjZSk7Ci0gICAgICAgIGNyZWF0ZSgp
OwotCi0gICAgICAgIFFRdWlja1dpbmRvd1ByaXZhdGU6OmdldCh0aGlzKS0+c2V0UmVuZGVyV2l0
aG91dFNob3dpbmcodHJ1ZSk7CisgICAgICAgIGlmIChQbGF0Zm9ybVdlYlZpZXc6OndpbmRvd1No
YXBzaG90RW5hYmxlZCgpKSB7CisgICAgICAgICAgICBzZXRTdXJmYWNlVHlwZShPcGVuR0xTdXJm
YWNlKTsKKyAgICAgICAgICAgIGNyZWF0ZSgpOworICAgICAgICAgICAgUVF1aWNrV2luZG93UHJp
dmF0ZTo6Z2V0KHRoaXMpLT5zZXRSZW5kZXJXaXRob3V0U2hvd2luZyh0cnVlKTsKKyAgICAgICAg
fQogCiAgICAgICAgIFFXaW5kb3dTeXN0ZW1JbnRlcmZhY2U6OmhhbmRsZVdpbmRvd0FjdGl2YXRl
ZCh0aGlzKTsKICAgICAgICAgbV92aWV3LT5wYWdlKCktPnNldEZvY3VzKHRydWUpOwpAQCAtMTYx
LDYgKzE2MiwxNSBAQCBXS1JldGFpblB0cjxXS0ltYWdlUmVmPiBQbGF0Zm9ybVdlYlZpZXc6Ondp
bmRvd1NuYXBzaG90SW1hZ2UoKQogICAgIHJldHVybiBhZG9wdFdLKFdLSW1hZ2VDcmVhdGVGcm9t
UUltYWdlKG1fd2luZG93LT5ncmFiV2luZG93KCkpKTsKIH0KIAorYm9vbCBQbGF0Zm9ybVdlYlZp
ZXc6OndpbmRvd1NoYXBzaG90RW5hYmxlZCgpCit7CisgICAgc3RhdGljIGJvb2wgcmVzdWx0Owor
ICAgIHN0YXRpYyBib29sIGhhc0NoZWNrZWQgPSBmYWxzZTsKKyAgICBpZiAoIWhhc0NoZWNrZWQp
CisgICAgICAgIHJlc3VsdCA9IHFnZXRlbnYoIlFUX1dFQktJVF9ESVNBQkxFX1VJUFJPQ0VTU19E
VU1QUElYRUxTIikgIT0gIjEiOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKIH0gLy8gbmFtZXNw
YWNlIFdUUgogCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3UXQubW9jIgpkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9UZXN0SW52b2NhdGlvblF0LmNwcCBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvcXQvVGVzdEludm9jYXRpb25RdC5jcHAKaW5kZXggYjY5NjU0NDM2NGQ3
OGQ4YTY4MmZkMDZhMDVhNjU2NmU5Mzk3MjMzMC4uMGMyMzE1MDhlOGNlNDJkNDBlODMzY2EyMjQy
YTliMDEwYjAzNDdiYyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9UZXN0
SW52b2NhdGlvblF0LmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1Rlc3RJbnZv
Y2F0aW9uUXQuY3BwCkBAIC03MywyMCArNzMsMjMgQEAgdm9pZCBUZXN0SW52b2NhdGlvbjo6Zm9y
Y2VSZXBhaW50RG9uZUNhbGxiYWNrKFdLRXJyb3JSZWYsIHZvaWQgKmNvbnRleHQpCiAKIHZvaWQg
VGVzdEludm9jYXRpb246OmR1bXBQaXhlbHNBbmRDb21wYXJlV2l0aEV4cGVjdGVkKFdLSW1hZ2VS
ZWYgaW1hZ2VSZWYsIFdLQXJyYXlSZWYgcmVwYWludFJlY3RzKQogewotICAgIFdLUGFnZVJlZiBw
YWdlID0gVGVzdENvbnRyb2xsZXI6OnNoYXJlZCgpLm1haW5XZWJWaWV3KCktPnBhZ2UoKTsKLSAg
ICBXS1BhZ2VGb3JjZVJlcGFpbnQocGFnZSwgdGhpcywgJmZvcmNlUmVwYWludERvbmVDYWxsYmFj
ayk7Ci0KLSAgICBUZXN0Q29udHJvbGxlcjo6c2hhcmVkKCkucnVuVW50aWwobV9nb3RSZXBhaW50
LCBUZXN0Q29udHJvbGxlcjo6U2hvcnRUaW1lb3V0KTsKLQogICAgIFFJbWFnZSBpbWFnZTsKLSAg
ICBpZiAobV9nb3RSZXBhaW50KQotICAgICAgICBpbWFnZSA9IFdLSW1hZ2VDcmVhdGVRSW1hZ2Uo
VGVzdENvbnRyb2xsZXI6OnNoYXJlZCgpLm1haW5XZWJWaWV3KCktPndpbmRvd1NuYXBzaG90SW1h
Z2UoKS5nZXQoKSk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8vIFRoZSB0ZXN0IGhhcm5lc3MgZXhw
ZWN0cyBhbiBpbWFnZSBzbyB3ZSBvdXRwdXQgYW4gZW1wdHkgb25lLgotICAgICAgICBXS1JlY3Qg
d2luZG93UmVjdCA9IFRlc3RDb250cm9sbGVyOjpzaGFyZWQoKS5tYWluV2ViVmlldygpLT53aW5k
b3dGcmFtZSgpOwotICAgICAgICBpbWFnZSA9IFFJbWFnZShRU2l6ZSh3aW5kb3dSZWN0LnNpemUu
d2lkdGgsIHdpbmRvd1JlY3Quc2l6ZS5oZWlnaHQpLCBRSW1hZ2U6OkZvcm1hdF9BUkdCMzJfUHJl
bXVsdGlwbGllZCk7Ci0gICAgICAgIGltYWdlLmZpbGwoUXQ6OnJlZCk7Ci0gICAgfQorICAgIGlm
IChQbGF0Zm9ybVdlYlZpZXc6OndpbmRvd1NoYXBzaG90RW5hYmxlZCgpKSB7CisgICAgICAgIFdL
UGFnZVJlZiBwYWdlID0gVGVzdENvbnRyb2xsZXI6OnNoYXJlZCgpLm1haW5XZWJWaWV3KCktPnBh
Z2UoKTsKKyAgICAgICAgV0tQYWdlRm9yY2VSZXBhaW50KHBhZ2UsIHRoaXMsICZmb3JjZVJlcGFp
bnREb25lQ2FsbGJhY2spOworCisgICAgICAgIFRlc3RDb250cm9sbGVyOjpzaGFyZWQoKS5ydW5V
bnRpbChtX2dvdFJlcGFpbnQsIFRlc3RDb250cm9sbGVyOjpTaG9ydFRpbWVvdXQpOworCisgICAg
ICAgIGlmIChtX2dvdFJlcGFpbnQpCisgICAgICAgICAgICBpbWFnZSA9IFdLSW1hZ2VDcmVhdGVR
SW1hZ2UoVGVzdENvbnRyb2xsZXI6OnNoYXJlZCgpLm1haW5XZWJWaWV3KCktPndpbmRvd1NuYXBz
aG90SW1hZ2UoKS5nZXQoKSk7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgLy8gVGhlIHRl
c3QgaGFybmVzcyBleHBlY3RzIGFuIGltYWdlIHNvIHdlIG91dHB1dCBhbiBlbXB0eSBvbmUuCisg
ICAgICAgICAgICBXS1JlY3Qgd2luZG93UmVjdCA9IFRlc3RDb250cm9sbGVyOjpzaGFyZWQoKS5t
YWluV2ViVmlldygpLT53aW5kb3dGcmFtZSgpOworICAgICAgICAgICAgaW1hZ2UgPSBRSW1hZ2Uo
UVNpemUod2luZG93UmVjdC5zaXplLndpZHRoLCB3aW5kb3dSZWN0LnNpemUuaGVpZ2h0KSwgUUlt
YWdlOjpGb3JtYXRfQVJHQjMyX1ByZW11bHRpcGxpZWQpOworICAgICAgICAgICAgaW1hZ2UuZmls
bChRdDo6cmVkKTsKKyAgICAgICAgfQorICAgIH0gZWxzZQorICAgICAgICBpbWFnZSA9IFdLSW1h
Z2VDcmVhdGVRSW1hZ2UoaW1hZ2VSZWYpOwogCiAgICAgaWYgKHJlcGFpbnRSZWN0cykgewogICAg
ICAgICBRSW1hZ2UgbWFzayhpbWFnZS5zaXplKCksIGltYWdlLmZvcm1hdCgpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>