<?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>134238</bug_id>
          
          <creation_ts>2014-06-23 21:33:32 -0700</creation_ts>
          <short_desc>[iOS WK2] Page jumps when rubber-banding on azuremagazine.com</short_desc>
          <delta_ts>2014-06-25 21:17:48 -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>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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>benjamin</cc>
    
    <cc>bunhere</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>ian</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1017836</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-06-23 21:33:32 -0700</bug_when>
    <thetext>[iOS WK2] Page jumps when rubber-banding on azuremagazine.com</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1017838</commentid>
    <comment_count>1</comment_count>
      <attachid>233679</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-06-23 21:37:04 -0700</bug_when>
    <thetext>Created attachment 233679
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1017898</commentid>
    <comment_count>2</comment_count>
      <attachid>233679</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-24 01:51:07 -0700</bug_when>
    <thetext>Comment on attachment 233679
Patch

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

&gt; Source/WebKit2/UIProcess/ios/WKScrollView.mm:224
&gt; +    CGSize maxContentOffset = CGSizeMake(contentSize.width - bounds.size.width, contentSize.height - bounds.size.height);

I am a little confused by this. Why does this max offset ignore the contentInsets?

&gt; Source/WebKit2/UIProcess/ios/WKScrollView.mm:229
&gt; +        adjustedOffset.y = maxContentOffset.width + edgeInsets.right + rubberbandAmount.width;

.y here instead of .x

&gt; Source/WebKit2/UIProcess/ios/WKScrollView.mm:236
&gt; +    [self setContentOffset:adjustedOffset];

Does UIScrollView just resume rubberbanding from that offset?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018005</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-06-24 10:47:40 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 233679 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=233679&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/ios/WKScrollView.mm:224
&gt; &gt; +    CGSize maxContentOffset = CGSizeMake(contentSize.width - bounds.size.width, contentSize.height - bounds.size.height);
&gt; 
&gt; I am a little confused by this. Why does this max offset ignore the contentInsets?

I just took edge insets into account lower down, but can move them up here.

&gt; 
&gt; &gt; Source/WebKit2/UIProcess/ios/WKScrollView.mm:229
&gt; &gt; +        adjustedOffset.y = maxContentOffset.width + edgeInsets.right + rubberbandAmount.width;
&gt; 
&gt; .y here instead of .x

Thanks.

&gt; &gt; Source/WebKit2/UIProcess/ios/WKScrollView.mm:236
&gt; &gt; +    [self setContentOffset:adjustedOffset];
&gt; 
&gt; Does UIScrollView just resume rubberbanding from that offset?

It seems to, yes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018090</commentid>
    <comment_count>4</comment_count>
      <attachid>233738</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-06-24 14:03:50 -0700</bug_when>
    <thetext>Created attachment 233738
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018098</commentid>
    <comment_count>5</comment_count>
      <attachid>233738</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-06-24 14:37:16 -0700</bug_when>
    <thetext>Comment on attachment 233738
Patch

Not right when the page gets longer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018211</commentid>
    <comment_count>6</comment_count>
      <attachid>233773</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-06-24 18:30:50 -0700</bug_when>
    <thetext>Created attachment 233773
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018214</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-06-24 18:33:09 -0700</bug_when>
    <thetext>Attachment 233773 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/ios/WKScrollView.mm:235:  Multi line control clauses should use braces.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/ios/WKScrollView.mm:245:  Multi line control clauses should use braces.  [whitespace/braces] [4]
Total errors found: 2 in 4 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>1018226</commentid>
    <comment_count>8</comment_count>
      <attachid>233773</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-24 19:32:50 -0700</bug_when>
    <thetext>Comment on attachment 233773
Patch

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

I think that is okay for growing content. At the next timer update, the new BouncingDecelerationOffset will be withint bounds.

&gt; Source/WebKit2/UIProcess/ios/WKScrollView.h:37
&gt; +- (void)_setContentSizePreservingContentOffsetDuringRubberband:(CGSize)contentSize;
&gt; +

Not sure you need the blank lines below and above, I know nothing about Obj-C coding style :)

&gt; Source/WebKit2/UIProcess/ios/WKScrollView.mm:234
&gt; +    if (rubberbandAmount.width &lt; 0) // Left
&gt; +        adjustedOffset.x = -edgeInsets.left + rubberbandAmount.width;

I think you should check this in the case where the page size change when it is scaled smaller than the viewport minimum size.

It may work as expected because in _currentRubberbandAmount, you check for top/left before bottom/right, but better check.

&gt; Source/WebKit2/UIProcess/ios/WKScrollView.mm:260
&gt; +    if (CGSizeEqualToSize(currentContentSize, CGSizeZero) || CGSizeEqualToSize(currentContentSize, contentSize)) {

You could early return on CGSizeEqualToSize(currentContentSize, contentSize).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018419</commentid>
    <comment_count>9</comment_count>
      <attachid>233840</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-06-25 15:14:39 -0700</bug_when>
    <thetext>Created attachment 233840
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018535</commentid>
    <comment_count>10</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-06-25 21:17:48 -0700</bug_when>
    <thetext>https://trac.webkit.org/r170463</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>233679</attachid>
            <date>2014-06-23 21:37:04 -0700</date>
            <delta_ts>2014-06-24 14:03:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134238-20140623213644.patch</filename>
            <type>text/plain</type>
            <size>6604</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcwMzA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNDk3Y2NmNmIyYTU0NWUz
ZTBjMGFiOGFjZTAwNzNkMGFhOTdjNWZlYi4uYzc2OGYxYTczOGFkNWJhZGQwMmIzMDBiNjliOWM1
NTlhMTRmZjNjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE0LTA2LTIzICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1MgV0syXSBQ
YWdlIGp1bXBzIHdoZW4gcnViYmVyLWJhbmRpbmcgb24gYXp1cmVtYWdhemluZS5jb20gCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQyMzgKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzE2OTE4MjI4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgSWYgdGhlIHNjcm9sbCB2aWV3IGlzIGluIHRo
ZSBwcm9jZXNzIG9mIHJ1YmJlci1iYW5kaW5nIHdoZW4gLXNldENvbnRlbnRTaXplOiBpcyBjYWxs
ZWQsCisgICAgICAgIGl0IGNsYW1wcyB0aGUgc2Nyb2xsIG9mZnNldHMgYmV0d2VlbiB6ZXJvIGFu
ZCB0aGUgbWF4IHZhbHVlLCB3aGljaCB2aXNpYmx5IGludGVycnVwdHMgdGhlCisgICAgICAgIHJ1
YmJlcmJhbmQuIFRoaXMgY2FuIGVhc2lseSBoYXBwZW4gbm93IHRoYXQgd2UgY29udGludWFsbHkg
c2VuZCBzY3JvbGwgZXZlbnRzIHRvIHRoZSBwYWdlCisgICAgICAgIG9uIHNjcm9sbGluZywgZXNw
ZWNpYWxseSB3aGVuIHBhZ2VzIGxpa2UgYXp1cmVtYWdhemluZS5jb20gZG8gZmFrZSBzdGlja3kg
YnkgdG9nZ2xpbmcKKyAgICAgICAgaW4tZmxvdyBlbGVtZW50cyBpbnRvIHBvc2l0aW9uOmZpeGVk
LgorICAgICAgICAKKyAgICAgICAgRml4IGJ5IGNvbXB1dGluZyB0aGUgYW1vdW50IG9mIHJ1YmJl
ci1iYW5kIGJlZm9yZSBjYWxsaW5nIC1zZXRDb250ZW50U2l6ZTosIGFuZCB0aGVuCisgICAgICAg
IHJlc3RvcmluZyB0aGUgY29udGVudE9mZnNldCB3aXRoIHRoZSBzYW1lIGFtb3VudCBvZiBydWJi
ZXItYmFuZCBldmVuIHdoZW4gdGhlIGNvbnRlbnQgc2l6ZQorICAgICAgICBpcyBkaWZmZXJlbnQu
CisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbToKKyAgICAgICAg
KC1bV0tXZWJWaWV3IF9kaWRDb21taXRMYXllclRyZWU6V2ViS2l0OjpdKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tT
Y3JvbGxWaWV3Lm1tOgorICAgICAgICAoLVtXS1Njcm9sbFZpZXcgX2N1cnJlbnRSdWJiZXJiYW5k
QW1vdW50XSk6CisgICAgICAgICgtW1dLU2Nyb2xsVmlldyBfcmVzdG9yZUNvbnRlbnRPZmZzZXQ6
YWNjb3VudGluZ0ZvclJ1YmJlcmJhbmQ6XSk6CisgICAgICAgICgtW1dLU2Nyb2xsVmlldyBfc2V0
Q29udGVudFNpemVQcmVzZXJ2aW5nQ29udGVudE9mZnNldER1cmluZ1J1YmJlcmJhbmQ6XSk6CisK
IDIwMTQtMDYtMjMgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAogICAgICAgICBb
Q29jb2FdIE5vIHdheSB0byBncmFudCBzdG9yYWdlIHF1b3RhcyBmb3IgV2ViU1FMCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbSBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCmluZGV4IDEzYThh
NGFmYTU5NjZmZmRjMDFlNjczOGUzODJiYjVlMzAxM2ExZGYuLjcyNzcwZDNmZjUzYTZjNWI3OWNm
OTc4YWNlZDYyYmQ4YTY3NTliNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3Lm1tCkBAIC03MjMsNyArNzIzLDkgQEAgLSAodm9pZClfZGlkQ29t
bWl0TGF5ZXJUcmVlOihjb25zdCBXZWJLaXQ6OlJlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uJils
YXllclRyZWUKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFtfc2Nyb2xsVmlldyBzZXRD
b250ZW50U2l6ZTpyb3VuZFNjcm9sbFZpZXdDb250ZW50U2l6ZSgqX3BhZ2UsIFtfY29udGVudFZp
ZXcgZnJhbWVdLnNpemUpXTsKKyAgICBDR1NpemUgbmV3Q29udGVudFNpemUgPSByb3VuZFNjcm9s
bFZpZXdDb250ZW50U2l6ZSgqX3BhZ2UsIFtfY29udGVudFZpZXcgZnJhbWVdLnNpemUpOworICAg
IFtfc2Nyb2xsVmlldyBfc2V0Q29udGVudFNpemVQcmVzZXJ2aW5nQ29udGVudE9mZnNldER1cmlu
Z1J1YmJlcmJhbmQ6bmV3Q29udGVudFNpemVdOworCiAgICAgW19zY3JvbGxWaWV3IHNldE1pbmlt
dW1ab29tU2NhbGU6bGF5ZXJUcmVlVHJhbnNhY3Rpb24ubWluaW11bVNjYWxlRmFjdG9yKCldOwog
ICAgIFtfc2Nyb2xsVmlldyBzZXRNYXhpbXVtWm9vbVNjYWxlOmxheWVyVHJlZVRyYW5zYWN0aW9u
Lm1heGltdW1TY2FsZUZhY3RvcigpXTsKICAgICBbX3Njcm9sbFZpZXcgc2V0Wm9vbUVuYWJsZWQ6
bGF5ZXJUcmVlVHJhbnNhY3Rpb24uYWxsb3dzVXNlclNjYWxpbmcoKV07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5oIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcuaAppbmRleCBhODdmNDc1ZTdkNDRkNjAyOGNj
ZWUxNDUyYzYzOWQ0YzIwZmIzZTk0Li5jYjQwYmQ4ZmY1ZGI3OGY5MjE3ZTlhNjQ3ZGJkOTlkM2Yw
NzY4YWNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xs
Vmlldy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3LmgK
QEAgLTMzLDYgKzMzLDggQEAKIAogQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbikgV0tXZWJW
aWV3IDxVSVNjcm9sbFZpZXdEZWxlZ2F0ZT4gKmludGVybmFsRGVsZWdhdGU7CiAKKy0gKHZvaWQp
X3NldENvbnRlbnRTaXplUHJlc2VydmluZ0NvbnRlbnRPZmZzZXREdXJpbmdSdWJiZXJiYW5kOihD
R1NpemUpY29udGVudFNpemU7CisKIEBlbmQKIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPUykKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3Lm1tIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcubW0KaW5kZXggNmI5MGJj
MzI5NjVjNzY2NjcyZDdiYzJhNDI5NGQ4YjRiN2FmYTQwYi4uY2NhYmMyM2MxNzFkYjRiMjZiZmI3
YWY0NTFhYWRmZWIzYjc1ZjVjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2lvcy9XS1Njcm9sbFZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9X
S1Njcm9sbFZpZXcubW0KQEAgLTE5MSw2ICsxOTEsNjkgQEAgLSAoQ0dGbG9hdClfcnViYmVyQmFu
ZE9mZnNldEZvck9mZnNldDooQ0dGbG9hdCluZXdPZmZzZXQgbWF4T2Zmc2V0OihDR0Zsb2F0KW1h
eE8KICAgICByZXR1cm4gW3N1cGVyIF9ydWJiZXJCYW5kT2Zmc2V0Rm9yT2Zmc2V0Om5ld09mZnNl
dCBtYXhPZmZzZXQ6bWF4T2Zmc2V0IG1pbk9mZnNldDptaW5PZmZzZXQgcmFuZ2U6cmFuZ2Ugb3V0
c2lkZTpvdXRzaWRlXTsKIH0KIAorLy8gTmVnYXRpdmUgdmFsdWVzIGluZGljYXRlIHJ1YmJlcmJh
bmRpbmcgYXQgbGVmdC90b3AsIHBvc2l0aXZlIGF0IHJpZ2h0L2JvdHRvbS4KKy0gKENHU2l6ZSlf
Y3VycmVudFJ1YmJlcmJhbmRBbW91bnQKK3sKKyAgICBDR1JlY3QgYm91bmRzID0gW3NlbGYgYm91
bmRzXTsKKyAgICBDR1NpemUgY29udGVudFNpemUgPSBbc2VsZiBjb250ZW50U2l6ZV07CisgICAg
Q0dTaXplIG1heENvbnRlbnRPZmZzZXQgPSBDR1NpemVNYWtlKGNvbnRlbnRTaXplLndpZHRoIC0g
Ym91bmRzLnNpemUud2lkdGgsIGNvbnRlbnRTaXplLmhlaWdodCAtIGJvdW5kcy5zaXplLmhlaWdo
dCk7CisgICAgVUlFZGdlSW5zZXRzIGVkZ2VJbnNldHMgPSBbc2VsZiBjb250ZW50SW5zZXRdOwor
CisgICAgQ0dTaXplIHJ1YmJlcmJhbmRBbW91bnQgPSBDR1NpemVaZXJvOworCisgICAgQ0dQb2lu
dCBjb250ZW50T2Zmc2V0ID0gW3NlbGYgY29udGVudE9mZnNldF07CisgICAgaWYgKGNvbnRlbnRP
ZmZzZXQueCA8IC1lZGdlSW5zZXRzLmxlZnQpCisgICAgICAgIHJ1YmJlcmJhbmRBbW91bnQud2lk
dGggPSBzdGQ6Om1pbjxDR0Zsb2F0Pihjb250ZW50T2Zmc2V0LnggKyAtZWRnZUluc2V0cy5sZWZ0
LCAwKTsKKyAgICBlbHNlIGlmIChjb250ZW50T2Zmc2V0LnggPiAobWF4Q29udGVudE9mZnNldC53
aWR0aCArIGVkZ2VJbnNldHMucmlnaHQpKQorICAgICAgICBydWJiZXJiYW5kQW1vdW50LndpZHRo
ID0gc3RkOjptYXg8Q0dGbG9hdD4oY29udGVudE9mZnNldC54IC0gKG1heENvbnRlbnRPZmZzZXQu
d2lkdGggKyBlZGdlSW5zZXRzLnJpZ2h0KSwgMCk7CisKKyAgICBpZiAoY29udGVudE9mZnNldC55
IDwgLWVkZ2VJbnNldHMudG9wKQorICAgICAgICBydWJiZXJiYW5kQW1vdW50LmhlaWdodCA9IHN0
ZDo6bWluPENHRmxvYXQ+KGNvbnRlbnRPZmZzZXQueSArIGVkZ2VJbnNldHMudG9wLCAwKTsKKyAg
ICBlbHNlIGlmIChjb250ZW50T2Zmc2V0LnkgPiAobWF4Q29udGVudE9mZnNldC5oZWlnaHQgKyBl
ZGdlSW5zZXRzLmJvdHRvbSkpCisgICAgICAgIHJ1YmJlcmJhbmRBbW91bnQuaGVpZ2h0ID0gc3Rk
OjptYXg8Q0dGbG9hdD4oY29udGVudE9mZnNldC55IC0gKG1heENvbnRlbnRPZmZzZXQuaGVpZ2h0
ICsgZWRnZUluc2V0cy5ib3R0b20pLCAwKTsKKyAgICAKKyAgICByZXR1cm4gcnViYmVyYmFuZEFt
b3VudDsKK30KKworLSAodm9pZClfcmVzdG9yZUNvbnRlbnRPZmZzZXQ6KENHUG9pbnQpY29udGVu
dE9mZnNldCBhY2NvdW50aW5nRm9yUnViYmVyYmFuZDooQ0dTaXplKXJ1YmJlcmJhbmRBbW91bnQK
K3sKKyAgICBVSUVkZ2VJbnNldHMgZWRnZUluc2V0cyA9IFtzZWxmIGNvbnRlbnRJbnNldF07Cisg
ICAgQ0dQb2ludCBhZGp1c3RlZE9mZnNldCA9IGNvbnRlbnRPZmZzZXQ7CisgICAgQ0dSZWN0IGJv
dW5kcyA9IFtzZWxmIGJvdW5kc107CisgICAgQ0dTaXplIGNvbnRlbnRTaXplID0gW3NlbGYgY29u
dGVudFNpemVdOworICAgIENHU2l6ZSBtYXhDb250ZW50T2Zmc2V0ID0gQ0dTaXplTWFrZShjb250
ZW50U2l6ZS53aWR0aCAtIGJvdW5kcy5zaXplLndpZHRoLCBjb250ZW50U2l6ZS5oZWlnaHQgLSBi
b3VuZHMuc2l6ZS5oZWlnaHQpOworCisgICAgaWYgKHJ1YmJlcmJhbmRBbW91bnQud2lkdGggPCAw
KSAvLyBMZWZ0CisgICAgICAgIGFkanVzdGVkT2Zmc2V0LnggPSAtZWRnZUluc2V0cy5sZWZ0ICsg
cnViYmVyYmFuZEFtb3VudC53aWR0aDsKKyAgICBlbHNlIGlmIChydWJiZXJiYW5kQW1vdW50Lndp
ZHRoID4gMCkgLy8gUmlnaHQKKyAgICAgICAgYWRqdXN0ZWRPZmZzZXQueSA9IG1heENvbnRlbnRP
ZmZzZXQud2lkdGggKyBlZGdlSW5zZXRzLnJpZ2h0ICsgcnViYmVyYmFuZEFtb3VudC53aWR0aDsK
KworICAgIGlmIChydWJiZXJiYW5kQW1vdW50LmhlaWdodCA8IDApIC8vIFRvcAorICAgICAgICBh
ZGp1c3RlZE9mZnNldC55ID0gLWVkZ2VJbnNldHMudG9wICsgcnViYmVyYmFuZEFtb3VudC5oZWln
aHQ7CisgICAgZWxzZSBpZiAocnViYmVyYmFuZEFtb3VudC5oZWlnaHQgPiAwKSAvLyBCb3R0b20K
KyAgICAgICAgYWRqdXN0ZWRPZmZzZXQueSA9IG1heENvbnRlbnRPZmZzZXQuaGVpZ2h0ICsgZWRn
ZUluc2V0cy5ib3R0b20gKyBydWJiZXJiYW5kQW1vdW50LmhlaWdodDsKKworICAgIFtzZWxmIHNl
dENvbnRlbnRPZmZzZXQ6YWRqdXN0ZWRPZmZzZXRdOworfQorCistICh2b2lkKV9zZXRDb250ZW50
U2l6ZVByZXNlcnZpbmdDb250ZW50T2Zmc2V0RHVyaW5nUnViYmVyYmFuZDooQ0dTaXplKWNvbnRl
bnRTaXplCit7CisgICAgQ0dTaXplIGN1cnJlbnRDb250ZW50U2l6ZSA9IFtzZWxmIGNvbnRlbnRT
aXplXTsKKworICAgIGlmIChDR1NpemVFcXVhbFRvU2l6ZShjdXJyZW50Q29udGVudFNpemUsIENH
U2l6ZVplcm8pIHx8IENHU2l6ZUVxdWFsVG9TaXplKGN1cnJlbnRDb250ZW50U2l6ZSwgY29udGVu
dFNpemUpKSB7CisgICAgICAgIFtzZWxmIHNldENvbnRlbnRTaXplOmNvbnRlbnRTaXplXTsKKyAg
ICAgICAgcmV0dXJuOworICAgIH0KKyAgICAKKyAgICBDR1BvaW50IGN1cnJlbnRDb250ZW50T2Zm
c2V0ID0gW3NlbGYgY29udGVudE9mZnNldF07CisgICAgQ0dTaXplIHJ1YmJlcmJhbmRBbW91bnQg
PSBbc2VsZiBfY3VycmVudFJ1YmJlcmJhbmRBbW91bnRdOworCisgICAgW3NlbGYgc2V0Q29udGVu
dFNpemU6Y29udGVudFNpemVdOworCisgICAgaWYgKCFDR1NpemVFcXVhbFRvU2l6ZShydWJiZXJi
YW5kQW1vdW50LCBDR1NpemVaZXJvKSkKKyAgICAgICAgW3NlbGYgX3Jlc3RvcmVDb250ZW50T2Zm
c2V0OmN1cnJlbnRDb250ZW50T2Zmc2V0IGFjY291bnRpbmdGb3JSdWJiZXJiYW5kOnJ1YmJlcmJh
bmRBbW91bnRdOworfQorCiBAZW5kCiAKICNlbmRpZiAvLyBQTEFURk9STShJT1MpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>233738</attachid>
            <date>2014-06-24 14:03:50 -0700</date>
            <delta_ts>2014-06-24 18:30:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134238-20140624140330.patch</filename>
            <type>text/plain</type>
            <size>6557</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcwMzA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNDk3Y2NmNmIyYTU0NWUz
ZTBjMGFiOGFjZTAwNzNkMGFhOTdjNWZlYi4uYzc2OGYxYTczOGFkNWJhZGQwMmIzMDBiNjliOWM1
NTlhMTRmZjNjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE0LTA2LTIzICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1MgV0syXSBQ
YWdlIGp1bXBzIHdoZW4gcnViYmVyLWJhbmRpbmcgb24gYXp1cmVtYWdhemluZS5jb20gCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQyMzgKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzE2OTE4MjI4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgSWYgdGhlIHNjcm9sbCB2aWV3IGlzIGluIHRo
ZSBwcm9jZXNzIG9mIHJ1YmJlci1iYW5kaW5nIHdoZW4gLXNldENvbnRlbnRTaXplOiBpcyBjYWxs
ZWQsCisgICAgICAgIGl0IGNsYW1wcyB0aGUgc2Nyb2xsIG9mZnNldHMgYmV0d2VlbiB6ZXJvIGFu
ZCB0aGUgbWF4IHZhbHVlLCB3aGljaCB2aXNpYmx5IGludGVycnVwdHMgdGhlCisgICAgICAgIHJ1
YmJlcmJhbmQuIFRoaXMgY2FuIGVhc2lseSBoYXBwZW4gbm93IHRoYXQgd2UgY29udGludWFsbHkg
c2VuZCBzY3JvbGwgZXZlbnRzIHRvIHRoZSBwYWdlCisgICAgICAgIG9uIHNjcm9sbGluZywgZXNw
ZWNpYWxseSB3aGVuIHBhZ2VzIGxpa2UgYXp1cmVtYWdhemluZS5jb20gZG8gZmFrZSBzdGlja3kg
YnkgdG9nZ2xpbmcKKyAgICAgICAgaW4tZmxvdyBlbGVtZW50cyBpbnRvIHBvc2l0aW9uOmZpeGVk
LgorICAgICAgICAKKyAgICAgICAgRml4IGJ5IGNvbXB1dGluZyB0aGUgYW1vdW50IG9mIHJ1YmJl
ci1iYW5kIGJlZm9yZSBjYWxsaW5nIC1zZXRDb250ZW50U2l6ZTosIGFuZCB0aGVuCisgICAgICAg
IHJlc3RvcmluZyB0aGUgY29udGVudE9mZnNldCB3aXRoIHRoZSBzYW1lIGFtb3VudCBvZiBydWJi
ZXItYmFuZCBldmVuIHdoZW4gdGhlIGNvbnRlbnQgc2l6ZQorICAgICAgICBpcyBkaWZmZXJlbnQu
CisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbToKKyAgICAgICAg
KC1bV0tXZWJWaWV3IF9kaWRDb21taXRMYXllclRyZWU6V2ViS2l0OjpdKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tT
Y3JvbGxWaWV3Lm1tOgorICAgICAgICAoLVtXS1Njcm9sbFZpZXcgX2N1cnJlbnRSdWJiZXJiYW5k
QW1vdW50XSk6CisgICAgICAgICgtW1dLU2Nyb2xsVmlldyBfcmVzdG9yZUNvbnRlbnRPZmZzZXQ6
YWNjb3VudGluZ0ZvclJ1YmJlcmJhbmQ6XSk6CisgICAgICAgICgtW1dLU2Nyb2xsVmlldyBfc2V0
Q29udGVudFNpemVQcmVzZXJ2aW5nQ29udGVudE9mZnNldER1cmluZ1J1YmJlcmJhbmQ6XSk6CisK
IDIwMTQtMDYtMjMgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAogICAgICAgICBb
Q29jb2FdIE5vIHdheSB0byBncmFudCBzdG9yYWdlIHF1b3RhcyBmb3IgV2ViU1FMCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbSBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCmluZGV4IDEzYThh
NGFmYTU5NjZmZmRjMDFlNjczOGUzODJiYjVlMzAxM2ExZGYuLjcyNzcwZDNmZjUzYTZjNWI3OWNm
OTc4YWNlZDYyYmQ4YTY3NTliNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3Lm1tCkBAIC03MjMsNyArNzIzLDkgQEAgLSAodm9pZClfZGlkQ29t
bWl0TGF5ZXJUcmVlOihjb25zdCBXZWJLaXQ6OlJlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uJils
YXllclRyZWUKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFtfc2Nyb2xsVmlldyBzZXRD
b250ZW50U2l6ZTpyb3VuZFNjcm9sbFZpZXdDb250ZW50U2l6ZSgqX3BhZ2UsIFtfY29udGVudFZp
ZXcgZnJhbWVdLnNpemUpXTsKKyAgICBDR1NpemUgbmV3Q29udGVudFNpemUgPSByb3VuZFNjcm9s
bFZpZXdDb250ZW50U2l6ZSgqX3BhZ2UsIFtfY29udGVudFZpZXcgZnJhbWVdLnNpemUpOworICAg
IFtfc2Nyb2xsVmlldyBfc2V0Q29udGVudFNpemVQcmVzZXJ2aW5nQ29udGVudE9mZnNldER1cmlu
Z1J1YmJlcmJhbmQ6bmV3Q29udGVudFNpemVdOworCiAgICAgW19zY3JvbGxWaWV3IHNldE1pbmlt
dW1ab29tU2NhbGU6bGF5ZXJUcmVlVHJhbnNhY3Rpb24ubWluaW11bVNjYWxlRmFjdG9yKCldOwog
ICAgIFtfc2Nyb2xsVmlldyBzZXRNYXhpbXVtWm9vbVNjYWxlOmxheWVyVHJlZVRyYW5zYWN0aW9u
Lm1heGltdW1TY2FsZUZhY3RvcigpXTsKICAgICBbX3Njcm9sbFZpZXcgc2V0Wm9vbUVuYWJsZWQ6
bGF5ZXJUcmVlVHJhbnNhY3Rpb24uYWxsb3dzVXNlclNjYWxpbmcoKV07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5oIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcuaAppbmRleCBhODdmNDc1ZTdkNDRkNjAyOGNj
ZWUxNDUyYzYzOWQ0YzIwZmIzZTk0Li5jYjQwYmQ4ZmY1ZGI3OGY5MjE3ZTlhNjQ3ZGJkOTlkM2Yw
NzY4YWNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xs
Vmlldy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3LmgK
QEAgLTMzLDYgKzMzLDggQEAKIAogQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbikgV0tXZWJW
aWV3IDxVSVNjcm9sbFZpZXdEZWxlZ2F0ZT4gKmludGVybmFsRGVsZWdhdGU7CiAKKy0gKHZvaWQp
X3NldENvbnRlbnRTaXplUHJlc2VydmluZ0NvbnRlbnRPZmZzZXREdXJpbmdSdWJiZXJiYW5kOihD
R1NpemUpY29udGVudFNpemU7CisKIEBlbmQKIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPUykKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3Lm1tIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcubW0KaW5kZXggNmI5MGJj
MzI5NjVjNzY2NjcyZDdiYzJhNDI5NGQ4YjRiN2FmYTQwYi4uY2NjZjI3NWIwNmRmMGZiZDQyODk3
ODVmNWI3ZmQxZTY2MGFiMjNkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2lvcy9XS1Njcm9sbFZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9X
S1Njcm9sbFZpZXcubW0KQEAgLTE5MSw2ICsxOTEsNjkgQEAgLSAoQ0dGbG9hdClfcnViYmVyQmFu
ZE9mZnNldEZvck9mZnNldDooQ0dGbG9hdCluZXdPZmZzZXQgbWF4T2Zmc2V0OihDR0Zsb2F0KW1h
eE8KICAgICByZXR1cm4gW3N1cGVyIF9ydWJiZXJCYW5kT2Zmc2V0Rm9yT2Zmc2V0Om5ld09mZnNl
dCBtYXhPZmZzZXQ6bWF4T2Zmc2V0IG1pbk9mZnNldDptaW5PZmZzZXQgcmFuZ2U6cmFuZ2Ugb3V0
c2lkZTpvdXRzaWRlXTsKIH0KIAorLy8gTmVnYXRpdmUgdmFsdWVzIGluZGljYXRlIHJ1YmJlcmJh
bmRpbmcgYXQgbGVmdC90b3AsIHBvc2l0aXZlIGF0IHJpZ2h0L2JvdHRvbS4KKy0gKENHU2l6ZSlf
Y3VycmVudFJ1YmJlcmJhbmRBbW91bnQKK3sKKyAgICBDR1JlY3QgYm91bmRzID0gW3NlbGYgYm91
bmRzXTsKKyAgICBDR1NpemUgY29udGVudFNpemUgPSBbc2VsZiBjb250ZW50U2l6ZV07CisgICAg
VUlFZGdlSW5zZXRzIGVkZ2VJbnNldHMgPSBbc2VsZiBjb250ZW50SW5zZXRdOworICAgIENHU2l6
ZSBtYXhDb250ZW50T2Zmc2V0ID0gQ0dTaXplTWFrZShjb250ZW50U2l6ZS53aWR0aCArIGVkZ2VJ
bnNldHMucmlnaHQgLSBib3VuZHMuc2l6ZS53aWR0aCwgY29udGVudFNpemUuaGVpZ2h0ICsgZWRn
ZUluc2V0cy5ib3R0b20gLSBib3VuZHMuc2l6ZS5oZWlnaHQpOworCisgICAgQ0dTaXplIHJ1YmJl
cmJhbmRBbW91bnQgPSBDR1NpemVaZXJvOworCisgICAgQ0dQb2ludCBjb250ZW50T2Zmc2V0ID0g
W3NlbGYgY29udGVudE9mZnNldF07CisgICAgaWYgKGNvbnRlbnRPZmZzZXQueCA8IC1lZGdlSW5z
ZXRzLmxlZnQpCisgICAgICAgIHJ1YmJlcmJhbmRBbW91bnQud2lkdGggPSBzdGQ6Om1pbjxDR0Zs
b2F0Pihjb250ZW50T2Zmc2V0LnggKyAtZWRnZUluc2V0cy5sZWZ0LCAwKTsKKyAgICBlbHNlIGlm
IChjb250ZW50T2Zmc2V0LnggPiBtYXhDb250ZW50T2Zmc2V0LndpZHRoKQorICAgICAgICBydWJi
ZXJiYW5kQW1vdW50LndpZHRoID0gc3RkOjptYXg8Q0dGbG9hdD4oY29udGVudE9mZnNldC54IC0g
bWF4Q29udGVudE9mZnNldC53aWR0aCwgMCk7CisKKyAgICBpZiAoY29udGVudE9mZnNldC55IDwg
LWVkZ2VJbnNldHMudG9wKQorICAgICAgICBydWJiZXJiYW5kQW1vdW50LmhlaWdodCA9IHN0ZDo6
bWluPENHRmxvYXQ+KGNvbnRlbnRPZmZzZXQueSArIGVkZ2VJbnNldHMudG9wLCAwKTsKKyAgICBl
bHNlIGlmIChjb250ZW50T2Zmc2V0LnkgPiBtYXhDb250ZW50T2Zmc2V0LmhlaWdodCkKKyAgICAg
ICAgcnViYmVyYmFuZEFtb3VudC5oZWlnaHQgPSBzdGQ6Om1heDxDR0Zsb2F0Pihjb250ZW50T2Zm
c2V0LnkgLSBtYXhDb250ZW50T2Zmc2V0LmhlaWdodCwgMCk7CisgICAgCisgICAgcmV0dXJuIHJ1
YmJlcmJhbmRBbW91bnQ7Cit9CisKKy0gKHZvaWQpX3Jlc3RvcmVDb250ZW50T2Zmc2V0OihDR1Bv
aW50KWNvbnRlbnRPZmZzZXQgYWNjb3VudGluZ0ZvclJ1YmJlcmJhbmQ6KENHU2l6ZSlydWJiZXJi
YW5kQW1vdW50Cit7CisgICAgVUlFZGdlSW5zZXRzIGVkZ2VJbnNldHMgPSBbc2VsZiBjb250ZW50
SW5zZXRdOworICAgIENHUG9pbnQgYWRqdXN0ZWRPZmZzZXQgPSBjb250ZW50T2Zmc2V0OworICAg
IENHUmVjdCBib3VuZHMgPSBbc2VsZiBib3VuZHNdOworICAgIENHU2l6ZSBjb250ZW50U2l6ZSA9
IFtzZWxmIGNvbnRlbnRTaXplXTsKKyAgICBDR1NpemUgbWF4Q29udGVudE9mZnNldCA9IENHU2l6
ZU1ha2UoY29udGVudFNpemUud2lkdGggKyBlZGdlSW5zZXRzLnJpZ2h0IC0gYm91bmRzLnNpemUu
d2lkdGgsIGNvbnRlbnRTaXplLmhlaWdodCArIGVkZ2VJbnNldHMuYm90dG9tIC0gYm91bmRzLnNp
emUuaGVpZ2h0KTsKKworICAgIGlmIChydWJiZXJiYW5kQW1vdW50LndpZHRoIDwgMCkgLy8gTGVm
dAorICAgICAgICBhZGp1c3RlZE9mZnNldC54ID0gLWVkZ2VJbnNldHMubGVmdCArIHJ1YmJlcmJh
bmRBbW91bnQud2lkdGg7CisgICAgZWxzZSBpZiAocnViYmVyYmFuZEFtb3VudC53aWR0aCA+IDAp
IC8vIFJpZ2h0CisgICAgICAgIGFkanVzdGVkT2Zmc2V0LnggPSBtYXhDb250ZW50T2Zmc2V0Lndp
ZHRoICsgcnViYmVyYmFuZEFtb3VudC53aWR0aDsKKworICAgIGlmIChydWJiZXJiYW5kQW1vdW50
LmhlaWdodCA8IDApIC8vIFRvcAorICAgICAgICBhZGp1c3RlZE9mZnNldC55ID0gLWVkZ2VJbnNl
dHMudG9wICsgcnViYmVyYmFuZEFtb3VudC5oZWlnaHQ7CisgICAgZWxzZSBpZiAocnViYmVyYmFu
ZEFtb3VudC5oZWlnaHQgPiAwKSAvLyBCb3R0b20KKyAgICAgICAgYWRqdXN0ZWRPZmZzZXQueSA9
IG1heENvbnRlbnRPZmZzZXQuaGVpZ2h0ICsgcnViYmVyYmFuZEFtb3VudC5oZWlnaHQ7CisKKyAg
ICBbc2VsZiBzZXRDb250ZW50T2Zmc2V0OmFkanVzdGVkT2Zmc2V0XTsKK30KKworLSAodm9pZClf
c2V0Q29udGVudFNpemVQcmVzZXJ2aW5nQ29udGVudE9mZnNldER1cmluZ1J1YmJlcmJhbmQ6KENH
U2l6ZSljb250ZW50U2l6ZQoreworICAgIENHU2l6ZSBjdXJyZW50Q29udGVudFNpemUgPSBbc2Vs
ZiBjb250ZW50U2l6ZV07CisKKyAgICBpZiAoQ0dTaXplRXF1YWxUb1NpemUoY3VycmVudENvbnRl
bnRTaXplLCBDR1NpemVaZXJvKSB8fCBDR1NpemVFcXVhbFRvU2l6ZShjdXJyZW50Q29udGVudFNp
emUsIGNvbnRlbnRTaXplKSkgeworICAgICAgICBbc2VsZiBzZXRDb250ZW50U2l6ZTpjb250ZW50
U2l6ZV07CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgCisgICAgQ0dQb2ludCBjdXJyZW50
Q29udGVudE9mZnNldCA9IFtzZWxmIGNvbnRlbnRPZmZzZXRdOworICAgIENHU2l6ZSBydWJiZXJi
YW5kQW1vdW50ID0gW3NlbGYgX2N1cnJlbnRSdWJiZXJiYW5kQW1vdW50XTsKKworICAgIFtzZWxm
IHNldENvbnRlbnRTaXplOmNvbnRlbnRTaXplXTsKKworICAgIGlmICghQ0dTaXplRXF1YWxUb1Np
emUocnViYmVyYmFuZEFtb3VudCwgQ0dTaXplWmVybykpCisgICAgICAgIFtzZWxmIF9yZXN0b3Jl
Q29udGVudE9mZnNldDpjdXJyZW50Q29udGVudE9mZnNldCBhY2NvdW50aW5nRm9yUnViYmVyYmFu
ZDpydWJiZXJiYW5kQW1vdW50XTsKK30KKwogQGVuZAogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9T
KQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>233773</attachid>
            <date>2014-06-24 18:30:50 -0700</date>
            <delta_ts>2014-06-25 15:14:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134238-20140624183031.patch</filename>
            <type>text/plain</type>
            <size>6953</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcwMzkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZGE5YjE2MTNmNTgwYmUw
MDRkYTQ3ODQxMDVmN2U1MjQ4YzVhYzhhMS4uNjVlMWVlMTRhMTExZjEwNDVjNDYwZWFjYzFkZWIx
ZjkyMzNlZmVhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE0LTA2LTI0ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1MgV0syXSBQ
YWdlIGp1bXBzIHdoZW4gcnViYmVyLWJhbmRpbmcgb24gYXp1cmVtYWdhemluZS5jb20gCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQyMzgKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzE2OTE4MjI4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgSWYgdGhlIHNjcm9sbCB2aWV3IGlzIGluIHRo
ZSBwcm9jZXNzIG9mIHJ1YmJlci1iYW5kaW5nIHdoZW4gLXNldENvbnRlbnRTaXplOiBpcyBjYWxs
ZWQsCisgICAgICAgIGl0IGNsYW1wcyB0aGUgc2Nyb2xsIG9mZnNldHMgYmV0d2VlbiB6ZXJvIGFu
ZCB0aGUgbWF4IHZhbHVlLCB3aGljaCB2aXNpYmx5IGludGVycnVwdHMgdGhlCisgICAgICAgIHJ1
YmJlcmJhbmQuIFRoaXMgY2FuIGVhc2lseSBoYXBwZW4gbm93IHRoYXQgd2UgY29udGludWFsbHkg
c2VuZCBzY3JvbGwgZXZlbnRzIHRvIHRoZSBwYWdlCisgICAgICAgIG9uIHNjcm9sbGluZywgZXNw
ZWNpYWxseSB3aGVuIHBhZ2VzIGxpa2UgYXp1cmVtYWdhemluZS5jb20gZG8gZmFrZSBzdGlja3kg
YnkgdG9nZ2xpbmcKKyAgICAgICAgaW4tZmxvdyBlbGVtZW50cyBpbnRvIHBvc2l0aW9uOmZpeGVk
LgorICAgICAgICAKKyAgICAgICAgRml4IGJ5IGNvbXB1dGluZyB0aGUgYW1vdW50IG9mIHJ1YmJl
ci1iYW5kIGJlZm9yZSBjYWxsaW5nIC1zZXRDb250ZW50U2l6ZTosIGFuZCB0aGVuCisgICAgICAg
IHJlc3RvcmluZyB0aGUgY29udGVudE9mZnNldCB3aXRoIHRoZSBzYW1lIGFtb3VudCBvZiBydWJi
ZXItYmFuZCBldmVuIHdoZW4gdGhlIGNvbnRlbnQgc2l6ZQorICAgICAgICBpcyBkaWZmZXJlbnQu
CisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbToKKyAgICAgICAg
KC1bV0tXZWJWaWV3IF9kaWRDb21taXRMYXllclRyZWU6V2ViS2l0OjpdKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tT
Y3JvbGxWaWV3Lm1tOgorICAgICAgICAoLVtXS1Njcm9sbFZpZXcgX2N1cnJlbnRSdWJiZXJiYW5k
QW1vdW50XSk6CisgICAgICAgICgtW1dLU2Nyb2xsVmlldyBfcmVzdG9yZUNvbnRlbnRPZmZzZXQ6
YWNjb3VudGluZ0ZvclJ1YmJlcmJhbmQ6XSk6CisgICAgICAgICgtW1dLU2Nyb2xsVmlldyBfc2V0
Q29udGVudFNpemVQcmVzZXJ2aW5nQ29udGVudE9mZnNldER1cmluZ1J1YmJlcmJhbmQ6XSk6CisK
IDIwMTQtMDYtMjQgIEVucmljYSBDYXN1Y2NpICA8ZW5yaWNhQGFwcGxlLmNvbT4KIAogICAgICAg
ICBpT1MgV2ViS2l0MjogYmxvY2sgc2VsZWN0aW9uIHRlbmRzIHRvIHByZWZlciBibG9jayB0byBz
aW5nbGUgd29yZHMgZXZlbiB3aGVuIHRoZSBwYWdlIGlzIHpvb21lZC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KaW5kZXggMDI1ZDZkYzU1YTVh
YTZjYWZiMDRjNjdmMDc5YWQ1MDgyMDQ5ZGUyZC4uMjUwMDAzNGQ3YzRiN2Y3MjgzMzI0NmUxZjg3
MDQ3OGM1NjcxOWUzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
b2NvYS9XS1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1dlYlZpZXcubW0KQEAgLTc3Myw3ICs3NzMsOSBAQCAtICh2b2lkKV9kaWRDb21taXRMYXll
clRyZWU6KGNvbnN0IFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24mKWxheWVyVHJl
ZQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgW19zY3JvbGxWaWV3IHNldENvbnRlbnRT
aXplOnJvdW5kU2Nyb2xsVmlld0NvbnRlbnRTaXplKCpfcGFnZSwgW19jb250ZW50VmlldyBmcmFt
ZV0uc2l6ZSldOworICAgIENHU2l6ZSBuZXdDb250ZW50U2l6ZSA9IHJvdW5kU2Nyb2xsVmlld0Nv
bnRlbnRTaXplKCpfcGFnZSwgW19jb250ZW50VmlldyBmcmFtZV0uc2l6ZSk7CisgICAgW19zY3Jv
bGxWaWV3IF9zZXRDb250ZW50U2l6ZVByZXNlcnZpbmdDb250ZW50T2Zmc2V0RHVyaW5nUnViYmVy
YmFuZDpuZXdDb250ZW50U2l6ZV07CisKICAgICBbX3Njcm9sbFZpZXcgc2V0TWluaW11bVpvb21T
Y2FsZTpsYXllclRyZWVUcmFuc2FjdGlvbi5taW5pbXVtU2NhbGVGYWN0b3IoKV07CiAgICAgW19z
Y3JvbGxWaWV3IHNldE1heGltdW1ab29tU2NhbGU6bGF5ZXJUcmVlVHJhbnNhY3Rpb24ubWF4aW11
bVNjYWxlRmFjdG9yKCldOwogICAgIFtfc2Nyb2xsVmlldyBzZXRab29tRW5hYmxlZDpsYXllclRy
ZWVUcmFuc2FjdGlvbi5hbGxvd3NVc2VyU2NhbGluZygpXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5oCmluZGV4IGE4N2Y0NzVlN2Q0NGQ2MDI4Y2NlZTE0NTJj
NjM5ZDRjMjBmYjNlOTQuLmNiNDBiZDhmZjVkYjc4ZjkyMTdlOWE2NDdkYmQ5OWQzZjA3NjhhY2Mg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3LmgK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcuaApAQCAtMzMs
NiArMzMsOCBAQAogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduKSBXS1dlYlZpZXcgPFVJ
U2Nyb2xsVmlld0RlbGVnYXRlPiAqaW50ZXJuYWxEZWxlZ2F0ZTsKIAorLSAodm9pZClfc2V0Q29u
dGVudFNpemVQcmVzZXJ2aW5nQ29udGVudE9mZnNldER1cmluZ1J1YmJlcmJhbmQ6KENHU2l6ZSlj
b250ZW50U2l6ZTsKKwogQGVuZAogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcubW0gYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5tbQppbmRleCA0MTMzNjliY2M0ZThm
ZDcxN2I0YmZhZWYwY2ZhZDgyMjhmMzI3NWMwLi40Y2IxNzRkMjBmZTc3N2U5MDc5MTNhNmJkNzli
Y2Y0YjNmMzkzNzU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dL
U2Nyb2xsVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xs
Vmlldy5tbQpAQCAtMTk4LDYgKzE5OCw3OSBAQCAtICh2b2lkKXNldENvbnRlbnRJbnNldDooVUlF
ZGdlSW5zZXRzKWNvbnRlbnRJbnNldAogICAgIFtfaW50ZXJuYWxEZWxlZ2F0ZSBfdXBkYXRlVmlz
aWJsZUNvbnRlbnRSZWN0c107CiB9CiAKKy8vIE5lZ2F0aXZlIHZhbHVlcyBpbmRpY2F0ZSBydWJi
ZXJiYW5kaW5nIGF0IGxlZnQvdG9wLCBwb3NpdGl2ZSBhdCByaWdodC9ib3R0b20uCistIChDR1Np
emUpX2N1cnJlbnRSdWJiZXJiYW5kQW1vdW50Cit7CisgICAgQ0dSZWN0IGJvdW5kcyA9IFtzZWxm
IGJvdW5kc107CisgICAgQ0dTaXplIGNvbnRlbnRTaXplID0gW3NlbGYgY29udGVudFNpemVdOwor
ICAgIFVJRWRnZUluc2V0cyBlZGdlSW5zZXRzID0gW3NlbGYgY29udGVudEluc2V0XTsKKyAgICBD
R1NpemUgbWF4Q29udGVudE9mZnNldCA9IENHU2l6ZU1ha2UoY29udGVudFNpemUud2lkdGggKyBl
ZGdlSW5zZXRzLnJpZ2h0IC0gYm91bmRzLnNpemUud2lkdGgsIGNvbnRlbnRTaXplLmhlaWdodCAr
IGVkZ2VJbnNldHMuYm90dG9tIC0gYm91bmRzLnNpemUuaGVpZ2h0KTsKKworICAgIENHU2l6ZSBy
dWJiZXJiYW5kQW1vdW50ID0gQ0dTaXplWmVybzsKKworICAgIENHUG9pbnQgY29udGVudE9mZnNl
dCA9IFtzZWxmIGNvbnRlbnRPZmZzZXRdOworICAgIGlmIChjb250ZW50T2Zmc2V0LnggPCAtZWRn
ZUluc2V0cy5sZWZ0KQorICAgICAgICBydWJiZXJiYW5kQW1vdW50LndpZHRoID0gc3RkOjptaW48
Q0dGbG9hdD4oY29udGVudE9mZnNldC54ICsgLWVkZ2VJbnNldHMubGVmdCwgMCk7CisgICAgZWxz
ZSBpZiAoY29udGVudE9mZnNldC54ID4gbWF4Q29udGVudE9mZnNldC53aWR0aCkKKyAgICAgICAg
cnViYmVyYmFuZEFtb3VudC53aWR0aCA9IHN0ZDo6bWF4PENHRmxvYXQ+KGNvbnRlbnRPZmZzZXQu
eCAtIG1heENvbnRlbnRPZmZzZXQud2lkdGgsIDApOworCisgICAgaWYgKGNvbnRlbnRPZmZzZXQu
eSA8IC1lZGdlSW5zZXRzLnRvcCkKKyAgICAgICAgcnViYmVyYmFuZEFtb3VudC5oZWlnaHQgPSBz
dGQ6Om1pbjxDR0Zsb2F0Pihjb250ZW50T2Zmc2V0LnkgKyBlZGdlSW5zZXRzLnRvcCwgMCk7Cisg
ICAgZWxzZSBpZiAoY29udGVudE9mZnNldC55ID4gbWF4Q29udGVudE9mZnNldC5oZWlnaHQpCisg
ICAgICAgIHJ1YmJlcmJhbmRBbW91bnQuaGVpZ2h0ID0gc3RkOjptYXg8Q0dGbG9hdD4oY29udGVu
dE9mZnNldC55IC0gbWF4Q29udGVudE9mZnNldC5oZWlnaHQsIDApOworICAgIAorICAgIHJldHVy
biBydWJiZXJiYW5kQW1vdW50OworfQorCistICh2b2lkKV9yZXN0b3JlQ29udGVudE9mZnNldDoo
Q0dQb2ludCljb250ZW50T2Zmc2V0IGZvck9sZENvbnRlbnRTaXplOihDR1NpemUpb2xkQ29udGVu
dFNpemUgYWNjb3VudGluZ0ZvclJ1YmJlcmJhbmQ6KENHU2l6ZSlydWJiZXJiYW5kQW1vdW50Cit7
CisgICAgVUlFZGdlSW5zZXRzIGVkZ2VJbnNldHMgPSBbc2VsZiBjb250ZW50SW5zZXRdOworICAg
IENHUG9pbnQgYWRqdXN0ZWRPZmZzZXQgPSBjb250ZW50T2Zmc2V0OworICAgIENHUmVjdCBib3Vu
ZHMgPSBbc2VsZiBib3VuZHNdOworICAgIENHU2l6ZSBjb250ZW50U2l6ZSA9IFtzZWxmIGNvbnRl
bnRTaXplXTsKKyAgICBDR1NpemUgbWF4Q29udGVudE9mZnNldCA9IENHU2l6ZU1ha2UoY29udGVu
dFNpemUud2lkdGggKyBlZGdlSW5zZXRzLnJpZ2h0IC0gYm91bmRzLnNpemUud2lkdGgsIGNvbnRl
bnRTaXplLmhlaWdodCArIGVkZ2VJbnNldHMuYm90dG9tIC0gYm91bmRzLnNpemUuaGVpZ2h0KTsK
KworICAgIGlmIChydWJiZXJiYW5kQW1vdW50LndpZHRoIDwgMCkgLy8gTGVmdAorICAgICAgICBh
ZGp1c3RlZE9mZnNldC54ID0gLWVkZ2VJbnNldHMubGVmdCArIHJ1YmJlcmJhbmRBbW91bnQud2lk
dGg7CisgICAgZWxzZSBpZiAocnViYmVyYmFuZEFtb3VudC53aWR0aCA+IDApIHsgLy8gUmlnaHQK
KyAgICAgICAgLy8gT25seSBhZGp1c3QgaWYgdGhlIHBhZ2UgZ290IG5hcnJvd2VyLgorICAgICAg
ICBpZiAoY29udGVudFNpemUud2lkdGggPD0gb2xkQ29udGVudFNpemUud2lkdGgpCisgICAgICAg
ICAgICBhZGp1c3RlZE9mZnNldC54ID0gbWF4Q29udGVudE9mZnNldC53aWR0aCArIHJ1YmJlcmJh
bmRBbW91bnQud2lkdGg7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGFkanVzdGVkT2Zmc2V0
LnggPSBbc2VsZiBjb250ZW50T2Zmc2V0XS54OworICAgIH0KKworICAgIGlmIChydWJiZXJiYW5k
QW1vdW50LmhlaWdodCA8IDApIC8vIFRvcAorICAgICAgICBhZGp1c3RlZE9mZnNldC55ID0gLWVk
Z2VJbnNldHMudG9wICsgcnViYmVyYmFuZEFtb3VudC5oZWlnaHQ7CisgICAgZWxzZSBpZiAocnVi
YmVyYmFuZEFtb3VudC5oZWlnaHQgPiAwKSB7IC8vIEJvdHRvbQorICAgICAgICAvLyBPbmx5IGFk
anVzdCBpZiB0aGUgcGFnZSBnb3Qgc2hvcnRlci4KKyAgICAgICAgaWYgKGNvbnRlbnRTaXplLmhl
aWdodCA8PSBvbGRDb250ZW50U2l6ZS5oZWlnaHQpCisgICAgICAgICAgICBhZGp1c3RlZE9mZnNl
dC55ID0gbWF4Q29udGVudE9mZnNldC5oZWlnaHQgKyBydWJiZXJiYW5kQW1vdW50LmhlaWdodDsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgYWRqdXN0ZWRPZmZzZXQueSA9IFtzZWxmIGNvbnRl
bnRPZmZzZXRdLnk7CisgICAgfQorCisgICAgW3NlbGYgc2V0Q29udGVudE9mZnNldDphZGp1c3Rl
ZE9mZnNldF07Cit9CisKKy0gKHZvaWQpX3NldENvbnRlbnRTaXplUHJlc2VydmluZ0NvbnRlbnRP
ZmZzZXREdXJpbmdSdWJiZXJiYW5kOihDR1NpemUpY29udGVudFNpemUKK3sKKyAgICBDR1NpemUg
Y3VycmVudENvbnRlbnRTaXplID0gW3NlbGYgY29udGVudFNpemVdOworCisgICAgaWYgKENHU2l6
ZUVxdWFsVG9TaXplKGN1cnJlbnRDb250ZW50U2l6ZSwgQ0dTaXplWmVybykgfHwgQ0dTaXplRXF1
YWxUb1NpemUoY3VycmVudENvbnRlbnRTaXplLCBjb250ZW50U2l6ZSkpIHsKKyAgICAgICAgW3Nl
bGYgc2V0Q29udGVudFNpemU6Y29udGVudFNpemVdOworICAgICAgICByZXR1cm47CisgICAgfQor
ICAgIAorICAgIENHUG9pbnQgb2xkQ29udGVudE9mZnNldCA9IFtzZWxmIGNvbnRlbnRPZmZzZXRd
OworICAgIENHU2l6ZSBydWJiZXJiYW5kQW1vdW50ID0gW3NlbGYgX2N1cnJlbnRSdWJiZXJiYW5k
QW1vdW50XTsKKworICAgIFtzZWxmIHNldENvbnRlbnRTaXplOmNvbnRlbnRTaXplXTsKKworICAg
IGlmICghQ0dTaXplRXF1YWxUb1NpemUocnViYmVyYmFuZEFtb3VudCwgQ0dTaXplWmVybykpCisg
ICAgICAgIFtzZWxmIF9yZXN0b3JlQ29udGVudE9mZnNldDpvbGRDb250ZW50T2Zmc2V0IGZvck9s
ZENvbnRlbnRTaXplOmN1cnJlbnRDb250ZW50U2l6ZSBhY2NvdW50aW5nRm9yUnViYmVyYmFuZDpy
dWJiZXJiYW5kQW1vdW50XTsKK30KKwogQGVuZAogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>233840</attachid>
            <date>2014-06-25 15:14:39 -0700</date>
            <delta_ts>2014-06-25 15:31:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134238-20140625151419.patch</filename>
            <type>text/plain</type>
            <size>5342</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcwNDMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTQzNzgyMWQxMzMwZDQ5
NTc5NzEwOGUwN2RiMTAwOTI4Y2U0MDE2My4uZjlkMGFhYWNlN2QyNWUxNWQ4MTdkYmI2ZTZmZDg3
MTM5Mzg3NWM1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE0LTA2LTI1ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1MgV0syXSBQ
YWdlIGp1bXBzIHdoZW4gcnViYmVyLWJhbmRpbmcgb24gYXp1cmVtYWdhemluZS5jb20gCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQyMzgKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzE2OTE4MjI4PgorCisgICAgICAgIFJldmlld2VkIGJ5IEJlbmph
bWluIFBvdWxhaW4uCisgICAgICAgIAorICAgICAgICBJZiB0aGUgc2Nyb2xsIHZpZXcgaXMgaW4g
dGhlIHByb2Nlc3Mgb2YgcnViYmVyLWJhbmRpbmcgd2hlbiAtc2V0Q29udGVudFNpemU6IGlzIGNh
bGxlZCwKKyAgICAgICAgaXQgY2xhbXBzIHRoZSBzY3JvbGwgb2Zmc2V0cyBiZXR3ZWVuIHplcm8g
YW5kIHRoZSBtYXggdmFsdWUsIHdoaWNoIHZpc2libHkgaW50ZXJydXB0cyB0aGUKKyAgICAgICAg
cnViYmVyYmFuZC4gVGhpcyBjYW4gZWFzaWx5IGhhcHBlbiBub3cgdGhhdCB3ZSBjb250aW51YWxs
eSBzZW5kIHNjcm9sbCBldmVudHMgdG8gdGhlIHBhZ2UKKyAgICAgICAgb24gc2Nyb2xsaW5nLCBl
c3BlY2lhbGx5IHdoZW4gcGFnZXMgbGlrZSBhenVyZW1hZ2F6aW5lLmNvbSBkbyBmYWtlIHN0aWNr
eSBieSB0b2dnbGluZworICAgICAgICBpbi1mbG93IGVsZW1lbnRzIGludG8gcG9zaXRpb246Zml4
ZWQuCisgICAgICAgIAorICAgICAgICBGaXggYnkgY29tcHV0aW5nIHRoZSBhbW91bnQgb2YgcnVi
YmVyLWJhbmQgYmVmb3JlIGNhbGxpbmcgLXNldENvbnRlbnRTaXplOiwgYW5kIHRoZW4KKyAgICAg
ICAgcmVzdG9yaW5nIHRoZSBjb250ZW50T2Zmc2V0IHdpdGggdGhlIHNhbWUgYW1vdW50IG9mIHJ1
YmJlci1iYW5kIGV2ZW4gd2hlbiB0aGUgY29udGVudCBzaXplCisgICAgICAgIGlzIGRpZmZlcmVu
dCwgZm9yIHRvcC9sZWZ0IHJ1YmJlcmJhbmRzLgorICAgICAgICAKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbToKKyAgICAgICAgKC1bV0tXZWJWaWV3IF9kaWRDb21t
aXRMYXllclRyZWU6V2ViS2l0OjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLU2Nyb2xs
Vmlldy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3Lm1tOgorICAgICAg
ICAoLVtXS1Njcm9sbFZpZXcgX2N1cnJlbnRUb3BMZWZ0UnViYmVyYmFuZEFtb3VudF0pOgorICAg
ICAgICAoLVtXS1Njcm9sbFZpZXcgX3Jlc3RvcmVDb250ZW50T2Zmc2V0V2l0aFJ1YmJlcmJhbmRB
bW91bnQ6XSk6CisgICAgICAgICgtW1dLU2Nyb2xsVmlldyBfc2V0Q29udGVudFNpemVQcmVzZXJ2
aW5nQ29udGVudE9mZnNldER1cmluZ1J1YmJlcmJhbmQ6XSk6CisKIDIwMTQtMDYtMjUgIExhc3ps
byBHb21ib3MgIDxsLmdvbWJvc0BzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZW1vdmUgYnVpbGQg
Z3VhcmQgZm9yIHByb2dyZXNzIGVsZW1lbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KaW5kZXggNjBhMTg5YzcyOWM2NjczOTFhNDM5YzA1MTY4
NzlhN2IxODY0NTkyNC4uOGZmMDk1ZjE0ZGViYzYxODljYjIzOTg4MDQ1OGI0ZTFmODQ3ZWIxMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcu
bW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0K
QEAgLTc4NCw3ICs3ODQsOSBAQCAtICh2b2lkKV9kaWRDb21taXRMYXllclRyZWU6KGNvbnN0IFdl
YktpdDo6UmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24mKWxheWVyVHJlZQogICAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgW19zY3JvbGxWaWV3IHNldENvbnRlbnRTaXplOnJvdW5kU2Nyb2xs
Vmlld0NvbnRlbnRTaXplKCpfcGFnZSwgW19jb250ZW50VmlldyBmcmFtZV0uc2l6ZSldOworICAg
IENHU2l6ZSBuZXdDb250ZW50U2l6ZSA9IHJvdW5kU2Nyb2xsVmlld0NvbnRlbnRTaXplKCpfcGFn
ZSwgW19jb250ZW50VmlldyBmcmFtZV0uc2l6ZSk7CisgICAgW19zY3JvbGxWaWV3IF9zZXRDb250
ZW50U2l6ZVByZXNlcnZpbmdDb250ZW50T2Zmc2V0RHVyaW5nUnViYmVyYmFuZDpuZXdDb250ZW50
U2l6ZV07CisKICAgICBbX3Njcm9sbFZpZXcgc2V0TWluaW11bVpvb21TY2FsZTpsYXllclRyZWVU
cmFuc2FjdGlvbi5taW5pbXVtU2NhbGVGYWN0b3IoKV07CiAgICAgW19zY3JvbGxWaWV3IHNldE1h
eGltdW1ab29tU2NhbGU6bGF5ZXJUcmVlVHJhbnNhY3Rpb24ubWF4aW11bVNjYWxlRmFjdG9yKCld
OwogICAgIFtfc2Nyb2xsVmlldyBzZXRab29tRW5hYmxlZDpsYXllclRyZWVUcmFuc2FjdGlvbi5h
bGxvd3NVc2VyU2NhbGluZygpXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9pb3MvV0tTY3JvbGxWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Ny
b2xsVmlldy5oCmluZGV4IGE4N2Y0NzVlN2Q0NGQ2MDI4Y2NlZTE0NTJjNjM5ZDRjMjBmYjNlOTQu
LmNiNDBiZDhmZjVkYjc4ZjkyMTdlOWE2NDdkYmQ5OWQzZjA3NjhhY2MgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3LmgKKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcuaApAQCAtMzMsNiArMzMsOCBAQAogCiBA
cHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduKSBXS1dlYlZpZXcgPFVJU2Nyb2xsVmlld0RlbGVn
YXRlPiAqaW50ZXJuYWxEZWxlZ2F0ZTsKIAorLSAodm9pZClfc2V0Q29udGVudFNpemVQcmVzZXJ2
aW5nQ29udGVudE9mZnNldER1cmluZ1J1YmJlcmJhbmQ6KENHU2l6ZSljb250ZW50U2l6ZTsKKwog
QGVuZAogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvaW9zL1dLU2Nyb2xsVmlldy5tbQppbmRleCA0MTMzNjliY2M0ZThmZDcxN2I0YmZhZWYwY2Zh
ZDgyMjhmMzI3NWMwLi43ZDVhMmYyNWU2Y2MwZDRiYjI3NmY2ODYzMTNjNzA4ZjdiMTQ3ZTEwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Nyb2xsVmlldy5tbQpAQCAtMTk4
LDYgKzE5OCw1NCBAQCAtICh2b2lkKXNldENvbnRlbnRJbnNldDooVUlFZGdlSW5zZXRzKWNvbnRl
bnRJbnNldAogICAgIFtfaW50ZXJuYWxEZWxlZ2F0ZSBfdXBkYXRlVmlzaWJsZUNvbnRlbnRSZWN0
c107CiB9CiAKKy8vIEZldGNoIHRvcC9sZWZ0IHJ1YmJlcmJhbmQgYW1vdW50cyAoYXMgbmVnYXRp
dmUgdmFsdWVzKS4KKy0gKENHU2l6ZSlfY3VycmVudFRvcExlZnRSdWJiZXJiYW5kQW1vdW50Cit7
CisgICAgVUlFZGdlSW5zZXRzIGVkZ2VJbnNldHMgPSBbc2VsZiBjb250ZW50SW5zZXRdOworCisg
ICAgQ0dTaXplIHJ1YmJlcmJhbmRBbW91bnQgPSBDR1NpemVaZXJvOworCisgICAgQ0dQb2ludCBj
b250ZW50T2Zmc2V0ID0gW3NlbGYgY29udGVudE9mZnNldF07CisgICAgaWYgKGNvbnRlbnRPZmZz
ZXQueCA8IC1lZGdlSW5zZXRzLmxlZnQpCisgICAgICAgIHJ1YmJlcmJhbmRBbW91bnQud2lkdGgg
PSBzdGQ6Om1pbjxDR0Zsb2F0Pihjb250ZW50T2Zmc2V0LnggKyAtZWRnZUluc2V0cy5sZWZ0LCAw
KTsKKworICAgIGlmIChjb250ZW50T2Zmc2V0LnkgPCAtZWRnZUluc2V0cy50b3ApCisgICAgICAg
IHJ1YmJlcmJhbmRBbW91bnQuaGVpZ2h0ID0gc3RkOjptaW48Q0dGbG9hdD4oY29udGVudE9mZnNl
dC55ICsgZWRnZUluc2V0cy50b3AsIDApOworICAgIAorICAgIHJldHVybiBydWJiZXJiYW5kQW1v
dW50OworfQorCistICh2b2lkKV9yZXN0b3JlQ29udGVudE9mZnNldFdpdGhSdWJiZXJiYW5kQW1v
dW50OihDR1NpemUpcnViYmVyYmFuZEFtb3VudAoreworICAgIFVJRWRnZUluc2V0cyBlZGdlSW5z
ZXRzID0gW3NlbGYgY29udGVudEluc2V0XTsKKyAgICBDR1BvaW50IGFkanVzdGVkT2Zmc2V0ID0g
W3NlbGYgY29udGVudE9mZnNldF07CisKKyAgICBpZiAocnViYmVyYmFuZEFtb3VudC53aWR0aCA8
IDApCisgICAgICAgIGFkanVzdGVkT2Zmc2V0LnggPSAtZWRnZUluc2V0cy5sZWZ0ICsgcnViYmVy
YmFuZEFtb3VudC53aWR0aDsKKworICAgIGlmIChydWJiZXJiYW5kQW1vdW50LmhlaWdodCA8IDAp
CisgICAgICAgIGFkanVzdGVkT2Zmc2V0LnkgPSAtZWRnZUluc2V0cy50b3AgKyBydWJiZXJiYW5k
QW1vdW50LmhlaWdodDsKKworICAgIFtzZWxmIHNldENvbnRlbnRPZmZzZXQ6YWRqdXN0ZWRPZmZz
ZXRdOworfQorCistICh2b2lkKV9zZXRDb250ZW50U2l6ZVByZXNlcnZpbmdDb250ZW50T2Zmc2V0
RHVyaW5nUnViYmVyYmFuZDooQ0dTaXplKWNvbnRlbnRTaXplCit7CisgICAgQ0dTaXplIGN1cnJl
bnRDb250ZW50U2l6ZSA9IFtzZWxmIGNvbnRlbnRTaXplXTsKKworICAgIGlmIChDR1NpemVFcXVh
bFRvU2l6ZShjdXJyZW50Q29udGVudFNpemUsIENHU2l6ZVplcm8pIHx8IENHU2l6ZUVxdWFsVG9T
aXplKGN1cnJlbnRDb250ZW50U2l6ZSwgY29udGVudFNpemUpIHx8IHNlbGYuem9vbVNjYWxlIDwg
c2VsZi5taW5pbXVtWm9vbVNjYWxlKSB7CisgICAgICAgIFtzZWxmIHNldENvbnRlbnRTaXplOmNv
bnRlbnRTaXplXTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIENHU2l6ZSBydWJiZXJi
YW5kQW1vdW50ID0gW3NlbGYgX2N1cnJlbnRUb3BMZWZ0UnViYmVyYmFuZEFtb3VudF07CisKKyAg
ICBbc2VsZiBzZXRDb250ZW50U2l6ZTpjb250ZW50U2l6ZV07CisKKyAgICBpZiAoIUNHU2l6ZUVx
dWFsVG9TaXplKHJ1YmJlcmJhbmRBbW91bnQsIENHU2l6ZVplcm8pKQorICAgICAgICBbc2VsZiBf
cmVzdG9yZUNvbnRlbnRPZmZzZXRXaXRoUnViYmVyYmFuZEFtb3VudDpydWJiZXJiYW5kQW1vdW50
XTsKK30KKwogQGVuZAogCiAjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQo=
</data>
<flag name="review"
          id="258348"
          type_id="1"
          status="+"
          setter="benjamin"
    />
          </attachment>
      

    </bug>

</bugzilla>