<?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>116991</bug_id>
          
          <creation_ts>2013-05-29 13:25:03 -0700</creation_ts>
          <short_desc>drawImage: clip source image when source rectangle outside of source image.</short_desc>
          <delta_ts>2024-05-13 14:48:09 -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>Canvas</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=202457</see_also>
          <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="arno.">a.renevier</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>krit</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>895180</commentid>
    <comment_count>0</comment_count>
    <who name="arno.">a.renevier</who>
    <bug_when>2013-05-29 13:25:03 -0700</bug_when>
    <thetext>Hi,
drawImage specification tells:
When the source rectangle is outside the source image, the source rectangle must be clipped to the source image and the destination rectangle must be clipped in the same proportion.[1]
Right now, when that happens, we draw nothing.
Firefox gets it right (at least for HTMLImageElement; for HTMLCanvasElement, there are some strange artifacts)

[1]: http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#dom-context-2d-drawimage</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895181</commentid>
    <comment_count>1</comment_count>
      <attachid>203267</attachid>
    <who name="arno.">a.renevier</who>
    <bug_when>2013-05-29 13:26:37 -0700</bug_when>
    <thetext>Created attachment 203267
testcase: should display a quarter of circle</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895219</commentid>
    <comment_count>2</comment_count>
      <attachid>203279</attachid>
    <who name="arno.">a.renevier</who>
    <bug_when>2013-05-29 14:36:26 -0700</bug_when>
    <thetext>Created attachment 203279
patch proposal

This patches address the issue, and also create a new methode to factorise dimensions checking between the 3 drawImage main methods</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895220</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-29 14:38:24 -0700</bug_when>
    <thetext>Attachment 203279 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/fast/canvas/drawImage-source-rect-outside-image-expected.html&apos;, u&apos;LayoutTests/fast/canvas/drawImage-source-rect-outside-image.html&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp&apos;, u&apos;Source/WebCore/html/canvas/CanvasRenderingContext2D.h&apos;]&quot; exit_code: 1
Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp:1274:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895308</commentid>
    <comment_count>4</comment_count>
      <attachid>203301</attachid>
    <who name="arno.">a.renevier</who>
    <bug_when>2013-05-29 19:34:19 -0700</bug_when>
    <thetext>Created attachment 203301
updated patch: use normalized rect when drawImage video + style issues</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1884915</commentid>
    <comment_count>5</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2022-07-18 15:16:26 -0700</bug_when>
    <thetext>This continues to be a problem in Safari 16.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1884916</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-07-18 15:16:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/97222886&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1885862</commentid>
    <comment_count>7</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2022-07-21 16:05:01 -0700</bug_when>
    <thetext>Pull request: https://github.com/Webkit/WebKit/pull/2640</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1885982</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-07-22 09:28:09 -0700</bug_when>
    <thetext>Committed 252731@main (a31e58979ddb): &lt;https://commits.webkit.org/252731@main&gt;

Reviewed commits have been landed. Closing PR #2640 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2035089</commentid>
    <comment_count>9</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2024-05-13 14:48:09 -0700</bug_when>
    <thetext>Altering the source rectangle is wrong. The fix of this bug was trying to scale the destination rectangle to match the clipped source rectangle.

For the record, I think the approach of fixing this bug was incorrect.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>203267</attachid>
            <date>2013-05-29 13:26:37 -0700</date>
            <delta_ts>2013-05-29 13:26:37 -0700</delta_ts>
            <desc>testcase: should display a quarter of circle</desc>
            <filename>bug116991.html</filename>
            <type>text/html</type>
            <size>617</size>
            <attacher name="arno.">a.renevier</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPC9oZWFkPgo8Ym9keT4KPGNhbnZhcyBpZD0i
Y2FudmFzIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCI+PC9jYW52YXM+CjxzY3JpcHQ+CnZhciBj
YW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CnZhciBjdHggPSBjYW52
YXMuZ2V0Q29udGV4dCgiMmQiKTsKdmFyIHdpZHRoID0gY2FudmFzLndpZHRoOwp2YXIgaGVpZ2h0
ID0gY2FudmFzLmhlaWdodDsKCnZhciBzcmNDYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJjYW52YXMiKTsKc3JjQ2FudmFzLndpZHRoID0gd2lkdGg7CnNyY0NhbnZhcy5oZWlnaHQgPSBo
ZWlnaHQ7CnZhciBzcmNDdHggPSBzcmNDYW52YXMuZ2V0Q29udGV4dCgiMmQiKTsKCnNyY0N0eC5h
cmMod2lkdGggLyAyLCBoZWlnaHQgLyAyLCBNYXRoLm1pbih3aWR0aCAvIDIsIGhlaWdodCAvIDIp
LCAwLCBNYXRoLlBJICogMikKc3JjQ3R4LmZpbGwoKTsKY3R4LmRyYXdJbWFnZShzcmNDYW52YXMs
IAogICAgICAgIHdpZHRoIC8gMiwgaGVpZ2h0IC8gMiwgd2lkdGgsIGhlaWdodCwKICAgICAgICAw
LCAwLCB3aWR0aCwgaGVpZ2h0KTsKPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203279</attachid>
            <date>2013-05-29 14:36:26 -0700</date>
            <delta_ts>2013-05-29 19:34:17 -0700</delta_ts>
            <desc>patch proposal</desc>
            <filename>bug-116991-20130529143502.patch</filename>
            <type>text/plain</type>
            <size>12565</size>
            <attacher name="arno.">a.renevier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwODYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGQyNjlkYjlhYTE1Mzg1
OGVjMzExODU0Y2RhNDMzYjk5NjhjMDkyOC4uMTJiNDg2YmQ3Yzg4ZGRlMGZiNzdlOTA3MDZhM2Q4
NWNmM2M2MmRmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA1LTI5ICBBcm5h
dWQgUmVuZXZpZXIgIDxhLnJlbmV2aWVyQHNpc2Euc2Ftc3VuZy5jb20+CisKKyAgICAgICAgZHJh
d0ltYWdlOiBjbGlwIHNvdXJjZSBpbWFnZSB3aGVuIHNvdXJjZSByZWN0YW5nbGUgb3V0c2lkZSBv
ZiBzb3VyY2UgaW1hZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTY5OTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBBZGQgYSBtZXRob2Qgbm9ybWFsaXplRHJhd2luZ0FyZWEgdG8gbm9ybWFsaXplIHNv
dXJjZSBhbmQgZGVzdGluYXRpb25zCisgICAgICAgIHJlY3RhbmdsZXMsIGRlcGVuZGluZyBvbiBp
bWFnZSByZWN0YW5nbGUuIFRoYXQgbWV0aG9kIGlzIHVzZWQgdG8KKyAgICAgICAgZmFjdG9yaXpl
IGRpbWVuc2lvbnMgY2hlY2tpbmcgYmV0d2VlbiBkaWZmZXJlbnQgZHJhd0ltYWdlIG1ldGhvZHMu
CisKKyAgICAgICAgSWYgaW1hZ2UgcmVjdGFuZ2xlIGRvZXMgbm90IGNvbnRhaW4gc291cmNlIHJl
Y3RhbmdsZSwgaW50ZXJzZWN0IHNvdXJjZQorICAgICAgICByZWN0YW5nbGUgd2l0aCBpbWFnZSBy
ZWN0YW5nbGUsIGFuZCBzaHJpbmsgZGVzdGluYXRpb24gc2l6ZSBieSB0aGUKKyAgICAgICAgc2Ft
ZSByYXRpbyBzb3VyY2UgcmVjdGFuZ2xlIHdhcyBzaHJpbmtlZC4KKworICAgICAgICBUZXN0OiBm
YXN0L2NhbnZhcy9kcmF3SW1hZ2Utc291cmNlLXJlY3Qtb3V0c2lkZS1pbWFnZS5odG1sCisKKyAg
ICAgICAgKiBodG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpub3JtYWxpemVEcmF3aW5nQXJl
YSk6CisgICAgICAgIChXZWJDb3JlOjpDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6OmRyYXdJbWFn
ZSk6CisgICAgICAgICogaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmg6Cisg
ICAgICAgIChDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQpOgorCiAyMDEyLTEyLTIwICBBcm5hdWQg
UmVuZXZpZXIgIDxhLnJlbmV2aWVyQHNpc2Euc2Ftc3VuZy5jb20+CiAKICAgICAgICAgW0dUS10g
QWRkIHN1cHBvcnQgZm9yIGNvbG9yIGlucHV0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmNwcAppbmRleCBiNWE0ZmU5MWJk
ZGM0MWE3YWFiM2ZkZDJkMTNmZmQ0OWJlNzI4MTBiLi44OTdlMzE4MWQzN2NhZTBkMTkxMWQwYTAz
NWRjYjhkYWFkZmJjYmQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9D
YW52YXNSZW5kZXJpbmdDb250ZXh0MkQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2Fu
dmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5jcHAKQEAgLTEzNTAsMTUgKzEzNTAsMTIgQEAg
dm9pZCBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6OmRyYXdJbWFnZShIVE1MSW1hZ2VFbGVtZW50
KiBpbWFnZSwgY29uc3QgRmxvYXRSZWMKICAgICBkcmF3SW1hZ2UoaW1hZ2UsIHNyY1JlY3QsIGRz
dFJlY3QsIHN0YXRlKCkubV9nbG9iYWxDb21wb3NpdGUsIHN0YXRlKCkubV9nbG9iYWxCbGVuZCwg
ZWMpOwogfQogCi12b2lkIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDo6ZHJhd0ltYWdlKEhUTUxJ
bWFnZUVsZW1lbnQqIGltYWdlLCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEZsb2F0
UmVjdCYgZHN0UmVjdCwgY29uc3QgQ29tcG9zaXRlT3BlcmF0b3ImIG9wLCBjb25zdCBCbGVuZE1v
ZGUmIGJsZW5kTW9kZSwgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYgKCFpbWFnZSkgewot
ICAgICAgICBlYyA9IFRZUEVfTUlTTUFUQ0hfRVJSOwordm9pZCBDYW52YXNSZW5kZXJpbmdDb250
ZXh0MkQ6Om5vcm1hbGl6ZURyYXdpbmdBcmVhKGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29u
c3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBGbG9hdFJlY3QmIG5vcm1hbGl6ZWRTcmNSZWN0LCBGbG9h
dFJlY3QmIG5vcm1hbGl6ZWREc3RSZWN0LCBjb25zdCBGbG9hdFJlY3QmIGltYWdlUmVjdCwgRXhj
ZXB0aW9uQ29kZSYgZWMpIHsKKyAgICBpZiAoIXNyY1JlY3Qud2lkdGgoKSB8fCAhc3JjUmVjdC5o
ZWlnaHQoKSkgeworICAgICAgICBlYyA9IElOREVYX1NJWkVfRVJSOwogICAgICAgICByZXR1cm47
CiAgICAgfQogCi0gICAgZWMgPSAwOwotCiAgICAgaWYgKCFzdGQ6OmlzZmluaXRlKGRzdFJlY3Qu
eCgpKSB8fCAhc3RkOjppc2Zpbml0ZShkc3RSZWN0LnkoKSkgfHwgIXN0ZDo6aXNmaW5pdGUoZHN0
UmVjdC53aWR0aCgpKSB8fCAhc3RkOjppc2Zpbml0ZShkc3RSZWN0LmhlaWdodCgpKQogICAgICAg
ICB8fCAhc3RkOjppc2Zpbml0ZShzcmNSZWN0LngoKSkgfHwgIXN0ZDo6aXNmaW5pdGUoc3JjUmVj
dC55KCkpIHx8ICFzdGQ6OmlzZmluaXRlKHNyY1JlY3Qud2lkdGgoKSkgfHwgIXN0ZDo6aXNmaW5p
dGUoc3JjUmVjdC5oZWlnaHQoKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTEzNjYsMTggKzEzNjMs
NDQgQEAgdm9pZCBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6OmRyYXdJbWFnZShIVE1MSW1hZ2VF
bGVtZW50KiBpbWFnZSwgY29uc3QgRmxvYXRSZWMKICAgICBpZiAoIWRzdFJlY3Qud2lkdGgoKSB8
fCAhZHN0UmVjdC5oZWlnaHQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKCFpbWFnZS0+
Y29tcGxldGUoKSkKKyAgICBub3JtYWxpemVkU3JjUmVjdCA9IG5vcm1hbGl6ZVJlY3Qoc3JjUmVj
dCk7CisgICAgbm9ybWFsaXplZERzdFJlY3QgPSBub3JtYWxpemVSZWN0KGRzdFJlY3QpOworICAg
IGlmICghaW1hZ2VSZWN0LmludGVyc2VjdHMobm9ybWFsaXplZFNyY1JlY3QpKSB7CisgICAgICAg
IG5vcm1hbGl6ZWRTcmNSZWN0LnNldFdpZHRoKDApOworICAgICAgICBub3JtYWxpemVkU3JjUmVj
dC5zZXRIZWlnaHQoMCk7CiAgICAgICAgIHJldHVybjsKKyAgICB9CiAKLSAgICBGbG9hdFJlY3Qg
bm9ybWFsaXplZFNyY1JlY3QgPSBub3JtYWxpemVSZWN0KHNyY1JlY3QpOwotICAgIEZsb2F0UmVj
dCBub3JtYWxpemVkRHN0UmVjdCA9IG5vcm1hbGl6ZVJlY3QoZHN0UmVjdCk7CisgICAgaWYgKCFp
bWFnZVJlY3QuY29udGFpbnMobm9ybWFsaXplZFNyY1JlY3QpKSB7CisgICAgICAgIGZsb2F0IG9s
ZFdpZHRoID0gbm9ybWFsaXplZFNyY1JlY3Qud2lkdGgoKTsKKyAgICAgICAgZmxvYXQgb2xkSGVp
Z2h0ID0gbm9ybWFsaXplZFNyY1JlY3QuaGVpZ2h0KCk7CisgICAgICAgIG5vcm1hbGl6ZWRTcmNS
ZWN0LmludGVyc2VjdChpbWFnZVJlY3QpOworICAgICAgICBub3JtYWxpemVkRHN0UmVjdC5zZXRX
aWR0aChub3JtYWxpemVkRHN0UmVjdC53aWR0aCgpICogbm9ybWFsaXplZFNyY1JlY3Qud2lkdGgo
KSAvIG9sZFdpZHRoKTsKKyAgICAgICAgbm9ybWFsaXplZERzdFJlY3Quc2V0SGVpZ2h0KG5vcm1h
bGl6ZWREc3RSZWN0LmhlaWdodCgpICogbm9ybWFsaXplZFNyY1JlY3QuaGVpZ2h0KCkgLyBvbGRI
ZWlnaHQpOworICAgIH0KK30KIAotICAgIEZsb2F0UmVjdCBpbWFnZVJlY3QgPSBGbG9hdFJlY3Qo
RmxvYXRQb2ludCgpLCBzaXplKGltYWdlKSk7Ci0gICAgaWYgKCFzcmNSZWN0LndpZHRoKCkgfHwg
IXNyY1JlY3QuaGVpZ2h0KCkpIHsKLSAgICAgICAgZWMgPSBJTkRFWF9TSVpFX0VSUjsKK3ZvaWQg
Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpkcmF3SW1hZ2UoSFRNTEltYWdlRWxlbWVudCogaW1h
Z2UsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBj
b25zdCBDb21wb3NpdGVPcGVyYXRvciYgb3AsIGNvbnN0IEJsZW5kTW9kZSYgYmxlbmRNb2RlLCBF
eGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBpZiAoIWltYWdlKSB7CisgICAgICAgIGVjID0gVFlQ
RV9NSVNNQVRDSF9FUlI7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgaWYgKCFpbWFnZVJl
Y3QuY29udGFpbnMobm9ybWFsaXplZFNyY1JlY3QpKQorCisgICAgZWMgPSAwOworCisgICAgaWYg
KCFpbWFnZS0+Y29tcGxldGUoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgQ2FjaGVkSW1hZ2Uq
IGNhY2hlZEltYWdlID0gaW1hZ2UtPmNhY2hlZEltYWdlKCk7CisgICAgaWYgKCFjYWNoZWRJbWFn
ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgRmxvYXRSZWN0IG5vcm1hbGl6ZWRTcmNSZWN0Owor
ICAgIEZsb2F0UmVjdCBub3JtYWxpemVkRHN0UmVjdDsKKyAgICBGbG9hdFJlY3QgaW1hZ2VSZWN0
ID0gRmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgc2l6ZShpbWFnZSkpOworICAgIG5vcm1hbGl6ZURy
YXdpbmdBcmVhKHNyY1JlY3QsIGRzdFJlY3QsIG5vcm1hbGl6ZWRTcmNSZWN0LCBub3JtYWxpemVk
RHN0UmVjdCwgaW1hZ2VSZWN0LCBlYyk7CisgICAgaWYgKG5vcm1hbGl6ZWRTcmNSZWN0LmlzRW1w
dHkoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgR3JhcGhpY3NDb250ZXh0KiBjID0gZHJhd2lu
Z0NvbnRleHQoKTsKQEAgLTEzODYsMTAgKzE0MDksNiBAQCB2b2lkIENhbnZhc1JlbmRlcmluZ0Nv
bnRleHQyRDo6ZHJhd0ltYWdlKEhUTUxJbWFnZUVsZW1lbnQqIGltYWdlLCBjb25zdCBGbG9hdFJl
YwogICAgIGlmICghc3RhdGUoKS5tX2ludmVydGlibGVDVE0pCiAgICAgICAgIHJldHVybjsKIAot
ICAgIENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSA9IGltYWdlLT5jYWNoZWRJbWFnZSgpOwotICAg
IGlmICghY2FjaGVkSW1hZ2UpCi0gICAgICAgIHJldHVybjsKLQogICAgIGNoZWNrT3JpZ2luKGlt
YWdlKTsKIAogICAgIGlmIChyZWN0Q29udGFpbnNDYW52YXMobm9ybWFsaXplZERzdFJlY3QpKSB7
CkBAIC0xNDM1LDIyICsxNDU0LDE5IEBAIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpk
cmF3SW1hZ2UoSFRNTENhbnZhc0VsZW1lbnQqIHNvdXJjZUNhbnZhcywgY29uc3QKICAgICB9CiAK
ICAgICBGbG9hdFJlY3Qgc3JjQ2FudmFzUmVjdCA9IEZsb2F0UmVjdChGbG9hdFBvaW50KCksIHNv
dXJjZUNhbnZhcy0+c2l6ZSgpKTsKLQogICAgIGlmICghc3JjQ2FudmFzUmVjdC53aWR0aCgpIHx8
ICFzcmNDYW52YXNSZWN0LmhlaWdodCgpKSB7CiAgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9F
UlI7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoIXNyY1JlY3Qud2lkdGgoKSB8
fCAhc3JjUmVjdC5oZWlnaHQoKSkgewotICAgICAgICBlYyA9IElOREVYX1NJWkVfRVJSOworICAg
IEZsb2F0UmVjdCBub3JtYWxpemVkU3JjUmVjdDsKKyAgICBGbG9hdFJlY3Qgbm9ybWFsaXplZERz
dFJlY3Q7CisgICAgbm9ybWFsaXplRHJhd2luZ0FyZWEoc3JjUmVjdCwgZHN0UmVjdCwgbm9ybWFs
aXplZFNyY1JlY3QsIG5vcm1hbGl6ZWREc3RSZWN0LCBzcmNDYW52YXNSZWN0LCBlYyk7CisgICAg
aWYgKG5vcm1hbGl6ZWRTcmNSZWN0LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwotICAgIH0K
IAogICAgIGVjID0gMDsKIAotICAgIGlmICghc3JjQ2FudmFzUmVjdC5jb250YWlucyhub3JtYWxp
emVSZWN0KHNyY1JlY3QpKSB8fCAhZHN0UmVjdC53aWR0aCgpIHx8ICFkc3RSZWN0LmhlaWdodCgp
KQotICAgICAgICByZXR1cm47Ci0KICAgICBHcmFwaGljc0NvbnRleHQqIGMgPSBkcmF3aW5nQ29u
dGV4dCgpOwogICAgIGlmICghYykKICAgICAgICAgcmV0dXJuOwpAQCAtMTQ3NSwxOSArMTQ5MSwx
OSBAQCB2b2lkIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDo6ZHJhd0ltYWdlKEhUTUxDYW52YXNF
bGVtZW50KiBzb3VyY2VDYW52YXMsIGNvbnN0CiAgICAgc291cmNlQ2FudmFzLT5tYWtlUmVuZGVy
aW5nUmVzdWx0c0F2YWlsYWJsZSgpOwogI2VuZGlmCiAKLSAgICBpZiAocmVjdENvbnRhaW5zQ2Fu
dmFzKGRzdFJlY3QpKSB7Ci0gICAgICAgIGMtPmRyYXdJbWFnZUJ1ZmZlcihidWZmZXIsIENvbG9y
U3BhY2VEZXZpY2VSR0IsIGRzdFJlY3QsIHNyY1JlY3QsIHN0YXRlKCkubV9nbG9iYWxDb21wb3Np
dGUsIHN0YXRlKCkubV9nbG9iYWxCbGVuZCk7CisgICAgaWYgKHJlY3RDb250YWluc0NhbnZhcyhu
b3JtYWxpemVkRHN0UmVjdCkpIHsKKyAgICAgICAgYy0+ZHJhd0ltYWdlQnVmZmVyKGJ1ZmZlciwg
Q29sb3JTcGFjZURldmljZVJHQiwgbm9ybWFsaXplZERzdFJlY3QsIG5vcm1hbGl6ZWRTcmNSZWN0
LCBzdGF0ZSgpLm1fZ2xvYmFsQ29tcG9zaXRlLCBzdGF0ZSgpLm1fZ2xvYmFsQmxlbmQpOwogICAg
ICAgICBkaWREcmF3RW50aXJlQ2FudmFzKCk7CiAgICAgfSBlbHNlIGlmIChpc0Z1bGxDYW52YXND
b21wb3NpdGVNb2RlKHN0YXRlKCkubV9nbG9iYWxDb21wb3NpdGUpKSB7Ci0gICAgICAgIGZ1bGxD
YW52YXNDb21wb3NpdGVkRHJhd0ltYWdlKGJ1ZmZlciwgQ29sb3JTcGFjZURldmljZVJHQiwgZHN0
UmVjdCwgc3JjUmVjdCwgc3RhdGUoKS5tX2dsb2JhbENvbXBvc2l0ZSk7CisgICAgICAgIGZ1bGxD
YW52YXNDb21wb3NpdGVkRHJhd0ltYWdlKGJ1ZmZlciwgQ29sb3JTcGFjZURldmljZVJHQiwgbm9y
bWFsaXplZERzdFJlY3QsIG5vcm1hbGl6ZWRTcmNSZWN0LCBzdGF0ZSgpLm1fZ2xvYmFsQ29tcG9z
aXRlKTsKICAgICAgICAgZGlkRHJhd0VudGlyZUNhbnZhcygpOwogICAgIH0gZWxzZSBpZiAoc3Rh
dGUoKS5tX2dsb2JhbENvbXBvc2l0ZSA9PSBDb21wb3NpdGVDb3B5KSB7CiAgICAgICAgIGNsZWFy
Q2FudmFzKCk7Ci0gICAgICAgIGMtPmRyYXdJbWFnZUJ1ZmZlcihidWZmZXIsIENvbG9yU3BhY2VE
ZXZpY2VSR0IsIGRzdFJlY3QsIHNyY1JlY3QsIHN0YXRlKCkubV9nbG9iYWxDb21wb3NpdGUsIHN0
YXRlKCkubV9nbG9iYWxCbGVuZCk7CisgICAgICAgIGMtPmRyYXdJbWFnZUJ1ZmZlcihidWZmZXIs
IENvbG9yU3BhY2VEZXZpY2VSR0IsIG5vcm1hbGl6ZWREc3RSZWN0LCBub3JtYWxpemVkU3JjUmVj
dCwgc3RhdGUoKS5tX2dsb2JhbENvbXBvc2l0ZSwgc3RhdGUoKS5tX2dsb2JhbEJsZW5kKTsKICAg
ICAgICAgZGlkRHJhd0VudGlyZUNhbnZhcygpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIGMtPmRy
YXdJbWFnZUJ1ZmZlcihidWZmZXIsIENvbG9yU3BhY2VEZXZpY2VSR0IsIGRzdFJlY3QsIHNyY1Jl
Y3QsIHN0YXRlKCkubV9nbG9iYWxDb21wb3NpdGUsIHN0YXRlKCkubV9nbG9iYWxCbGVuZCk7Ci0g
ICAgICAgIGRpZERyYXcoZHN0UmVjdCk7CisgICAgICAgIGMtPmRyYXdJbWFnZUJ1ZmZlcihidWZm
ZXIsIENvbG9yU3BhY2VEZXZpY2VSR0IsIG5vcm1hbGl6ZWREc3RSZWN0LCBub3JtYWxpemVkU3Jj
UmVjdCwgc3RhdGUoKS5tX2dsb2JhbENvbXBvc2l0ZSwgc3RhdGUoKS5tX2dsb2JhbEJsZW5kKTsK
KyAgICAgICAgZGlkRHJhdyhub3JtYWxpemVkRHN0UmVjdCk7CiAgICAgfQogfQogCkBAIC0xNTMz
LDEzICsxNTQ5LDExIEBAIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpkcmF3SW1hZ2Uo
SFRNTFZpZGVvRWxlbWVudCogdmlkZW8sIGNvbnN0IEZsb2F0UmVjCiAgICAgaWYgKHZpZGVvLT5y
ZWFkeVN0YXRlKCkgPT0gSFRNTE1lZGlhRWxlbWVudDo6SEFWRV9OT1RISU5HIHx8IHZpZGVvLT5y
ZWFkeVN0YXRlKCkgPT0gSFRNTE1lZGlhRWxlbWVudDo6SEFWRV9NRVRBREFUQSkKICAgICAgICAg
cmV0dXJuOwogCisgICAgRmxvYXRSZWN0IG5vcm1hbGl6ZWRTcmNSZWN0OworICAgIEZsb2F0UmVj
dCBub3JtYWxpemVkRHN0UmVjdDsKICAgICBGbG9hdFJlY3QgdmlkZW9SZWN0ID0gRmxvYXRSZWN0
KEZsb2F0UG9pbnQoKSwgc2l6ZSh2aWRlbykpOwotICAgIGlmICghc3JjUmVjdC53aWR0aCgpIHx8
ICFzcmNSZWN0LmhlaWdodCgpKSB7Ci0gICAgICAgIGVjID0gSU5ERVhfU0laRV9FUlI7Ci0gICAg
ICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBpZiAoIXZpZGVvUmVjdC5jb250YWlucyhub3JtYWxp
emVSZWN0KHNyY1JlY3QpKSB8fCAhZHN0UmVjdC53aWR0aCgpIHx8ICFkc3RSZWN0LmhlaWdodCgp
KQorICAgIG5vcm1hbGl6ZURyYXdpbmdBcmVhKHNyY1JlY3QsIGRzdFJlY3QsIG5vcm1hbGl6ZWRT
cmNSZWN0LCBub3JtYWxpemVkRHN0UmVjdCwgdmlkZW9SZWN0LCBlYyk7CisgICAgaWYgKG5vcm1h
bGl6ZWRTcmNSZWN0LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgR3JhcGhpY3ND
b250ZXh0KiBjID0gZHJhd2luZ0NvbnRleHQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmgKaW5kZXggZWVmMzBhOThkNmFj
OGNmY2RjMGJiY2I1MmI4ZjNiMjllZGI2OWU0Yi4uNTVmNWMxNmFkMGI4ODVmM2YyOTc2M2M3MmJi
MGE1ZTk1ZjMxMjJkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2Fu
dmFzUmVuZGVyaW5nQ29udGV4dDJELmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMv
Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmgKQEAgLTM1OSw2ICszNTksOCBAQCBwcml2YXRlOgog
ICAgIFBhc3NSZWZQdHI8SW1hZ2VEYXRhPiBnZXRJbWFnZURhdGEoSW1hZ2VCdWZmZXI6OkNvb3Jk
aW5hdGVTeXN0ZW0sIGZsb2F0IHN4LCBmbG9hdCBzeSwgZmxvYXQgc3csIGZsb2F0IHNoLCBFeGNl
cHRpb25Db2RlJikgY29uc3Q7CiAgICAgdm9pZCBwdXRJbWFnZURhdGEoSW1hZ2VEYXRhKiwgSW1h
Z2VCdWZmZXI6OkNvb3JkaW5hdGVTeXN0ZW0sIGZsb2F0IGR4LCBmbG9hdCBkeSwgZmxvYXQgZGly
dHlYLCBmbG9hdCBkaXJ0eVksIGZsb2F0IGRpcnR5V2lkdGgsIGZsb2F0IGRpcnR5SGVpZ2h0LCBF
eGNlcHRpb25Db2RlJik7CiAKKyAgICB2b2lkIG5vcm1hbGl6ZURyYXdpbmdBcmVhKGNvbnN0IEZs
b2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBGbG9hdFJlY3QmIG5v
cm1hbGl6ZWRTcmNSZWN0LCBGbG9hdFJlY3QmIG5vcm1hbGl6ZWREc3RSZWN0LCBjb25zdCBGbG9h
dFJlY3QmIGltYWdlUmVjdCwgRXhjZXB0aW9uQ29kZSYpOworCiAgICAgdmlydHVhbCBib29sIGlz
MmQoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiB0cnVlOyB9CiAgICAgdmlydHVhbCBib29sIGlz
QWNjZWxlcmF0ZWQoKSBjb25zdCBPVkVSUklERTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU5MTc1Zjc3NDMwNTUxMTZi
OTg5YzQ4OTEyZWVmMThiNzQ1YTIyNTkuLmI4ZmJlNzg4ODFkYjhkY2NlMWEwYjA5ZjRhNDI0NDFm
MzQ2OWYxYWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMy0wNS0yOSAgQXJuYXVkIFJlbmV2
aWVyICA8YS5yZW5ldmllckBzaXNhLnNhbXN1bmcuY29tPgorCisgICAgICAgIGRyYXdJbWFnZTog
Y2xpcCBzb3VyY2UgaW1hZ2Ugd2hlbiBzb3VyY2UgcmVjdGFuZ2xlIG91dHNpZGUgb2Ygc291cmNl
IGltYWdlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTE2OTkxCisKKyAgICAgICAgQ3JlYXRlIGEgdGVzdCB0aGF0IGNhbGxzIGRyYXdJbWFnZSB3aXRo
IGEgc291cmNlIHJlY3RhbmdsZSBleHRlbmRpbmcKKyAgICAgICAgb3ZlciBpbWFnZSByZWN0YW5n
bGUuIFRoZSBpbWFnZSBzaG91bGQgYmUgY2xpcHBlZCwgYW5kIHNvdXJjZQorICAgICAgICByZWN0
YW5nbGUgc2hvdWxkIGJlIGNsaXBwZWQgaW4gdGhlIHNhbWUgcHJvcG9ydGlvbi4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvY2FudmFzL2Ry
YXdJbWFnZS1zb3VyY2UtcmVjdC1vdXRzaWRlLWltYWdlLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvY2FudmFzL2RyYXdJbWFnZS1zb3VyY2UtcmVjdC1vdXRzaWRlLWltYWdl
Lmh0bWw6IEFkZGVkLgorCiAyMDEzLTA1LTA3ICBBcm5hdWQgUmVuZXZpZXIgIDxhLnJlbmV2aWVy
QHNpc2Euc2Ftc3VuZy5jb20+CiAKICAgICAgICAgc2hyaW5rIHJlcGFpbnQgcmVjdGFuZ2xlIHdo
ZW4gY2xpcCB3YXMgYXBwbGllZCB0byBjYW52YXMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2NhbnZhcy9kcmF3SW1hZ2Utc291cmNlLXJlY3Qtb3V0c2lkZS1pbWFnZS1leHBlY3RlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvZHJhd0ltYWdlLXNvdXJjZS1yZWN0LW91dHNp
ZGUtaW1hZ2UtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNjgxODZlYmY2MDZhZmUzZDlkNzk5
ZDJjMTU2M2JhN2U1MjNlOTAwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9j
YW52YXMvZHJhd0ltYWdlLXNvdXJjZS1yZWN0LW91dHNpZGUtaW1hZ2UtZXhwZWN0ZWQuaHRtbApA
QCAtMCwwICsxLDI3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0
PgorZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICB2YXIgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImNhbnZhcyIpOworICAgIHZhciBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgiMmQi
KTsKKyAgICB2YXIgd2lkdGggPSBjYW52YXMud2lkdGg7CisgICAgdmFyIGhlaWdodCA9IGNhbnZh
cy5oZWlnaHQ7CisKKyAgICB2YXIgc3JjQ2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
Y2FudmFzIik7CisgICAgc3JjQ2FudmFzLndpZHRoID0gd2lkdGg7CisgICAgc3JjQ2FudmFzLmhl
aWdodCA9IGhlaWdodDsKKyAgICB2YXIgc3JjQ3R4ID0gc3JjQ2FudmFzLmdldENvbnRleHQoIjJk
Iik7CisKKyAgICBzcmNDdHguYXJjKHdpZHRoIC8gMiwgaGVpZ2h0IC8gMiwgTWF0aC5taW4od2lk
dGggLyAyLCBoZWlnaHQgLyAyKSwgMCwgTWF0aC5QSSAqIDIpCisgICAgc3JjQ3R4LmZpbGwoKTsK
KyAgICBjdHguZHJhd0ltYWdlKHNyY0NhbnZhcywgCisgICAgICAgICAgICAwLCAwLCB3aWR0aCwg
aGVpZ2h0LAorICAgICAgICAgICAgLXdpZHRoIC8yLCAtaGVpZ2h0IC8yLCB3aWR0aCwgaGVpZ2h0
KTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorPGNh
bnZhcyBpZD0iY2FudmFzIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCI+PC9jYW52YXM+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy9kcmF3SW1h
Z2Utc291cmNlLXJlY3Qtb3V0c2lkZS1pbWFnZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52
YXMvZHJhd0ltYWdlLXNvdXJjZS1yZWN0LW91dHNpZGUtaW1hZ2UuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4w
MWU1ODk3OWRkMzliZjk5YmMzMzkwMTZiZjMzYWZmYTQ3MThiZGNiCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvZHJhd0ltYWdlLXNvdXJjZS1yZWN0LW91dHNpZGUt
aW1hZ2UuaHRtbApAQCAtMCwwICsxLDI3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhl
YWQ+Cis8c2NyaXB0PgorZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICB2YXIgY2FudmFzID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNhbnZhcyIpOworICAgIHZhciBjdHggPSBjYW52YXMuZ2V0
Q29udGV4dCgiMmQiKTsKKyAgICB2YXIgd2lkdGggPSBjYW52YXMud2lkdGg7CisgICAgdmFyIGhl
aWdodCA9IGNhbnZhcy5oZWlnaHQ7CisKKyAgICB2YXIgc3JjQ2FudmFzID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgiY2FudmFzIik7CisgICAgc3JjQ2FudmFzLndpZHRoID0gd2lkdGg7CisgICAg
c3JjQ2FudmFzLmhlaWdodCA9IGhlaWdodDsKKyAgICB2YXIgc3JjQ3R4ID0gc3JjQ2FudmFzLmdl
dENvbnRleHQoIjJkIik7CisKKyAgICBzcmNDdHguYXJjKHdpZHRoIC8gMiwgaGVpZ2h0IC8gMiwg
TWF0aC5taW4od2lkdGggLyAyLCBoZWlnaHQgLyAyKSwgMCwgTWF0aC5QSSAqIDIpCisgICAgc3Jj
Q3R4LmZpbGwoKTsKKyAgICBjdHguZHJhd0ltYWdlKHNyY0NhbnZhcywgCisgICAgICAgICAgICB3
aWR0aCAvIDIsIGhlaWdodCAvIDIsIHdpZHRoLCBoZWlnaHQsCisgICAgICAgICAgICAwLCAwLCB3
aWR0aCwgaGVpZ2h0KTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW5U
ZXN0KCkiPgorPGNhbnZhcyBpZD0iY2FudmFzIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCI+PC9j
YW52YXM+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203301</attachid>
            <date>2013-05-29 19:34:19 -0700</date>
            <delta_ts>2016-03-09 09:49:16 -0800</delta_ts>
            <desc>updated patch: use normalized rect when drawImage video + style issues</desc>
            <filename>bug-116991-20130529193256.patch</filename>
            <type>text/plain</type>
            <size>13242</size>
            <attacher name="arno.">a.renevier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwODYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGQyNjlkYjlhYTE1Mzg1
OGVjMzExODU0Y2RhNDMzYjk5NjhjMDkyOC4uNDg4MmNiNjIyOWQxMDYyNWJhM2U5ZTE2YzYwNWNj
NDkxNzJkMzlkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTA1LTI5ICBBcm5h
dWQgUmVuZXZpZXIgIDxhLnJlbmV2aWVyQHNpc2Euc2Ftc3VuZy5jb20+CisKKyAgICAgICAgZHJh
d0ltYWdlOiBjbGlwIHNvdXJjZSBpbWFnZSB3aGVuIHNvdXJjZSByZWN0YW5nbGUgb3V0c2lkZSBv
ZiBzb3VyY2UgaW1hZ2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTY5OTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBBZGQgYSBtZXRob2Qgbm9ybWFsaXplRHJhd2luZ0FyZWEgdG8gbm9ybWFsaXplIHNv
dXJjZSBhbmQgZGVzdGluYXRpb25zCisgICAgICAgIHJlY3RhbmdsZXMsIGRlcGVuZGluZyBvbiBp
bWFnZSByZWN0YW5nbGUuIFRoYXQgbWV0aG9kIGlzIHVzZWQgdG8KKyAgICAgICAgZmFjdG9yaXpl
IGRpbWVuc2lvbnMgY2hlY2tpbmcgYmV0d2VlbiBkaWZmZXJlbnQgZHJhd0ltYWdlIG1ldGhvZHMu
CisKKyAgICAgICAgSWYgaW1hZ2UgcmVjdGFuZ2xlIGRvZXMgbm90IGNvbnRhaW4gc291cmNlIHJl
Y3RhbmdsZSwgaW50ZXJzZWN0IHNvdXJjZQorICAgICAgICByZWN0YW5nbGUgd2l0aCBpbWFnZSBy
ZWN0YW5nbGUsIGFuZCBzaHJpbmsgZGVzdGluYXRpb24gc2l6ZSBieSB0aGUKKyAgICAgICAgc2Ft
ZSByYXRpbyBzb3VyY2UgcmVjdGFuZ2xlIHdhcyBzaHJpbmtlZC4KKworICAgICAgICBUZXN0OiBm
YXN0L2NhbnZhcy9kcmF3SW1hZ2Utc291cmNlLXJlY3Qtb3V0c2lkZS1pbWFnZS5odG1sCisKKyAg
ICAgICAgKiBodG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpub3JtYWxpemVEcmF3aW5nQXJl
YSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhbnZhc1JlbmRlcmlu
Z0NvbnRleHQyRDo6ZHJhd0ltYWdlKToKKyAgICAgICAgKiBodG1sL2NhbnZhcy9DYW52YXNSZW5k
ZXJpbmdDb250ZXh0MkQuaDoKKyAgICAgICAgKENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCk6CisK
IDIwMTItMTItMjAgIEFybmF1ZCBSZW5ldmllciAgPGEucmVuZXZpZXJAc2lzYS5zYW1zdW5nLmNv
bT4KIAogICAgICAgICBbR1RLXSBBZGQgc3VwcG9ydCBmb3IgY29sb3IgaW5wdXQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQu
Y3BwCmluZGV4IGIxMWI3OTUwMTg5YTkzMTJhMzE3YThjOTRiMDljYTgyMmZkNzJiNTYuLmJmNjI0
ODM5Mzc1NTJjZjViMGJlYTVjNjBhZTFiM2UxM2FjNjdjZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmNwcApAQCAt
MTMwNyw2ICsxMzA3LDM3IEBAIHN0YXRpYyBpbmxpbmUgRmxvYXRSZWN0IG5vcm1hbGl6ZVJlY3Qo
Y29uc3QgRmxvYXRSZWN0JiByZWN0KQogICAgICAgICBtYXgocmVjdC5oZWlnaHQoKSwgLXJlY3Qu
aGVpZ2h0KCkpKTsKIH0KIAordm9pZCBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6Om5vcm1hbGl6
ZURyYXdpbmdBcmVhKGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgRmxvYXRSZWN0JiBk
c3RSZWN0LCBGbG9hdFJlY3QmIG5vcm1hbGl6ZWRTcmNSZWN0LCBGbG9hdFJlY3QmIG5vcm1hbGl6
ZWREc3RSZWN0LCBjb25zdCBGbG9hdFJlY3QmIGltYWdlUmVjdCwgRXhjZXB0aW9uQ29kZSYgZWMp
IAoreworICAgIGlmICghc3JjUmVjdC53aWR0aCgpIHx8ICFzcmNSZWN0LmhlaWdodCgpKSB7Cisg
ICAgICAgIGVjID0gSU5ERVhfU0laRV9FUlI7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBpZiAoIXN0ZDo6aXNmaW5pdGUoZHN0UmVjdC54KCkpIHx8ICFzdGQ6OmlzZmluaXRlKGRzdFJl
Y3QueSgpKSB8fCAhc3RkOjppc2Zpbml0ZShkc3RSZWN0LndpZHRoKCkpIHx8ICFzdGQ6OmlzZmlu
aXRlKGRzdFJlY3QuaGVpZ2h0KCkpCisgICAgICAgIHx8ICFzdGQ6OmlzZmluaXRlKHNyY1JlY3Qu
eCgpKSB8fCAhc3RkOjppc2Zpbml0ZShzcmNSZWN0LnkoKSkgfHwgIXN0ZDo6aXNmaW5pdGUoc3Jj
UmVjdC53aWR0aCgpKSB8fCAhc3RkOjppc2Zpbml0ZShzcmNSZWN0LmhlaWdodCgpKSkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgaWYgKCFkc3RSZWN0LndpZHRoKCkgfHwgIWRzdFJlY3QuaGVpZ2h0
KCkpCisgICAgICAgIHJldHVybjsKKworICAgIG5vcm1hbGl6ZWRTcmNSZWN0ID0gbm9ybWFsaXpl
UmVjdChzcmNSZWN0KTsKKyAgICBub3JtYWxpemVkRHN0UmVjdCA9IG5vcm1hbGl6ZVJlY3QoZHN0
UmVjdCk7CisgICAgaWYgKCFpbWFnZVJlY3QuaW50ZXJzZWN0cyhub3JtYWxpemVkU3JjUmVjdCkp
IHsKKyAgICAgICAgbm9ybWFsaXplZFNyY1JlY3Quc2V0V2lkdGgoMCk7CisgICAgICAgIG5vcm1h
bGl6ZWRTcmNSZWN0LnNldEhlaWdodCgwKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IGlmICghaW1hZ2VSZWN0LmNvbnRhaW5zKG5vcm1hbGl6ZWRTcmNSZWN0KSkgeworICAgICAgICBm
bG9hdCBvbGRXaWR0aCA9IG5vcm1hbGl6ZWRTcmNSZWN0LndpZHRoKCk7CisgICAgICAgIGZsb2F0
IG9sZEhlaWdodCA9IG5vcm1hbGl6ZWRTcmNSZWN0LmhlaWdodCgpOworICAgICAgICBub3JtYWxp
emVkU3JjUmVjdC5pbnRlcnNlY3QoaW1hZ2VSZWN0KTsKKyAgICAgICAgbm9ybWFsaXplZERzdFJl
Y3Quc2V0V2lkdGgobm9ybWFsaXplZERzdFJlY3Qud2lkdGgoKSAqIG5vcm1hbGl6ZWRTcmNSZWN0
LndpZHRoKCkgLyBvbGRXaWR0aCk7CisgICAgICAgIG5vcm1hbGl6ZWREc3RSZWN0LnNldEhlaWdo
dChub3JtYWxpemVkRHN0UmVjdC5oZWlnaHQoKSAqIG5vcm1hbGl6ZWRTcmNSZWN0LmhlaWdodCgp
IC8gb2xkSGVpZ2h0KTsKKyAgICB9Cit9CisKIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJE
OjpkcmF3SW1hZ2UoSFRNTEltYWdlRWxlbWVudCogaW1hZ2UsIGZsb2F0IHgsIGZsb2F0IHksIEV4
Y2VwdGlvbkNvZGUmIGVjKQogewogICAgIGlmICghaW1hZ2UpIHsKQEAgLTEzNDksMjUgKzEzODAs
MTggQEAgdm9pZCBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6OmRyYXdJbWFnZShIVE1MSW1hZ2VF
bGVtZW50KiBpbWFnZSwgY29uc3QgRmxvYXRSZWMKIAogICAgIGVjID0gMDsKIAotICAgIGlmICgh
c3RkOjppc2Zpbml0ZShkc3RSZWN0LngoKSkgfHwgIXN0ZDo6aXNmaW5pdGUoZHN0UmVjdC55KCkp
IHx8ICFzdGQ6OmlzZmluaXRlKGRzdFJlY3Qud2lkdGgoKSkgfHwgIXN0ZDo6aXNmaW5pdGUoZHN0
UmVjdC5oZWlnaHQoKSkKLSAgICAgICAgfHwgIXN0ZDo6aXNmaW5pdGUoc3JjUmVjdC54KCkpIHx8
ICFzdGQ6OmlzZmluaXRlKHNyY1JlY3QueSgpKSB8fCAhc3RkOjppc2Zpbml0ZShzcmNSZWN0Lndp
ZHRoKCkpIHx8ICFzdGQ6OmlzZmluaXRlKHNyY1JlY3QuaGVpZ2h0KCkpKQotICAgICAgICByZXR1
cm47Ci0KLSAgICBpZiAoIWRzdFJlY3Qud2lkdGgoKSB8fCAhZHN0UmVjdC5oZWlnaHQoKSkKLSAg
ICAgICAgcmV0dXJuOwotCiAgICAgaWYgKCFpbWFnZS0+Y29tcGxldGUoKSkKICAgICAgICAgcmV0
dXJuOwogCi0gICAgRmxvYXRSZWN0IG5vcm1hbGl6ZWRTcmNSZWN0ID0gbm9ybWFsaXplUmVjdChz
cmNSZWN0KTsKLSAgICBGbG9hdFJlY3Qgbm9ybWFsaXplZERzdFJlY3QgPSBub3JtYWxpemVSZWN0
KGRzdFJlY3QpOworICAgIENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSA9IGltYWdlLT5jYWNoZWRJ
bWFnZSgpOworICAgIGlmICghY2FjaGVkSW1hZ2UpCisgICAgICAgIHJldHVybjsKIAorICAgIEZs
b2F0UmVjdCBub3JtYWxpemVkU3JjUmVjdDsKKyAgICBGbG9hdFJlY3Qgbm9ybWFsaXplZERzdFJl
Y3Q7CiAgICAgRmxvYXRSZWN0IGltYWdlUmVjdCA9IEZsb2F0UmVjdChGbG9hdFBvaW50KCksIHNp
emUoaW1hZ2UpKTsKLSAgICBpZiAoIXNyY1JlY3Qud2lkdGgoKSB8fCAhc3JjUmVjdC5oZWlnaHQo
KSkgewotICAgICAgICBlYyA9IElOREVYX1NJWkVfRVJSOwotICAgICAgICByZXR1cm47Ci0gICAg
fQotICAgIGlmICghaW1hZ2VSZWN0LmNvbnRhaW5zKG5vcm1hbGl6ZWRTcmNSZWN0KSkKKyAgICBu
b3JtYWxpemVEcmF3aW5nQXJlYShzcmNSZWN0LCBkc3RSZWN0LCBub3JtYWxpemVkU3JjUmVjdCwg
bm9ybWFsaXplZERzdFJlY3QsIGltYWdlUmVjdCwgZWMpOworICAgIGlmIChub3JtYWxpemVkU3Jj
UmVjdC5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIEdyYXBoaWNzQ29udGV4dCog
YyA9IGRyYXdpbmdDb250ZXh0KCk7CkBAIC0xMzc2LDEwICsxNDAwLDYgQEAgdm9pZCBDYW52YXNS
ZW5kZXJpbmdDb250ZXh0MkQ6OmRyYXdJbWFnZShIVE1MSW1hZ2VFbGVtZW50KiBpbWFnZSwgY29u
c3QgRmxvYXRSZWMKICAgICBpZiAoIXN0YXRlKCkubV9pbnZlcnRpYmxlQ1RNKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UgPSBpbWFnZS0+Y2FjaGVkSW1h
Z2UoKTsKLSAgICBpZiAoIWNhY2hlZEltYWdlKQotICAgICAgICByZXR1cm47Ci0KICAgICBjaGVj
a09yaWdpbihpbWFnZSk7CiAKICAgICBpZiAocmVjdENvbnRhaW5zQ2FudmFzKG5vcm1hbGl6ZWRE
c3RSZWN0KSkgewpAQCAtMTQyNSwyMCArMTQ0NSwxNyBAQCB2b2lkIENhbnZhc1JlbmRlcmluZ0Nv
bnRleHQyRDo6ZHJhd0ltYWdlKEhUTUxDYW52YXNFbGVtZW50KiBzb3VyY2VDYW52YXMsIGNvbnN0
CiAgICAgfQogCiAgICAgRmxvYXRSZWN0IHNyY0NhbnZhc1JlY3QgPSBGbG9hdFJlY3QoRmxvYXRQ
b2ludCgpLCBzb3VyY2VDYW52YXMtPnNpemUoKSk7Ci0KICAgICBpZiAoIXNyY0NhbnZhc1JlY3Qu
d2lkdGgoKSB8fCAhc3JjQ2FudmFzUmVjdC5oZWlnaHQoKSkgewogICAgICAgICBlYyA9IElOVkFM
SURfU1RBVEVfRVJSOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKCFzcmNSZWN0
LndpZHRoKCkgfHwgIXNyY1JlY3QuaGVpZ2h0KCkpIHsKLSAgICAgICAgZWMgPSBJTkRFWF9TSVpF
X0VSUjsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQogICAgIGVjID0gMDsKIAotICAgIGlmICgh
c3JjQ2FudmFzUmVjdC5jb250YWlucyhub3JtYWxpemVSZWN0KHNyY1JlY3QpKSB8fCAhZHN0UmVj
dC53aWR0aCgpIHx8ICFkc3RSZWN0LmhlaWdodCgpKQorICAgIEZsb2F0UmVjdCBub3JtYWxpemVk
U3JjUmVjdDsKKyAgICBGbG9hdFJlY3Qgbm9ybWFsaXplZERzdFJlY3Q7CisgICAgbm9ybWFsaXpl
RHJhd2luZ0FyZWEoc3JjUmVjdCwgZHN0UmVjdCwgbm9ybWFsaXplZFNyY1JlY3QsIG5vcm1hbGl6
ZWREc3RSZWN0LCBzcmNDYW52YXNSZWN0LCBlYyk7CisgICAgaWYgKG5vcm1hbGl6ZWRTcmNSZWN0
LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgR3JhcGhpY3NDb250ZXh0KiBjID0g
ZHJhd2luZ0NvbnRleHQoKTsKQEAgLTE0NjUsMTkgKzE0ODIsMTkgQEAgdm9pZCBDYW52YXNSZW5k
ZXJpbmdDb250ZXh0MkQ6OmRyYXdJbWFnZShIVE1MQ2FudmFzRWxlbWVudCogc291cmNlQ2FudmFz
LCBjb25zdAogICAgIHNvdXJjZUNhbnZhcy0+bWFrZVJlbmRlcmluZ1Jlc3VsdHNBdmFpbGFibGUo
KTsKICNlbmRpZgogCi0gICAgaWYgKHJlY3RDb250YWluc0NhbnZhcyhkc3RSZWN0KSkgewotICAg
ICAgICBjLT5kcmF3SW1hZ2VCdWZmZXIoYnVmZmVyLCBDb2xvclNwYWNlRGV2aWNlUkdCLCBkc3RS
ZWN0LCBzcmNSZWN0LCBzdGF0ZSgpLm1fZ2xvYmFsQ29tcG9zaXRlLCBzdGF0ZSgpLm1fZ2xvYmFs
QmxlbmQpOworICAgIGlmIChyZWN0Q29udGFpbnNDYW52YXMobm9ybWFsaXplZERzdFJlY3QpKSB7
CisgICAgICAgIGMtPmRyYXdJbWFnZUJ1ZmZlcihidWZmZXIsIENvbG9yU3BhY2VEZXZpY2VSR0Is
IG5vcm1hbGl6ZWREc3RSZWN0LCBub3JtYWxpemVkU3JjUmVjdCwgc3RhdGUoKS5tX2dsb2JhbENv
bXBvc2l0ZSwgc3RhdGUoKS5tX2dsb2JhbEJsZW5kKTsKICAgICAgICAgZGlkRHJhd0VudGlyZUNh
bnZhcygpOwogICAgIH0gZWxzZSBpZiAoaXNGdWxsQ2FudmFzQ29tcG9zaXRlTW9kZShzdGF0ZSgp
Lm1fZ2xvYmFsQ29tcG9zaXRlKSkgewotICAgICAgICBmdWxsQ2FudmFzQ29tcG9zaXRlZERyYXdJ
bWFnZShidWZmZXIsIENvbG9yU3BhY2VEZXZpY2VSR0IsIGRzdFJlY3QsIHNyY1JlY3QsIHN0YXRl
KCkubV9nbG9iYWxDb21wb3NpdGUpOworICAgICAgICBmdWxsQ2FudmFzQ29tcG9zaXRlZERyYXdJ
bWFnZShidWZmZXIsIENvbG9yU3BhY2VEZXZpY2VSR0IsIG5vcm1hbGl6ZWREc3RSZWN0LCBub3Jt
YWxpemVkU3JjUmVjdCwgc3RhdGUoKS5tX2dsb2JhbENvbXBvc2l0ZSk7CiAgICAgICAgIGRpZERy
YXdFbnRpcmVDYW52YXMoKTsKICAgICB9IGVsc2UgaWYgKHN0YXRlKCkubV9nbG9iYWxDb21wb3Np
dGUgPT0gQ29tcG9zaXRlQ29weSkgewogICAgICAgICBjbGVhckNhbnZhcygpOwotICAgICAgICBj
LT5kcmF3SW1hZ2VCdWZmZXIoYnVmZmVyLCBDb2xvclNwYWNlRGV2aWNlUkdCLCBkc3RSZWN0LCBz
cmNSZWN0LCBzdGF0ZSgpLm1fZ2xvYmFsQ29tcG9zaXRlLCBzdGF0ZSgpLm1fZ2xvYmFsQmxlbmQp
OworICAgICAgICBjLT5kcmF3SW1hZ2VCdWZmZXIoYnVmZmVyLCBDb2xvclNwYWNlRGV2aWNlUkdC
LCBub3JtYWxpemVkRHN0UmVjdCwgbm9ybWFsaXplZFNyY1JlY3QsIHN0YXRlKCkubV9nbG9iYWxD
b21wb3NpdGUsIHN0YXRlKCkubV9nbG9iYWxCbGVuZCk7CiAgICAgICAgIGRpZERyYXdFbnRpcmVD
YW52YXMoKTsKICAgICB9IGVsc2UgewotICAgICAgICBjLT5kcmF3SW1hZ2VCdWZmZXIoYnVmZmVy
LCBDb2xvclNwYWNlRGV2aWNlUkdCLCBkc3RSZWN0LCBzcmNSZWN0LCBzdGF0ZSgpLm1fZ2xvYmFs
Q29tcG9zaXRlLCBzdGF0ZSgpLm1fZ2xvYmFsQmxlbmQpOwotICAgICAgICBkaWREcmF3KGRzdFJl
Y3QpOworICAgICAgICBjLT5kcmF3SW1hZ2VCdWZmZXIoYnVmZmVyLCBDb2xvclNwYWNlRGV2aWNl
UkdCLCBub3JtYWxpemVkRHN0UmVjdCwgbm9ybWFsaXplZFNyY1JlY3QsIHN0YXRlKCkubV9nbG9i
YWxDb21wb3NpdGUsIHN0YXRlKCkubV9nbG9iYWxCbGVuZCk7CisgICAgICAgIGRpZERyYXcobm9y
bWFsaXplZERzdFJlY3QpOwogICAgIH0KIH0KIApAQCAtMTUyMywxMyArMTU0MCwxMSBAQCB2b2lk
IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDo6ZHJhd0ltYWdlKEhUTUxWaWRlb0VsZW1lbnQqIHZp
ZGVvLCBjb25zdCBGbG9hdFJlYwogICAgIGlmICh2aWRlby0+cmVhZHlTdGF0ZSgpID09IEhUTUxN
ZWRpYUVsZW1lbnQ6OkhBVkVfTk9USElORyB8fCB2aWRlby0+cmVhZHlTdGF0ZSgpID09IEhUTUxN
ZWRpYUVsZW1lbnQ6OkhBVkVfTUVUQURBVEEpCiAgICAgICAgIHJldHVybjsKIAorICAgIEZsb2F0
UmVjdCBub3JtYWxpemVkU3JjUmVjdDsKKyAgICBGbG9hdFJlY3Qgbm9ybWFsaXplZERzdFJlY3Q7
CiAgICAgRmxvYXRSZWN0IHZpZGVvUmVjdCA9IEZsb2F0UmVjdChGbG9hdFBvaW50KCksIHNpemUo
dmlkZW8pKTsKLSAgICBpZiAoIXNyY1JlY3Qud2lkdGgoKSB8fCAhc3JjUmVjdC5oZWlnaHQoKSkg
ewotICAgICAgICBlYyA9IElOREVYX1NJWkVfRVJSOwotICAgICAgICByZXR1cm47Ci0gICAgfQot
Ci0gICAgaWYgKCF2aWRlb1JlY3QuY29udGFpbnMobm9ybWFsaXplUmVjdChzcmNSZWN0KSkgfHwg
IWRzdFJlY3Qud2lkdGgoKSB8fCAhZHN0UmVjdC5oZWlnaHQoKSkKKyAgICBub3JtYWxpemVEcmF3
aW5nQXJlYShzcmNSZWN0LCBkc3RSZWN0LCBub3JtYWxpemVkU3JjUmVjdCwgbm9ybWFsaXplZERz
dFJlY3QsIHZpZGVvUmVjdCwgZWMpOworICAgIGlmIChub3JtYWxpemVkU3JjUmVjdC5pc0VtcHR5
KCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIEdyYXBoaWNzQ29udGV4dCogYyA9IGRyYXdpbmdD
b250ZXh0KCk7CkBAIC0xNTQxLDEzICsxNTU2LDEzIEBAIHZvaWQgQ2FudmFzUmVuZGVyaW5nQ29u
dGV4dDJEOjpkcmF3SW1hZ2UoSFRNTFZpZGVvRWxlbWVudCogdmlkZW8sIGNvbnN0IEZsb2F0UmVj
CiAgICAgY2hlY2tPcmlnaW4odmlkZW8pOwogCiAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZl
ciBzdGF0ZVNhdmVyKCpjKTsKLSAgICBjLT5jbGlwKGRzdFJlY3QpOwotICAgIGMtPnRyYW5zbGF0
ZShkc3RSZWN0LngoKSwgZHN0UmVjdC55KCkpOwotICAgIGMtPnNjYWxlKEZsb2F0U2l6ZShkc3RS
ZWN0LndpZHRoKCkgLyBzcmNSZWN0LndpZHRoKCksIGRzdFJlY3QuaGVpZ2h0KCkgLyBzcmNSZWN0
LmhlaWdodCgpKSk7Ci0gICAgYy0+dHJhbnNsYXRlKC1zcmNSZWN0LngoKSwgLXNyY1JlY3QueSgp
KTsKKyAgICBjLT5jbGlwKG5vcm1hbGl6ZWREc3RSZWN0KTsKKyAgICBjLT50cmFuc2xhdGUobm9y
bWFsaXplZERzdFJlY3QueCgpLCBub3JtYWxpemVkRHN0UmVjdC55KCkpOworICAgIGMtPnNjYWxl
KEZsb2F0U2l6ZShub3JtYWxpemVkRHN0UmVjdC53aWR0aCgpIC8gbm9ybWFsaXplZFNyY1JlY3Qu
d2lkdGgoKSwgbm9ybWFsaXplZERzdFJlY3QuaGVpZ2h0KCkgLyBub3JtYWxpemVkU3JjUmVjdC5o
ZWlnaHQoKSkpOworICAgIGMtPnRyYW5zbGF0ZSgtbm9ybWFsaXplZFNyY1JlY3QueCgpLCAtbm9y
bWFsaXplZFNyY1JlY3QueSgpKTsKICAgICB2aWRlby0+cGFpbnRDdXJyZW50RnJhbWVJbkNvbnRl
eHQoYywgSW50UmVjdChJbnRQb2ludCgpLCBzaXplKHZpZGVvKSkpOwogICAgIHN0YXRlU2F2ZXIu
cmVzdG9yZSgpOwotICAgIGRpZERyYXcoZHN0UmVjdCk7CisgICAgZGlkRHJhdyhub3JtYWxpemVk
RHN0UmVjdCk7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9j
YW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaAppbmRleCA3NzFkMjQxYzZlMTU0MGU0OWFj
NzRiNzBiMDc5MzBkYzA4Njg0YWE0Li5lMjgwNmFhMGYwM2RhMWNiZmI2YWJmZjY4YjQ5NjQyYmEy
ZDdkMTQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5k
ZXJpbmdDb250ZXh0MkQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNS
ZW5kZXJpbmdDb250ZXh0MkQuaApAQCAtMzUyLDYgKzM1Miw4IEBAIHByaXZhdGU6CiAgICAgUGFz
c1JlZlB0cjxJbWFnZURhdGE+IGdldEltYWdlRGF0YShJbWFnZUJ1ZmZlcjo6Q29vcmRpbmF0ZVN5
c3RlbSwgZmxvYXQgc3gsIGZsb2F0IHN5LCBmbG9hdCBzdywgZmxvYXQgc2gsIEV4Y2VwdGlvbkNv
ZGUmKSBjb25zdDsKICAgICB2b2lkIHB1dEltYWdlRGF0YShJbWFnZURhdGEqLCBJbWFnZUJ1ZmZl
cjo6Q29vcmRpbmF0ZVN5c3RlbSwgZmxvYXQgZHgsIGZsb2F0IGR5LCBmbG9hdCBkaXJ0eVgsIGZs
b2F0IGRpcnR5WSwgZmxvYXQgZGlydHlXaWR0aCwgZmxvYXQgZGlydHlIZWlnaHQsIEV4Y2VwdGlv
bkNvZGUmKTsKIAorICAgIHZvaWQgbm9ybWFsaXplRHJhd2luZ0FyZWEoY29uc3QgRmxvYXRSZWN0
JiBzcmNSZWN0LCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIEZsb2F0UmVjdCYgbm9ybWFsaXpl
ZFNyY1JlY3QsIEZsb2F0UmVjdCYgbm9ybWFsaXplZERzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYg
aW1hZ2VSZWN0LCBFeGNlcHRpb25Db2RlJik7CisKICAgICB2aXJ0dWFsIGJvb2wgaXMyZCgpIGNv
bnN0IE9WRVJSSURFIHsgcmV0dXJuIHRydWU7IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNBY2NlbGVy
YXRlZCgpIGNvbnN0IE9WRVJSSURFOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNTkxNzVmNzc0MzA1NTExNmI5ODljNDg5
MTJlZWYxOGI3NDVhMjI1OS4uYjhmYmU3ODg4MWRiOGRjY2UxYTBiMDlmNGE0MjQ0MWYzNDY5ZjFh
YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEzLTA1LTI5ICBBcm5hdWQgUmVuZXZpZXIgIDxh
LnJlbmV2aWVyQHNpc2Euc2Ftc3VuZy5jb20+CisKKyAgICAgICAgZHJhd0ltYWdlOiBjbGlwIHNv
dXJjZSBpbWFnZSB3aGVuIHNvdXJjZSByZWN0YW5nbGUgb3V0c2lkZSBvZiBzb3VyY2UgaW1hZ2Uu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTY5OTEK
KworICAgICAgICBDcmVhdGUgYSB0ZXN0IHRoYXQgY2FsbHMgZHJhd0ltYWdlIHdpdGggYSBzb3Vy
Y2UgcmVjdGFuZ2xlIGV4dGVuZGluZworICAgICAgICBvdmVyIGltYWdlIHJlY3RhbmdsZS4gVGhl
IGltYWdlIHNob3VsZCBiZSBjbGlwcGVkLCBhbmQgc291cmNlCisgICAgICAgIHJlY3RhbmdsZSBz
aG91bGQgYmUgY2xpcHBlZCBpbiB0aGUgc2FtZSBwcm9wb3J0aW9uLgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9jYW52YXMvZHJhd0ltYWdl
LXNvdXJjZS1yZWN0LW91dHNpZGUtaW1hZ2UtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9jYW52YXMvZHJhd0ltYWdlLXNvdXJjZS1yZWN0LW91dHNpZGUtaW1hZ2UuaHRtbDog
QWRkZWQuCisKIDIwMTMtMDUtMDcgIEFybmF1ZCBSZW5ldmllciAgPGEucmVuZXZpZXJAc2lzYS5z
YW1zdW5nLmNvbT4KIAogICAgICAgICBzaHJpbmsgcmVwYWludCByZWN0YW5nbGUgd2hlbiBjbGlw
IHdhcyBhcHBsaWVkIHRvIGNhbnZhcy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY2Fu
dmFzL2RyYXdJbWFnZS1zb3VyY2UtcmVjdC1vdXRzaWRlLWltYWdlLWV4cGVjdGVkLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2NhbnZhcy9kcmF3SW1hZ2Utc291cmNlLXJlY3Qtb3V0c2lkZS1pbWFn
ZS1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2ODE4NmViZjYwNmFmZTNkOWQ3OTlkMmMxNTYz
YmE3ZTUyM2U5MDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy9k
cmF3SW1hZ2Utc291cmNlLXJlY3Qtb3V0c2lkZS1pbWFnZS1leHBlY3RlZC5odG1sCkBAIC0wLDAg
KzEsMjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitmdW5j
dGlvbiBydW5UZXN0KCkgeworICAgIHZhciBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiY2FudmFzIik7CisgICAgdmFyIGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCIyZCIpOworICAg
IHZhciB3aWR0aCA9IGNhbnZhcy53aWR0aDsKKyAgICB2YXIgaGVpZ2h0ID0gY2FudmFzLmhlaWdo
dDsKKworICAgIHZhciBzcmNDYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMi
KTsKKyAgICBzcmNDYW52YXMud2lkdGggPSB3aWR0aDsKKyAgICBzcmNDYW52YXMuaGVpZ2h0ID0g
aGVpZ2h0OworICAgIHZhciBzcmNDdHggPSBzcmNDYW52YXMuZ2V0Q29udGV4dCgiMmQiKTsKKwor
ICAgIHNyY0N0eC5hcmMod2lkdGggLyAyLCBoZWlnaHQgLyAyLCBNYXRoLm1pbih3aWR0aCAvIDIs
IGhlaWdodCAvIDIpLCAwLCBNYXRoLlBJICogMikKKyAgICBzcmNDdHguZmlsbCgpOworICAgIGN0
eC5kcmF3SW1hZ2Uoc3JjQ2FudmFzLCAKKyAgICAgICAgICAgIDAsIDAsIHdpZHRoLCBoZWlnaHQs
CisgICAgICAgICAgICAtd2lkdGggLzIsIC1oZWlnaHQgLzIsIHdpZHRoLCBoZWlnaHQpOworfQor
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Cis8Y2FudmFzIGlk
PSJjYW52YXMiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIj48L2NhbnZhcz4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL2RyYXdJbWFnZS1zb3Vy
Y2UtcmVjdC1vdXRzaWRlLWltYWdlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy9kcmF3
SW1hZ2Utc291cmNlLXJlY3Qtb3V0c2lkZS1pbWFnZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAxZTU4OTc5
ZGQzOWJmOTliYzMzOTAxNmJmMzNhZmZhNDcxOGJkY2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2NhbnZhcy9kcmF3SW1hZ2Utc291cmNlLXJlY3Qtb3V0c2lkZS1pbWFnZS5o
dG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxz
Y3JpcHQ+CitmdW5jdGlvbiBydW5UZXN0KCkgeworICAgIHZhciBjYW52YXMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiY2FudmFzIik7CisgICAgdmFyIGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0
KCIyZCIpOworICAgIHZhciB3aWR0aCA9IGNhbnZhcy53aWR0aDsKKyAgICB2YXIgaGVpZ2h0ID0g
Y2FudmFzLmhlaWdodDsKKworICAgIHZhciBzcmNDYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCJjYW52YXMiKTsKKyAgICBzcmNDYW52YXMud2lkdGggPSB3aWR0aDsKKyAgICBzcmNDYW52
YXMuaGVpZ2h0ID0gaGVpZ2h0OworICAgIHZhciBzcmNDdHggPSBzcmNDYW52YXMuZ2V0Q29udGV4
dCgiMmQiKTsKKworICAgIHNyY0N0eC5hcmMod2lkdGggLyAyLCBoZWlnaHQgLyAyLCBNYXRoLm1p
bih3aWR0aCAvIDIsIGhlaWdodCAvIDIpLCAwLCBNYXRoLlBJICogMikKKyAgICBzcmNDdHguZmls
bCgpOworICAgIGN0eC5kcmF3SW1hZ2Uoc3JjQ2FudmFzLCAKKyAgICAgICAgICAgIHdpZHRoIC8g
MiwgaGVpZ2h0IC8gMiwgd2lkdGgsIGhlaWdodCwKKyAgICAgICAgICAgIDAsIDAsIHdpZHRoLCBo
ZWlnaHQpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+
Cis8Y2FudmFzIGlkPSJjYW52YXMiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIj48L2NhbnZhcz4K
KzwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="review"
          id="224725"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>