<?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>119225</bug_id>
          
          <creation_ts>2013-07-29 15:02:20 -0700</creation_ts>
          <short_desc>[wk2] Flush the WebProcess’ implicit transaction when using endDeferringViewInWindowChangesSync</short_desc>
          <delta_ts>2013-07-29 21:44:11 -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>WebKit2</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>andersca</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>912604</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-07-29 15:02:20 -0700</bug_when>
    <thetext>If an off-screen WKView is brought on screen bounded by endDeferringViewInWindowChangesSync, we expect the view to be fully ready (unless we hit the 250 ms watchdog and give up) to display when endDeferringViewInWindowChangesSync returns. However, the WebProcess’ implicit transaction can still be pending, meaning that the tiles/root compositing layer can be not-yet-parented.

To avoid this flash, we can [CATransaction flush] whenever endDeferringViewInWindowChangesSync tells the WebProcess that its view-in-window state changed.

&lt;rdar://problem/14568841&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912605</commentid>
    <comment_count>1</comment_count>
      <attachid>207672</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-07-29 15:26:55 -0700</bug_when>
    <thetext>Created attachment 207672
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912611</commentid>
    <comment_count>2</comment_count>
      <attachid>207675</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-07-29 15:44:40 -0700</bug_when>
    <thetext>Created attachment 207675
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912665</commentid>
    <comment_count>3</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-07-29 21:44:11 -0700</bug_when>
    <thetext>Thanks!

http://trac.webkit.org/changeset/153458</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>207672</attachid>
            <date>2013-07-29 15:26:55 -0700</date>
            <delta_ts>2013-07-29 15:44:40 -0700</delta_ts>
            <desc>patch</desc>
            <filename>fix-flash-ml.diff</filename>
            <type>text/plain</type>
            <size>9464</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA2MzJmOGUwLi42NWFlODFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDYg
QEAKKzIwMTMtMDctMjkgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgW3drMl0gRmx1c2ggdGhlIFdlYlByb2Nlc3PigJkgaW1wbGljaXQgdHJhbnNhY3Rp
b24gd2hlbiB1c2luZyBlbmREZWZlcnJpbmdWaWV3SW5XaW5kb3dDaGFuZ2VzU3luYworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5MjI1CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS8xNDU2ODg0MT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZWxsIENvcmVBbmltYXRpb24gdG8gZmx1c2ggdGhlIGltcGxp
Y2l0IHRyYW5zYWN0aW9uIGJlZm9yZSByZXBseWluZworICAgICAgICB3aGVuIHVzaW5nIGVuZERl
ZmVycmluZ1ZpZXdJbldpbmRvd0NoYW5nZXNTeW5jLCBhcyB0aGF0IG1ldGhvZCdzIGNvbnRyYWN0
CisgICAgICAgIGlzIHRoYXQgdGhlIFdlYlByb2Nlc3MgaXMgdG90YWxseSByZWFkeSB0byBiZSBp
bi13aW5kb3cgd2hlbiBpdCByZXR1cm5zLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9tYWMv
V0tWaWV3Lm1tOgorICAgICAgICAoLVtXS1ZpZXcgZW5kRGVmZXJyaW5nVmlld0luV2luZG93Q2hh
bmdlc10pOgorICAgICAgICBBZG9wdCB2aWV3SW5XaW5kb3dTdGF0ZURpZENoYW5nZS4KKworICAg
ICAgICAoLVtXS1ZpZXcgZW5kRGVmZXJyaW5nVmlld0luV2luZG93Q2hhbmdlc1N5bmNdKToKKyAg
ICAgICAgQWRvcHQgdmlld0luV2luZG93U3RhdGVEaWRDaGFuZ2UsIGFza2luZyBpdCB0byBzZW5k
IGEgcmVwbHkgb25seSBpZiB3ZSdyZSBnb2luZyB0byB3YWl0IGZvciBvbmUuCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVBy
b3h5Ojp2aWV3SW5XaW5kb3dTdGF0ZURpZENoYW5nZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2VQcm94eTo6dmlld1N0YXRlRGlkQ2hhbmdlKToKKyAgICAgICAgUHVsbCB2aWV3SW5XaW5kb3dT
dGF0ZURpZENoYW5nZSBvdXQgb2Ygdmlld1N0YXRlRGlkQ2hhbmdlLgorICAgICAgICBSZXF1ZXN0
IGEgcmVwbHkgZnJvbSBTZXRJc0luV2luZG93IGlmIHdlJ3JlIHRvbGQgdG8uCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6IEFkZCBXYW50c1JlcGx5IGFuZCB2aWV3SW5XaW5k
b3dTdGF0ZURpZENoYW5nZS4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmRpZFVwZGF0ZUluV2luZG93U3RhdGVUaW1l
ckZpcmVkKToKKyAgICAgICAgRG9uJ3QgYnVpbGQgdGhpcyB2ZXJzaW9uIG9uIE1hYywgd2UnbGwg
aGF2ZSBhIFdlYlBhZ2VNYWMgdmVyc2lvbi4KKworICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpz
ZXRJc0luV2luZG93KToKKyAgICAgICAgT25seSBzdGFydCB0aGUgdGltZXIgdG8gc2VuZCB0aGUg
ZGlkVXBkYXRlSW5XaW5kb3dTdGF0ZSByZXBseSBpZiB3ZSdyZSBhc2tlZCB0by4KKworICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW46CisgICAgICAgIEFkZCBhbiBhcmd1bWVudCB0byB0
aGUgU2V0SXNJbldpbmRvdyBtZXNzYWdlIGZvciB3aGV0aGVyIHRoZSBXZWJQcm9jZXNzCisgICAg
ICAgIHNob3VsZCBpbmZvcm0gdGhlIFVJUHJvY2VzcyB3aGVuIFNldElzSW5XaW5kb3cgY29tcGxl
dGVzIG9yIG5vdC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1h
Yy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZGlkVXBkYXRlSW5XaW5kb3dTdGF0ZVRp
bWVyRmlyZWQpOgorICAgICAgICBUZWxsIENBIHRvIGZsdXNoIHRoZSBpbXBsaWNpdCB0cmFuc2Fj
dGlvbiBiZWZvcmUgdGVsbGluZyB0aGUgVUlQcm9jZXNzIHRoYXQKKyAgICAgICAgd2UncmUgZmlu
aXNoZWQgbW92aW5nIGluLXdpbmRvdy4KKwogMjAxMy0wNy0yOSAgU2VyZ2lvIENvcnJlaWEgIDxz
ZXJnaW8uY29ycmVpYUBvcGVuYm9zc2Eub3JnPgogCiAgICAgICAgIENvb3JkaW5hdGVkR3JhcGhp
Y3M6IEFkZCBBUEkgdG8gZ2V0IGFuZCBzZXQgdGhlIGFjdGl2ZSBzdGF0ZSBvZiBhIFdlYlZpZXcK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbSBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQppbmRleCA3ZjBmM2Y3
Li5kZTg2NGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9X
S1ZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1t
CkBAIC0zMzE2LDcgKzMzMTYsNyBAQCBzdGF0aWMgTlNTdHJpbmcgKnBhdGhXaXRoVW5pcXVlRmls
ZW5hbWVGb3JQYXRoKE5TU3RyaW5nICpwYXRoKQogICAgIF9kYXRhLT5fc2hvdWxkRGVmZXJWaWV3
SW5XaW5kb3dDaGFuZ2VzID0gTk87CiAKICAgICBpZiAoX2RhdGEtPl92aWV3SW5XaW5kb3dDaGFu
Z2VXYXNEZWZlcnJlZCkgewotICAgICAgICBfZGF0YS0+X3BhZ2UtPnZpZXdTdGF0ZURpZENoYW5n
ZShXZWJQYWdlUHJveHk6OlZpZXdJc0luV2luZG93KTsKKyAgICAgICAgX2RhdGEtPl9wYWdlLT52
aWV3SW5XaW5kb3dTdGF0ZURpZENoYW5nZSgpOwogICAgICAgICBfZGF0YS0+X3ZpZXdJbldpbmRv
d0NoYW5nZVdhc0RlZmVycmVkID0gTk87CiAgICAgfQogfQpAQCAtMzMzMSw3ICszMzMxLDEyIEBA
IHN0YXRpYyBOU1N0cmluZyAqcGF0aFdpdGhVbmlxdWVGaWxlbmFtZUZvclBhdGgoTlNTdHJpbmcg
KnBhdGgpCiAgICAgUGFnZUNsaWVudCogcGFnZUNsaWVudCA9IF9kYXRhLT5fcGFnZUNsaWVudC5n
ZXQoKTsKICAgICBib29sIGhhc1BlbmRpbmdWaWV3SW5XaW5kb3dDaGFuZ2UgPSBfZGF0YS0+X3Zp
ZXdJbldpbmRvd0NoYW5nZVdhc0RlZmVycmVkICYmIF9kYXRhLT5fcGFnZS0+aXNJbldpbmRvdygp
ICE9IHBhZ2VDbGllbnQtPmlzVmlld0luV2luZG93KCk7CiAKLSAgICBbc2VsZiBlbmREZWZlcnJp
bmdWaWV3SW5XaW5kb3dDaGFuZ2VzXTsKKyAgICBfZGF0YS0+X3Nob3VsZERlZmVyVmlld0luV2lu
ZG93Q2hhbmdlcyA9IE5POworCisgICAgaWYgKF9kYXRhLT5fdmlld0luV2luZG93Q2hhbmdlV2Fz
RGVmZXJyZWQpIHsKKyAgICAgICAgX2RhdGEtPl9wYWdlLT52aWV3SW5XaW5kb3dTdGF0ZURpZENo
YW5nZShoYXNQZW5kaW5nVmlld0luV2luZG93Q2hhbmdlID8gV2ViUGFnZVByb3h5OjpXYW50c1Jl
cGx5OjpEb2VzV2FudFJlcGx5IDogV2ViUGFnZVByb3h5OjpXYW50c1JlcGx5OjpEb2VzTm90V2Fu
dFJlcGx5KTsKKyAgICAgICAgX2RhdGEtPl92aWV3SW5XaW5kb3dDaGFuZ2VXYXNEZWZlcnJlZCA9
IE5POworICAgIH0KIAogICAgIGlmIChoYXNQZW5kaW5nVmlld0luV2luZG93Q2hhbmdlKQogICAg
ICAgICBfZGF0YS0+X3BhZ2UtPndhaXRGb3JEaWRVcGRhdGVJbldpbmRvd1N0YXRlKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDFiMmFkNDMuLmJkMTRl
NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC0xMDQw
LDYgKzEwNDAsMjYgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnNjcm9sbFZpZXcoY29uc3QgSW50UmVj
dCYgc2Nyb2xsUmVjdCwgY29uc3QgSW50U2l6ZSYgc2Nyb2xsT2YKICAgICBtX3BhZ2VDbGllbnQt
PnNjcm9sbFZpZXcoc2Nyb2xsUmVjdCwgc2Nyb2xsT2Zmc2V0KTsKIH0KIAordm9pZCBXZWJQYWdl
UHJveHk6OnZpZXdJbldpbmRvd1N0YXRlRGlkQ2hhbmdlKFdhbnRzUmVwbHkgd2FudHNSZXBseSkK
K3sKKyAgICBpZiAoIWlzVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgYm9vbCBpc0lu
V2luZG93ID0gbV9wYWdlQ2xpZW50LT5pc1ZpZXdJbldpbmRvdygpOworICAgIGlmIChtX2lzSW5X
aW5kb3cgIT0gaXNJbldpbmRvdykgeworICAgICAgICBtX2lzSW5XaW5kb3cgPSBpc0luV2luZG93
OworICAgICAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldElzSW5XaW5k
b3coaXNJbldpbmRvdywgd2FudHNSZXBseSA9PSBXYW50c1JlcGx5OjpEb2VzV2FudFJlcGx5KSwg
bV9wYWdlSUQpOworICAgIH0KKworICAgIGlmIChpc0luV2luZG93KSB7CisgICAgICAgIExheWVy
SG9zdGluZ01vZGUgbGF5ZXJIb3N0aW5nTW9kZSA9IG1fcGFnZUNsaWVudC0+dmlld0xheWVySG9z
dGluZ01vZGUoKTsKKyAgICAgICAgaWYgKG1fbGF5ZXJIb3N0aW5nTW9kZSAhPSBsYXllckhvc3Rp
bmdNb2RlKSB7CisgICAgICAgICAgICBtX2xheWVySG9zdGluZ01vZGUgPSBsYXllckhvc3RpbmdN
b2RlOworICAgICAgICAgICAgbV9kcmF3aW5nQXJlYS0+bGF5ZXJIb3N0aW5nTW9kZURpZENoYW5n
ZSgpOworICAgICAgICB9CisgICAgfQorfQorCiB2b2lkIFdlYlBhZ2VQcm94eTo6dmlld1N0YXRl
RGlkQ2hhbmdlKFZpZXdTdGF0ZUZsYWdzIGZsYWdzKQogewogICAgIGlmICghaXNWYWxpZCgpKQpA
QCAtMTA3MiwyMSArMTA5Miw4IEBAIHZvaWQgV2ViUGFnZVByb3h5Ojp2aWV3U3RhdGVEaWRDaGFu
Z2UoVmlld1N0YXRlRmxhZ3MgZmxhZ3MpCiAgICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAoZmxh
Z3MgJiBWaWV3SXNJbldpbmRvdykgewotICAgICAgICBib29sIGlzSW5XaW5kb3cgPSBtX3BhZ2VD
bGllbnQtPmlzVmlld0luV2luZG93KCk7Ci0gICAgICAgIGlmIChtX2lzSW5XaW5kb3cgIT0gaXNJ
bldpbmRvdykgewotICAgICAgICAgICAgbV9pc0luV2luZG93ID0gaXNJbldpbmRvdzsKLSAgICAg
ICAgICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0SXNJbldpbmRvdyhp
c0luV2luZG93KSwgbV9wYWdlSUQpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKGlzSW5XaW5k
b3cpIHsKLSAgICAgICAgICAgIExheWVySG9zdGluZ01vZGUgbGF5ZXJIb3N0aW5nTW9kZSA9IG1f
cGFnZUNsaWVudC0+dmlld0xheWVySG9zdGluZ01vZGUoKTsKLSAgICAgICAgICAgIGlmIChtX2xh
eWVySG9zdGluZ01vZGUgIT0gbGF5ZXJIb3N0aW5nTW9kZSkgewotICAgICAgICAgICAgICAgIG1f
bGF5ZXJIb3N0aW5nTW9kZSA9IGxheWVySG9zdGluZ01vZGU7Ci0gICAgICAgICAgICAgICAgbV9k
cmF3aW5nQXJlYS0+bGF5ZXJIb3N0aW5nTW9kZURpZENoYW5nZSgpOwotICAgICAgICAgICAgfQot
ICAgICAgICB9Ci0gICAgfQorICAgIGlmIChmbGFncyAmIFZpZXdJc0luV2luZG93KQorICAgICAg
ICB2aWV3SW5XaW5kb3dTdGF0ZURpZENoYW5nZSgpOwogCiAjaWYgRU5BQkxFKFBBR0VfVklTSUJJ
TElUWV9BUEkpCiAgICAgUGFnZVZpc2liaWxpdHlTdGF0ZSB2aXNpYmlsaXR5U3RhdGUgPSBQYWdl
VmlzaWJpbGl0eVN0YXRlSGlkZGVuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5oCmluZGV4IDRkZjNkMmQuLmI4NTJjNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmgKQEAgLTM0Myw2ICszNDMsOCBAQCBwdWJsaWM6CiAgICAgfTsKICAgICB0eXBl
ZGVmIHVuc2lnbmVkIFZpZXdTdGF0ZUZsYWdzOwogICAgIHZvaWQgdmlld1N0YXRlRGlkQ2hhbmdl
KFZpZXdTdGF0ZUZsYWdzIGZsYWdzKTsKKyAgICBlbnVtIGNsYXNzIFdhbnRzUmVwbHkgeyBEb2Vz
Tm90V2FudFJlcGx5LCBEb2VzV2FudFJlcGx5IH07CisgICAgdm9pZCB2aWV3SW5XaW5kb3dTdGF0
ZURpZENoYW5nZShXYW50c1JlcGx5ID0gV2FudHNSZXBseTo6RG9lc05vdFdhbnRSZXBseSk7CiAg
ICAgYm9vbCBpc0luV2luZG93KCkgY29uc3QgeyByZXR1cm4gbV9pc0luV2luZG93OyB9CiAgICAg
dm9pZCB3YWl0Rm9yRGlkVXBkYXRlSW5XaW5kb3dTdGF0ZSgpOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggM2M3YzA3NC4uZjZmNGM2NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAt
MjEyOCwxMCArMjEyOCwxMiBAQCB2b2lkIFdlYlBhZ2U6OnNldENhblN0YXJ0TWVkaWFUaW1lckZp
cmVkKCkKICAgICAgICAgbV9wYWdlLT5zZXRDYW5TdGFydE1lZGlhKHRydWUpOwogfQogCisjaWYg
IVBMQVRGT1JNKE1BQykKIHZvaWQgV2ViUGFnZTo6ZGlkVXBkYXRlSW5XaW5kb3dTdGF0ZVRpbWVy
RmlyZWQoKQogewogICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkVXBkYXRlSW5X
aW5kb3dTdGF0ZSgpKTsKIH0KKyNlbmRpZgogCiBpbmxpbmUgYm9vbCBXZWJQYWdlOjpjYW5IYW5k
bGVVc2VyRXZlbnRzKCkgY29uc3QKIHsKQEAgLTIxNDIsNyArMjE0NCw3IEBAIGlubGluZSBib29s
IFdlYlBhZ2U6OmNhbkhhbmRsZVVzZXJFdmVudHMoKSBjb25zdAogICAgIHJldHVybiB0cnVlOwog
fQogCi12b2lkIFdlYlBhZ2U6OnNldElzSW5XaW5kb3coYm9vbCBpc0luV2luZG93KQordm9pZCBX
ZWJQYWdlOjpzZXRJc0luV2luZG93KGJvb2wgaXNJbldpbmRvdywgYm9vbCB3YW50c0RpZFVwZGF0
ZVZpZXdJbldpbmRvd1N0YXRlKQogewogICAgIGJvb2wgcGFnZVdhc0luV2luZG93ID0gbV9wYWdl
LT5pc0luV2luZG93KCk7CiAgICAgCkBAIC0yMTY3LDcgKzIxNjksOSBAQCB2b2lkIFdlYlBhZ2U6
OnNldElzSW5XaW5kb3coYm9vbCBpc0luV2luZG93KQogICAgIH0KIAogICAgIG1fcGFnZS0+c2V0
SXNJbldpbmRvdyhpc0luV2luZG93KTsKLSAgICBtX3NlbmREaWRVcGRhdGVJbldpbmRvd1N0YXRl
VGltZXIuc3RhcnRPbmVTaG90KDApOworCisgICAgaWYgKHdhbnRzRGlkVXBkYXRlVmlld0luV2lu
ZG93U3RhdGUpCisgICAgICAgIG1fc2VuZERpZFVwZGF0ZUluV2luZG93U3RhdGVUaW1lci5zdGFy
dE9uZVNob3QoMCk7CiB9CiAKIHZvaWQgV2ViUGFnZTo6ZGlkUmVjZWl2ZVBvbGljeURlY2lzaW9u
KHVpbnQ2NF90IGZyYW1lSUQsIHVpbnQ2NF90IGxpc3RlbmVySUQsIHVpbnQzMl90IHBvbGljeUFj
dGlvbiwgdWludDY0X3QgZG93bmxvYWRJRCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCmluZGV4IDdjNDBmYWQuLjZhZjY5ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtNzExLDcgKzcxMSw3IEBAIHByaXZh
dGU6CiAgICAgdm9pZCBzZXRGb2N1c2VkKGJvb2wpOwogICAgIHZvaWQgc2V0SW5pdGlhbEZvY3Vz
KGJvb2wgZm9yd2FyZCwgYm9vbCBpc0tleWJvYXJkRXZlbnRWYWxpZCwgY29uc3QgV2ViS2V5Ym9h
cmRFdmVudCYpOwogICAgIHZvaWQgc2V0V2luZG93UmVzaXplclNpemUoY29uc3QgV2ViQ29yZTo6
SW50U2l6ZSYpOwotICAgIHZvaWQgc2V0SXNJbldpbmRvdyhib29sKTsKKyAgICB2b2lkIHNldElz
SW5XaW5kb3coYm9vbCBpc0luV2luZG93LCBib29sIHdhbnRzRGlkVXBkYXRlVmlld0luV2luZG93
U3RhdGUgPSBmYWxzZSk7CiAgICAgdm9pZCB2YWxpZGF0ZUNvbW1hbmQoY29uc3QgU3RyaW5nJiwg
dWludDY0X3QpOwogICAgIHZvaWQgZXhlY3V0ZUVkaXRDb21tYW5kKGNvbnN0IFN0cmluZyYpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5t
ZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1l
c3NhZ2VzLmluCmluZGV4IDJhMDFhNDQuLjA3NGZkNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCkBAIC0yNCw3ICsy
NCw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2UgTGVnYWN5UmVjZWl2ZXIgewogICAgIFNldEFjdGl2
ZShib29sIGFjdGl2ZSkKICAgICBTZXRGb2N1c2VkKGJvb2wgZm9jdXNlZCkKICAgICBTZXRJbml0
aWFsRm9jdXMoYm9vbCBmb3J3YXJkLCBib29sIGlzS2V5Ym9hcmRFdmVudFZhbGlkLCBXZWJLaXQ6
OldlYktleWJvYXJkRXZlbnQgZXZlbnQpCi0gICAgU2V0SXNJbldpbmRvdyhib29sIGlzSW5XaW5k
b3cpCisgICAgU2V0SXNJbldpbmRvdyhib29sIGlzSW5XaW5kb3csIGJvb2wgd2FudHNEaWRVcGRh
dGVWaWV3SW5XaW5kb3dTdGF0ZSkKIAogICAgIFNldERyYXdzQmFja2dyb3VuZChib29sIGRyYXdz
QmFja2dyb3VuZCkKICAgICBTZXREcmF3c1RyYW5zcGFyZW50QmFja2dyb3VuZChib29sIGRyYXdz
VHJhbnNwYXJlbnRCYWNrZ3JvdW5kKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tCmluZGV4IDZkOTE0YWMuLjZjNmE3ZTcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMu
bW0KQEAgLTk3Miw0ICs5NzIsMTAgQEAgdm9pZCBXZWJQYWdlOjpkcmF3UGFnZXNUb1BERkZyb21Q
REZEb2N1bWVudChDR0NvbnRleHRSZWYgY29udGV4dCwgUERGRG9jdW1lbnQgKnAKICAgICB9CiB9
CiAKK3ZvaWQgV2ViUGFnZTo6ZGlkVXBkYXRlSW5XaW5kb3dTdGF0ZVRpbWVyRmlyZWQoKQorewor
ICAgIFtDQVRyYW5zYWN0aW9uIGZsdXNoXTsKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkRpZFVwZGF0ZUluV2luZG93U3RhdGUoKSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktp
dAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>207675</attachid>
            <date>2013-07-29 15:44:40 -0700</date>
            <delta_ts>2013-07-29 21:10:47 -0700</delta_ts>
            <desc>patch</desc>
            <filename>fix-flash-ml.diff</filename>
            <type>text/plain</type>
            <size>9504</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA2MzJmOGUwLi41NDY5M2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDYg
QEAKKzIwMTMtMDctMjkgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgW3drMl0gRmx1c2ggdGhlIFdlYlByb2Nlc3PigJkgaW1wbGljaXQgdHJhbnNhY3Rp
b24gd2hlbiB1c2luZyBlbmREZWZlcnJpbmdWaWV3SW5XaW5kb3dDaGFuZ2VzU3luYworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5MjI1CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS8xNDU2ODg0MT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZWxsIENvcmVBbmltYXRpb24gdG8gZmx1c2ggdGhlIGltcGxp
Y2l0IHRyYW5zYWN0aW9uIGJlZm9yZSByZXBseWluZworICAgICAgICB3aGVuIHVzaW5nIGVuZERl
ZmVycmluZ1ZpZXdJbldpbmRvd0NoYW5nZXNTeW5jLCBhcyB0aGF0IG1ldGhvZCdzIGNvbnRyYWN0
CisgICAgICAgIGlzIHRoYXQgdGhlIFdlYlByb2Nlc3MgaXMgdG90YWxseSByZWFkeSB0byBiZSBp
bi13aW5kb3cgd2hlbiBpdCByZXR1cm5zLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9tYWMv
V0tWaWV3Lm1tOgorICAgICAgICAoLVtXS1ZpZXcgZW5kRGVmZXJyaW5nVmlld0luV2luZG93Q2hh
bmdlc10pOgorICAgICAgICBBZG9wdCB2aWV3SW5XaW5kb3dTdGF0ZURpZENoYW5nZS4KKworICAg
ICAgICAoLVtXS1ZpZXcgZW5kRGVmZXJyaW5nVmlld0luV2luZG93Q2hhbmdlc1N5bmNdKToKKyAg
ICAgICAgQWRvcHQgdmlld0luV2luZG93U3RhdGVEaWRDaGFuZ2UsIGFza2luZyBpdCB0byBzZW5k
IGEgcmVwbHkgb25seSBpZiB3ZSdyZSBnb2luZyB0byB3YWl0IGZvciBvbmUuCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVBy
b3h5Ojp2aWV3SW5XaW5kb3dTdGF0ZURpZENoYW5nZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2VQcm94eTo6dmlld1N0YXRlRGlkQ2hhbmdlKToKKyAgICAgICAgUHVsbCB2aWV3SW5XaW5kb3dT
dGF0ZURpZENoYW5nZSBvdXQgb2Ygdmlld1N0YXRlRGlkQ2hhbmdlLgorICAgICAgICBSZXF1ZXN0
IGEgcmVwbHkgZnJvbSBTZXRJc0luV2luZG93IGlmIHdlJ3JlIHRvbGQgdG8uCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6IEFkZCBXYW50c1JlcGx5T3JOb3QgYW5kIHZpZXdJ
bldpbmRvd1N0YXRlRGlkQ2hhbmdlLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZGlkVXBkYXRlSW5XaW5kb3dTdGF0
ZVRpbWVyRmlyZWQpOgorICAgICAgICBEb24ndCBidWlsZCB0aGlzIHZlcnNpb24gb24gTWFjLCB3
ZSdsbCBoYXZlIGEgV2ViUGFnZU1hYyB2ZXJzaW9uLgorCisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2U6OnNldElzSW5XaW5kb3cpOgorICAgICAgICBPbmx5IHN0YXJ0IHRoZSB0aW1lciB0byBzZW5k
IHRoZSBkaWRVcGRhdGVJbldpbmRvd1N0YXRlIHJlcGx5IGlmIHdlJ3JlIGFza2VkIHRvLgorCisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKKyAgICAgICAgQWRkIGFuIGFyZ3VtZW50
IHRvIHRoZSBTZXRJc0luV2luZG93IG1lc3NhZ2UgZm9yIHdoZXRoZXIgdGhlIFdlYlByb2Nlc3MK
KyAgICAgICAgc2hvdWxkIGluZm9ybSB0aGUgVUlQcm9jZXNzIHdoZW4gU2V0SXNJbldpbmRvdyBj
b21wbGV0ZXMgb3Igbm90LgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQ
YWdlTWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpkaWRVcGRhdGVJbldpbmRvd1N0
YXRlVGltZXJGaXJlZCk6CisgICAgICAgIFRlbGwgQ0EgdG8gZmx1c2ggdGhlIGltcGxpY2l0IHRy
YW5zYWN0aW9uIGJlZm9yZSB0ZWxsaW5nIHRoZSBVSVByb2Nlc3MgdGhhdAorICAgICAgICB3ZSdy
ZSBmaW5pc2hlZCBtb3ZpbmcgaW4td2luZG93LgorCiAyMDEzLTA3LTI5ICBTZXJnaW8gQ29ycmVp
YSAgPHNlcmdpby5jb3JyZWlhQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgQ29vcmRpbmF0ZWRH
cmFwaGljczogQWRkIEFQSSB0byBnZXQgYW5kIHNldCB0aGUgYWN0aXZlIHN0YXRlIG9mIGEgV2Vi
VmlldwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3
Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tCmluZGV4IDdm
MGYzZjcuLjljZjJkY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
bWFjL1dLVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1Zp
ZXcubW0KQEAgLTMzMTYsNyArMzMxNiw3IEBAIHN0YXRpYyBOU1N0cmluZyAqcGF0aFdpdGhVbmlx
dWVGaWxlbmFtZUZvclBhdGgoTlNTdHJpbmcgKnBhdGgpCiAgICAgX2RhdGEtPl9zaG91bGREZWZl
clZpZXdJbldpbmRvd0NoYW5nZXMgPSBOTzsKIAogICAgIGlmIChfZGF0YS0+X3ZpZXdJbldpbmRv
d0NoYW5nZVdhc0RlZmVycmVkKSB7Ci0gICAgICAgIF9kYXRhLT5fcGFnZS0+dmlld1N0YXRlRGlk
Q2hhbmdlKFdlYlBhZ2VQcm94eTo6Vmlld0lzSW5XaW5kb3cpOworICAgICAgICBfZGF0YS0+X3Bh
Z2UtPnZpZXdJbldpbmRvd1N0YXRlRGlkQ2hhbmdlKCk7CiAgICAgICAgIF9kYXRhLT5fdmlld0lu
V2luZG93Q2hhbmdlV2FzRGVmZXJyZWQgPSBOTzsKICAgICB9CiB9CkBAIC0zMzMxLDcgKzMzMzEs
MTIgQEAgc3RhdGljIE5TU3RyaW5nICpwYXRoV2l0aFVuaXF1ZUZpbGVuYW1lRm9yUGF0aChOU1N0
cmluZyAqcGF0aCkKICAgICBQYWdlQ2xpZW50KiBwYWdlQ2xpZW50ID0gX2RhdGEtPl9wYWdlQ2xp
ZW50LmdldCgpOwogICAgIGJvb2wgaGFzUGVuZGluZ1ZpZXdJbldpbmRvd0NoYW5nZSA9IF9kYXRh
LT5fdmlld0luV2luZG93Q2hhbmdlV2FzRGVmZXJyZWQgJiYgX2RhdGEtPl9wYWdlLT5pc0luV2lu
ZG93KCkgIT0gcGFnZUNsaWVudC0+aXNWaWV3SW5XaW5kb3coKTsKIAotICAgIFtzZWxmIGVuZERl
ZmVycmluZ1ZpZXdJbldpbmRvd0NoYW5nZXNdOworICAgIF9kYXRhLT5fc2hvdWxkRGVmZXJWaWV3
SW5XaW5kb3dDaGFuZ2VzID0gTk87CisKKyAgICBpZiAoX2RhdGEtPl92aWV3SW5XaW5kb3dDaGFu
Z2VXYXNEZWZlcnJlZCkgeworICAgICAgICBfZGF0YS0+X3BhZ2UtPnZpZXdJbldpbmRvd1N0YXRl
RGlkQ2hhbmdlKGhhc1BlbmRpbmdWaWV3SW5XaW5kb3dDaGFuZ2UgPyBXZWJQYWdlUHJveHk6Oldh
bnRzUmVwbHlPck5vdDo6RG9lc1dhbnRSZXBseSA6IFdlYlBhZ2VQcm94eTo6V2FudHNSZXBseU9y
Tm90OjpEb2VzTm90V2FudFJlcGx5KTsKKyAgICAgICAgX2RhdGEtPl92aWV3SW5XaW5kb3dDaGFu
Z2VXYXNEZWZlcnJlZCA9IE5POworICAgIH0KIAogICAgIGlmIChoYXNQZW5kaW5nVmlld0luV2lu
ZG93Q2hhbmdlKQogICAgICAgICBfZGF0YS0+X3BhZ2UtPndhaXRGb3JEaWRVcGRhdGVJbldpbmRv
d1N0YXRlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4
IDFiMmFkNDMuLjM5NzI2NTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwCkBAIC0xMDQwLDYgKzEwNDAsMjYgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnNjcm9sbFZp
ZXcoY29uc3QgSW50UmVjdCYgc2Nyb2xsUmVjdCwgY29uc3QgSW50U2l6ZSYgc2Nyb2xsT2YKICAg
ICBtX3BhZ2VDbGllbnQtPnNjcm9sbFZpZXcoc2Nyb2xsUmVjdCwgc2Nyb2xsT2Zmc2V0KTsKIH0K
IAordm9pZCBXZWJQYWdlUHJveHk6OnZpZXdJbldpbmRvd1N0YXRlRGlkQ2hhbmdlKFdhbnRzUmVw
bHlPck5vdCB3YW50c1JlcGx5KQoreworICAgIGlmICghaXNWYWxpZCgpKQorICAgICAgICByZXR1
cm47CisKKyAgICBib29sIGlzSW5XaW5kb3cgPSBtX3BhZ2VDbGllbnQtPmlzVmlld0luV2luZG93
KCk7CisgICAgaWYgKG1faXNJbldpbmRvdyAhPSBpc0luV2luZG93KSB7CisgICAgICAgIG1faXNJ
bldpbmRvdyA9IGlzSW5XaW5kb3c7CisgICAgICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6
V2ViUGFnZTo6U2V0SXNJbldpbmRvdyhpc0luV2luZG93LCB3YW50c1JlcGx5ID09IFdhbnRzUmVw
bHlPck5vdDo6RG9lc1dhbnRSZXBseSksIG1fcGFnZUlEKTsKKyAgICB9CisKKyAgICBpZiAoaXNJ
bldpbmRvdykgeworICAgICAgICBMYXllckhvc3RpbmdNb2RlIGxheWVySG9zdGluZ01vZGUgPSBt
X3BhZ2VDbGllbnQtPnZpZXdMYXllckhvc3RpbmdNb2RlKCk7CisgICAgICAgIGlmIChtX2xheWVy
SG9zdGluZ01vZGUgIT0gbGF5ZXJIb3N0aW5nTW9kZSkgeworICAgICAgICAgICAgbV9sYXllckhv
c3RpbmdNb2RlID0gbGF5ZXJIb3N0aW5nTW9kZTsKKyAgICAgICAgICAgIG1fZHJhd2luZ0FyZWEt
PmxheWVySG9zdGluZ01vZGVEaWRDaGFuZ2UoKTsKKyAgICAgICAgfQorICAgIH0KK30KKwogdm9p
ZCBXZWJQYWdlUHJveHk6OnZpZXdTdGF0ZURpZENoYW5nZShWaWV3U3RhdGVGbGFncyBmbGFncykK
IHsKICAgICBpZiAoIWlzVmFsaWQoKSkKQEAgLTEwNzIsMjEgKzEwOTIsOCBAQCB2b2lkIFdlYlBh
Z2VQcm94eTo6dmlld1N0YXRlRGlkQ2hhbmdlKFZpZXdTdGF0ZUZsYWdzIGZsYWdzKQogICAgICAg
ICB9CiAgICAgfQogCi0gICAgaWYgKGZsYWdzICYgVmlld0lzSW5XaW5kb3cpIHsKLSAgICAgICAg
Ym9vbCBpc0luV2luZG93ID0gbV9wYWdlQ2xpZW50LT5pc1ZpZXdJbldpbmRvdygpOwotICAgICAg
ICBpZiAobV9pc0luV2luZG93ICE9IGlzSW5XaW5kb3cpIHsKLSAgICAgICAgICAgIG1faXNJbldp
bmRvdyA9IGlzSW5XaW5kb3c7Ci0gICAgICAgICAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2U6OlNldElzSW5XaW5kb3coaXNJbldpbmRvdyksIG1fcGFnZUlEKTsKLSAgICAgICAg
fQotCi0gICAgICAgIGlmIChpc0luV2luZG93KSB7Ci0gICAgICAgICAgICBMYXllckhvc3RpbmdN
b2RlIGxheWVySG9zdGluZ01vZGUgPSBtX3BhZ2VDbGllbnQtPnZpZXdMYXllckhvc3RpbmdNb2Rl
KCk7Ci0gICAgICAgICAgICBpZiAobV9sYXllckhvc3RpbmdNb2RlICE9IGxheWVySG9zdGluZ01v
ZGUpIHsKLSAgICAgICAgICAgICAgICBtX2xheWVySG9zdGluZ01vZGUgPSBsYXllckhvc3RpbmdN
b2RlOwotICAgICAgICAgICAgICAgIG1fZHJhd2luZ0FyZWEtPmxheWVySG9zdGluZ01vZGVEaWRD
aGFuZ2UoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KKyAgICBpZiAoZmxhZ3Mg
JiBWaWV3SXNJbldpbmRvdykKKyAgICAgICAgdmlld0luV2luZG93U3RhdGVEaWRDaGFuZ2UoKTsK
IAogI2lmIEVOQUJMRShQQUdFX1ZJU0lCSUxJVFlfQVBJKQogICAgIFBhZ2VWaXNpYmlsaXR5U3Rh
dGUgdmlzaWJpbGl0eVN0YXRlID0gUGFnZVZpc2liaWxpdHlTdGF0ZUhpZGRlbjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCA0ZGYzZDJkLi42ZGI4ZDA4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC0zNDMsNiArMzQzLDggQEAg
cHVibGljOgogICAgIH07CiAgICAgdHlwZWRlZiB1bnNpZ25lZCBWaWV3U3RhdGVGbGFnczsKICAg
ICB2b2lkIHZpZXdTdGF0ZURpZENoYW5nZShWaWV3U3RhdGVGbGFncyBmbGFncyk7CisgICAgZW51
bSBjbGFzcyBXYW50c1JlcGx5T3JOb3QgeyBEb2VzTm90V2FudFJlcGx5LCBEb2VzV2FudFJlcGx5
IH07CisgICAgdm9pZCB2aWV3SW5XaW5kb3dTdGF0ZURpZENoYW5nZShXYW50c1JlcGx5T3JOb3Qg
PSBXYW50c1JlcGx5T3JOb3Q6OkRvZXNOb3RXYW50UmVwbHkpOwogICAgIGJvb2wgaXNJbldpbmRv
dygpIGNvbnN0IHsgcmV0dXJuIG1faXNJbldpbmRvdzsgfQogICAgIHZvaWQgd2FpdEZvckRpZFVw
ZGF0ZUluV2luZG93U3RhdGUoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCmluZGV4IDNjN2MwNzQuLmY2ZjRjNjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTIxMjgsMTAgKzIxMjgsMTIg
QEAgdm9pZCBXZWJQYWdlOjpzZXRDYW5TdGFydE1lZGlhVGltZXJGaXJlZCgpCiAgICAgICAgIG1f
cGFnZS0+c2V0Q2FuU3RhcnRNZWRpYSh0cnVlKTsKIH0KIAorI2lmICFQTEFURk9STShNQUMpCiB2
b2lkIFdlYlBhZ2U6OmRpZFVwZGF0ZUluV2luZG93U3RhdGVUaW1lckZpcmVkKCkKIHsKICAgICBz
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZFVwZGF0ZUluV2luZG93U3RhdGUoKSk7CiB9
CisjZW5kaWYKIAogaW5saW5lIGJvb2wgV2ViUGFnZTo6Y2FuSGFuZGxlVXNlckV2ZW50cygpIGNv
bnN0CiB7CkBAIC0yMTQyLDcgKzIxNDQsNyBAQCBpbmxpbmUgYm9vbCBXZWJQYWdlOjpjYW5IYW5k
bGVVc2VyRXZlbnRzKCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJQYWdl
OjpzZXRJc0luV2luZG93KGJvb2wgaXNJbldpbmRvdykKK3ZvaWQgV2ViUGFnZTo6c2V0SXNJbldp
bmRvdyhib29sIGlzSW5XaW5kb3csIGJvb2wgd2FudHNEaWRVcGRhdGVWaWV3SW5XaW5kb3dTdGF0
ZSkKIHsKICAgICBib29sIHBhZ2VXYXNJbldpbmRvdyA9IG1fcGFnZS0+aXNJbldpbmRvdygpOwog
ICAgIApAQCAtMjE2Nyw3ICsyMTY5LDkgQEAgdm9pZCBXZWJQYWdlOjpzZXRJc0luV2luZG93KGJv
b2wgaXNJbldpbmRvdykKICAgICB9CiAKICAgICBtX3BhZ2UtPnNldElzSW5XaW5kb3coaXNJbldp
bmRvdyk7Ci0gICAgbV9zZW5kRGlkVXBkYXRlSW5XaW5kb3dTdGF0ZVRpbWVyLnN0YXJ0T25lU2hv
dCgwKTsKKworICAgIGlmICh3YW50c0RpZFVwZGF0ZVZpZXdJbldpbmRvd1N0YXRlKQorICAgICAg
ICBtX3NlbmREaWRVcGRhdGVJbldpbmRvd1N0YXRlVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQog
CiB2b2lkIFdlYlBhZ2U6OmRpZFJlY2VpdmVQb2xpY3lEZWNpc2lvbih1aW50NjRfdCBmcmFtZUlE
LCB1aW50NjRfdCBsaXN0ZW5lcklELCB1aW50MzJfdCBwb2xpY3lBY3Rpb24sIHVpbnQ2NF90IGRv
d25sb2FkSUQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApp
bmRleCA3YzQwZmFkLi42YWY2OWYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmgKQEAgLTcxMSw3ICs3MTEsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgc2V0
Rm9jdXNlZChib29sKTsKICAgICB2b2lkIHNldEluaXRpYWxGb2N1cyhib29sIGZvcndhcmQsIGJv
b2wgaXNLZXlib2FyZEV2ZW50VmFsaWQsIGNvbnN0IFdlYktleWJvYXJkRXZlbnQmKTsKICAgICB2
b2lkIHNldFdpbmRvd1Jlc2l6ZXJTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmKTsKLSAgICB2
b2lkIHNldElzSW5XaW5kb3coYm9vbCk7CisgICAgdm9pZCBzZXRJc0luV2luZG93KGJvb2wgaXNJ
bldpbmRvdywgYm9vbCB3YW50c0RpZFVwZGF0ZVZpZXdJbldpbmRvd1N0YXRlID0gZmFsc2UpOwog
ICAgIHZvaWQgdmFsaWRhdGVDb21tYW5kKGNvbnN0IFN0cmluZyYsIHVpbnQ2NF90KTsKICAgICB2
b2lkIGV4ZWN1dGVFZGl0Q29tbWFuZChjb25zdCBTdHJpbmcmKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4gYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgppbmRleCAy
YTAxYTQ0Li4wNzRmZDZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgpAQCAtMjQsNyArMjQsNyBAQCBtZXNzYWdlcyAt
PiBXZWJQYWdlIExlZ2FjeVJlY2VpdmVyIHsKICAgICBTZXRBY3RpdmUoYm9vbCBhY3RpdmUpCiAg
ICAgU2V0Rm9jdXNlZChib29sIGZvY3VzZWQpCiAgICAgU2V0SW5pdGlhbEZvY3VzKGJvb2wgZm9y
d2FyZCwgYm9vbCBpc0tleWJvYXJkRXZlbnRWYWxpZCwgV2ViS2l0OjpXZWJLZXlib2FyZEV2ZW50
IGV2ZW50KQotICAgIFNldElzSW5XaW5kb3coYm9vbCBpc0luV2luZG93KQorICAgIFNldElzSW5X
aW5kb3coYm9vbCBpc0luV2luZG93LCBib29sIHdhbnRzRGlkVXBkYXRlVmlld0luV2luZG93U3Rh
dGUpCiAKICAgICBTZXREcmF3c0JhY2tncm91bmQoYm9vbCBkcmF3c0JhY2tncm91bmQpCiAgICAg
U2V0RHJhd3NUcmFuc3BhcmVudEJhY2tncm91bmQoYm9vbCBkcmF3c1RyYW5zcGFyZW50QmFja2dy
b3VuZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMv
V2ViUGFnZU1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2Vi
UGFnZU1hYy5tbQppbmRleCA2ZDkxNGFjLi42YzZhN2U3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0KKysrIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tCkBAIC05NzIsNCArOTcy
LDEwIEBAIHZvaWQgV2ViUGFnZTo6ZHJhd1BhZ2VzVG9QREZGcm9tUERGRG9jdW1lbnQoQ0dDb250
ZXh0UmVmIGNvbnRleHQsIFBERkRvY3VtZW50ICpwCiAgICAgfQogfQogCit2b2lkIFdlYlBhZ2U6
OmRpZFVwZGF0ZUluV2luZG93U3RhdGVUaW1lckZpcmVkKCkKK3sKKyAgICBbQ0FUcmFuc2FjdGlv
biBmbHVzaF07CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRVcGRhdGVJbldp
bmRvd1N0YXRlKCkpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQK
</data>
<flag name="review"
          id="229474"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>