<?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>55800</bug_id>
          
          <creation_ts>2011-03-04 15:57:44 -0800</creation_ts>
          <short_desc>WK2 needs printing support on Windows</short_desc>
          <delta_ts>2011-03-04 17:22:22 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows 7</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, PlatformOnly</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jon Honeycutt">jhoneycutt</reporter>
          <assigned_to name="Jon Honeycutt">jhoneycutt</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>362765</commentid>
    <comment_count>0</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2011-03-04 15:57:44 -0800</bug_when>
    <thetext>We need printing support for WebKit2 on Windows.

&lt;rdar://problem/8903808&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362799</commentid>
    <comment_count>1</comment_count>
      <attachid>84830</attachid>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2011-03-04 16:47:52 -0800</bug_when>
    <thetext>Created attachment 84830
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362801</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-03-04 16:49:39 -0800</bug_when>
    <thetext>Attachment 84830 did not pass style-queue:

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

Source/WebKit2/UIProcess/API/C/WKPage.cpp:30:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 9 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>362805</commentid>
    <comment_count>3</comment_count>
      <attachid>84830</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-04 16:53:24 -0800</bug_when>
    <thetext>Comment on attachment 84830
Patch

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

&gt; Source/WebKit2/UIProcess/API/C/WKPage.cpp:506
&gt; +    ComputedPagesContext(WKPageComputePagesForPrintingFunction callback, void* context)
&gt; +        : callback(callback)
&gt; +        , context(context) { }

A little strange to break this up into multiple lines like this. I would put the braces on their own lines, or put it all on one line.

&gt; Source/WebKit2/UIProcess/API/C/WKPagePrivate.h:53
&gt; +#if PLATFORM(MAC) || PLATFORM(WIN)

Putting this kind of #if into a header isn’t right. The macros used for this can’t easily be used by clients outside WebKit that need to include headers. Instead, we normally have to use separate headers for platform-specific things in the API.

For now, you could just have these definitions in the header be unconditional. The extra declarations would do no harm in the short term for platforms where nothing is implemented.

&gt; Source/WebKit2/WebProcess/WebPage/WebPage.cpp:1992
&gt;  // FIXME: Find a better place for Mac specific code.

FIXME doesn’t make much sense any more.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362818</commentid>
    <comment_count>4</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2011-03-04 17:22:22 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 84830 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=84830&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/C/WKPage.cpp:506
&gt; &gt; +    ComputedPagesContext(WKPageComputePagesForPrintingFunction callback, void* context)
&gt; &gt; +        : callback(callback)
&gt; &gt; +        , context(context) { }
&gt; 
&gt; A little strange to break this up into multiple lines like this. I would put the braces on their own lines, or put it all on one line.

Moved the braces onto their own lines.

&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/C/WKPagePrivate.h:53
&gt; &gt; +#if PLATFORM(MAC) || PLATFORM(WIN)
&gt; 
&gt; Putting this kind of #if into a header isn’t right. The macros used for this can’t easily be used by clients outside WebKit that need to include headers. Instead, we normally have to use separate headers for platform-specific things in the API.
&gt; 
&gt; For now, you could just have these definitions in the header be unconditional. The extra declarations would do no harm in the short term for platforms where nothing is implemented.

OK, made these unconditional in the header.

&gt; 
&gt; &gt; Source/WebKit2/WebProcess/WebPage/WebPage.cpp:1992
&gt; &gt;  // FIXME: Find a better place for Mac specific code.
&gt; 
&gt; FIXME doesn’t make much sense any more.

Removed the FIXME.

Thanks for the review! Landed in r80398.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84830</attachid>
            <date>2011-03-04 16:47:52 -0800</date>
            <delta_ts>2011-03-04 16:53:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>0001-WK2-needs-printing-support-on-Windows.patch</filename>
            <type>text/plain</type>
            <size>11892</size>
            <attacher name="Jon Honeycutt">jhoneycutt</attacher>
            
              <data encoding="base64">RnJvbSA3MjNhNTIwZWUzNjY5NzlkMzEzNGFkYmE1ODk1NWRjYzFkYjZmZjdhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb24gSG9uZXljdXR0IDxqaG9uZXljdXR0QGFwcGxlLmNvbT4K
RGF0ZTogRnJpLCA0IE1hciAyMDExIDE2OjA1OjEyIC0wODAwClN1YmplY3Q6IFtQQVRDSF0gV0sy
IG5lZWRzIHByaW50aW5nIHN1cHBvcnQgb24gV2luZG93cwogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTU1ODAwCiA8cmRhcjovL3Byb2JsZW0vODkwMzgwOD4KClJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKKiBVSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcDoKKENv
bXB1dGVkUGFnZXNDb250ZXh0OjpDb21wdXRlZFBhZ2VzQ29udGV4dCk6Cihjb21wdXRlZFBhZ2Vz
Q2FsbGJhY2spOgpGcm9tIHRoZSBWZWN0b3Igb2YgV2ViQ29yZTo6SW50UmVjdHMsIGJ1aWxkIHVw
IGEgVmVjdG9yIG9mIFdLUmVjdHMuCkNhbGwgdGhlIGNhbGxiYWNrLCBwYXNzaW5nIHRoZXNlIHJl
Y3RzIGFuZCB0aGUgc2NhbGUgZmFjdG9yLgoocHJpbnRJbmZvRnJvbVdLUHJpbnRJbmZvKToKUmV0
dXJuIGEgUHJpbnRJbmZvIHN0cnVjdHVyZSBmcm9tIHRoZSBXS1ByaW50SW5mby4KKFdLUGFnZUNv
bXB1dGVQYWdlc0ZvclByaW50aW5nKToKQ2FsbCBXZWJQYWdlUHJveHk6OmNvbXB1dGVQYWdlc0Zv
clByaW50aW5nKCkuIFBhc3MKY29tcHV0ZWRQYWdlc0NhbGxiYWNrIGFzIHRoZSBjYWxsYmFjayBm
dW5jdGlvbiwgc28gdGhhdCB3ZSBjYW4KdHJhbnNsYXRlIHRoZSBXZWJDb3JlIHJlY3QgdHlwZSB0
byBXS1JlY3QgYmVmb3JlIGNhbGxpbmcgdGhlIGNhbGxlcidzCmNhbGxiYWNrIGZ1bmN0aW9uLgoo
V0tQYWdlQmVnaW5QcmludGluZyk6CkNhbGwgV2ViUGFnZVByb3h5OjpiZWdpblByaW50aW5nKCku
CihXS1BhZ2VEcmF3UGFnZXNUb1BERik6CkNhbGwgV2ViUGFnZVByb3h5OjpkcmF3UGFnZXNUb1BE
RigpLgoKKiBVSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oOgpEZWNsYXJlIHRoZSBXS1By
aW50SW5mbyB0eXBlIGFuZCBuZXcgZnVuY3Rpb25zLgoKKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcDoKQ29tcGlsZSB0aGlzIGNvZGUgb24gV2luZG93cy4KCiogVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5oOgpEaXR0by4KCiogVUlQcm9jZXNzL3dpbi9XZWJWaWV3LmNwcDoKKFdlYktpdDo6V2Vi
Vmlldzo6cGFpbnQpOgpXZSdyZSBwYWludGluZyB0aGUgd2luZG93OyBsZWF2ZSBwcmludGluZyBt
b2RlLgoKKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CkNvbXBpbGUgdGhpcyBjb2Rl
IG9uIFdpbmRvd3MuCgoqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CkRpdHRvLgoKKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKRGl0dG8uCi0tLQogU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ3ICsrKysr
KysrKysrKysrKysrKysrCiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNw
cCAgICAgICAgICB8ICAgNDUgKysrKysrKysrKysrKysrKysrKwogU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLUGFnZVByaXZhdGUuaCAgICAgfCAgIDE0ICsrKysrKwogU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgICAgICAgICAgfCAgICAyICstCiBTb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggICAgICAgICAgICB8ICAgIDIgKy0K
IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy93aW4vV2ViVmlldy5jcHAgICAgICAgICAgIHwgICAg
MSArCiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgICAgICB8
ICAgIDIgKy0KIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggICAg
ICAgIHwgICAgMiArLQogLi4uL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVz
c2FnZXMuaW4gfCAgICAyICstCiA5IGZpbGVzIGNoYW5nZWQsIDExMiBpbnNlcnRpb25zKCspLCA1
IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA1MmFiMTFjLi44NmZjNGYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsNTAgQEAKKzIwMTEtMDMtMDQgIEpvbiBIb25leWN1dHQgIDxqaG9uZXljdXR0
QGFwcGxlLmNvbT4KKworICAgICAgICBXSzIgbmVlZHMgcHJpbnRpbmcgc3VwcG9ydCBvbiBXaW5k
b3dzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NTgw
MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vODkwMzgwOD4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3Bw
OgorICAgICAgICAoQ29tcHV0ZWRQYWdlc0NvbnRleHQ6OkNvbXB1dGVkUGFnZXNDb250ZXh0KToK
KyAgICAgICAgKGNvbXB1dGVkUGFnZXNDYWxsYmFjayk6CisgICAgICAgIEZyb20gdGhlIFZlY3Rv
ciBvZiBXZWJDb3JlOjpJbnRSZWN0cywgYnVpbGQgdXAgYSBWZWN0b3Igb2YgV0tSZWN0cy4KKyAg
ICAgICAgQ2FsbCB0aGUgY2FsbGJhY2ssIHBhc3NpbmcgdGhlc2UgcmVjdHMgYW5kIHRoZSBzY2Fs
ZSBmYWN0b3IuCisgICAgICAgIChwcmludEluZm9Gcm9tV0tQcmludEluZm8pOgorICAgICAgICBS
ZXR1cm4gYSBQcmludEluZm8gc3RydWN0dXJlIGZyb20gdGhlIFdLUHJpbnRJbmZvLgorICAgICAg
ICAoV0tQYWdlQ29tcHV0ZVBhZ2VzRm9yUHJpbnRpbmcpOgorICAgICAgICBDYWxsIFdlYlBhZ2VQ
cm94eTo6Y29tcHV0ZVBhZ2VzRm9yUHJpbnRpbmcoKS4gUGFzcworICAgICAgICBjb21wdXRlZFBh
Z2VzQ2FsbGJhY2sgYXMgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uLCBzbyB0aGF0IHdlIGNhbgorICAg
ICAgICB0cmFuc2xhdGUgdGhlIFdlYkNvcmUgcmVjdCB0eXBlIHRvIFdLUmVjdCBiZWZvcmUgY2Fs
bGluZyB0aGUgY2FsbGVyJ3MKKyAgICAgICAgY2FsbGJhY2sgZnVuY3Rpb24uCisgICAgICAgIChX
S1BhZ2VCZWdpblByaW50aW5nKToKKyAgICAgICAgQ2FsbCBXZWJQYWdlUHJveHk6OmJlZ2luUHJp
bnRpbmcoKS4KKyAgICAgICAgKFdLUGFnZURyYXdQYWdlc1RvUERGKToKKyAgICAgICAgQ2FsbCBX
ZWJQYWdlUHJveHk6OmRyYXdQYWdlc1RvUERGKCkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0MvV0tQYWdlUHJpdmF0ZS5oOgorICAgICAgICBEZWNsYXJlIHRoZSBXS1ByaW50SW5mbyB0eXBl
IGFuZCBuZXcgZnVuY3Rpb25zLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5j
cHA6CisgICAgICAgIENvbXBpbGUgdGhpcyBjb2RlIG9uIFdpbmRvd3MuCisKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgIERpdHRvLgorCisgICAgICAgICogVUlQ
cm9jZXNzL3dpbi9XZWJWaWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVmlldzo6cGFpbnQp
OgorICAgICAgICBXZSdyZSBwYWludGluZyB0aGUgd2luZG93OyBsZWF2ZSBwcmludGluZyBtb2Rl
LgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICBD
b21waWxlIHRoaXMgY29kZSBvbiBXaW5kb3dzLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgRGl0dG8uCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKKyAgICAgICAgRGl0dG8uCisKIDIwMTEtMDMtMDQg
IEplc3NpZSBCZXJsaW4gIDxqYmVybGluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS1BhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAK
aW5kZXggMGRjZDBjMS4uYzM5NWYzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL1dLUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
L1dLUGFnZS5jcHAKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJXS1BhZ2UuaCIKICNpbmNs
dWRlICJXS1BhZ2VQcml2YXRlLmgiCiAKKyNpbmNsdWRlICJQcmludEluZm8uaCIKICNpbmNsdWRl
ICJXS0FQSUNhc3QuaCIKICNpbmNsdWRlICJXZWJCYWNrRm9yd2FyZExpc3QuaCIKICNpbmNsdWRl
ICJXZWJEYXRhLmgiCkBAIC00OTcsMyArNDk4LDQ3IEBAIHZvaWQgV0tQYWdlRXhlY3V0ZUNvbW1h
bmQoV0tQYWdlUmVmIHBhZ2VSZWYsIFdLU3RyaW5nUmVmIGNvbW1hbmQpCiB7CiAgICAgdG9JbXBs
KHBhZ2VSZWYpLT5leGVjdXRlRWRpdENvbW1hbmQodG9JbXBsKGNvbW1hbmQpLT5zdHJpbmcoKSk7
CiB9CisKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKFdJTikKK3N0cnVjdCBDb21wdXRl
ZFBhZ2VzQ29udGV4dCB7CisgICAgQ29tcHV0ZWRQYWdlc0NvbnRleHQoV0tQYWdlQ29tcHV0ZVBh
Z2VzRm9yUHJpbnRpbmdGdW5jdGlvbiBjYWxsYmFjaywgdm9pZCogY29udGV4dCkKKyAgICAgICAg
OiBjYWxsYmFjayhjYWxsYmFjaykKKyAgICAgICAgLCBjb250ZXh0KGNvbnRleHQpIHsgfQorICAg
IFdLUGFnZUNvbXB1dGVQYWdlc0ZvclByaW50aW5nRnVuY3Rpb24gY2FsbGJhY2s7CisgICAgdm9p
ZCogY29udGV4dDsKK307CisKK3N0YXRpYyB2b2lkIGNvbXB1dGVkUGFnZXNDYWxsYmFjayhjb25z
dCBWZWN0b3I8V2ViQ29yZTo6SW50UmVjdD4mIHJlY3RzLCBkb3VibGUgc2NhbGVGYWN0b3IsIFdL
RXJyb3JSZWYgZXJyb3IsIHZvaWQqIHVudHlwZWRDb250ZXh0KQoreworICAgIE93blB0cjxDb21w
dXRlZFBhZ2VzQ29udGV4dD4gY29udGV4dCA9IGFkb3B0UHRyKHN0YXRpY19jYXN0PENvbXB1dGVk
UGFnZXNDb250ZXh0Kj4odW50eXBlZENvbnRleHQpKTsKKyAgICBWZWN0b3I8V0tSZWN0PiB3a1Jl
Y3RzKHJlY3RzLnNpemUoKSk7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCByZWN0cy5zaXpl
KCk7ICsraSkKKyAgICAgICAgd2tSZWN0c1tpXSA9IHRvQVBJKHJlY3RzW2ldKTsKKyAgICBjb250
ZXh0LT5jYWxsYmFjayh3a1JlY3RzLmRhdGEoKSwgd2tSZWN0cy5zaXplKCksIHNjYWxlRmFjdG9y
LCBlcnJvciwgY29udGV4dC0+Y29udGV4dCk7Cit9CisKK3N0YXRpYyBQcmludEluZm8gcHJpbnRJ
bmZvRnJvbVdLUHJpbnRJbmZvKGNvbnN0IFdLUHJpbnRJbmZvJiBwcmludEluZm8pCit7CisgICAg
UHJpbnRJbmZvIHJlc3VsdDsKKyAgICByZXN1bHQucGFnZVNldHVwU2NhbGVGYWN0b3IgPSBwcmlu
dEluZm8ucGFnZVNldHVwU2NhbGVGYWN0b3I7CisgICAgcmVzdWx0LmF2YWlsYWJsZVBhcGVyV2lk
dGggPSBwcmludEluZm8uYXZhaWxhYmxlUGFwZXJXaWR0aDsKKyAgICByZXN1bHQuYXZhaWxhYmxl
UGFwZXJIZWlnaHQgPSBwcmludEluZm8uYXZhaWxhYmxlUGFwZXJIZWlnaHQ7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KKwordm9pZCBXS1BhZ2VDb21wdXRlUGFnZXNGb3JQcmludGluZyhXS1BhZ2VS
ZWYgcGFnZSwgV0tGcmFtZVJlZiBmcmFtZSwgY29uc3QgV0tQcmludEluZm8mIHByaW50SW5mbywg
V0tQYWdlQ29tcHV0ZVBhZ2VzRm9yUHJpbnRpbmdGdW5jdGlvbiBjYWxsYmFjaywgdm9pZCogY29u
dGV4dCkKK3sKKyAgICB0b0ltcGwocGFnZSktPmNvbXB1dGVQYWdlc0ZvclByaW50aW5nKHRvSW1w
bChmcmFtZSksIHByaW50SW5mb0Zyb21XS1ByaW50SW5mbyhwcmludEluZm8pLCBDb21wdXRlZFBh
Z2VzQ2FsbGJhY2s6OmNyZWF0ZShuZXcgQ29tcHV0ZWRQYWdlc0NvbnRleHQoY2FsbGJhY2ssIGNv
bnRleHQpLCBjb21wdXRlZFBhZ2VzQ2FsbGJhY2spKTsKK30KKwordm9pZCBXS1BhZ2VCZWdpblBy
aW50aW5nKFdLUGFnZVJlZiBwYWdlLCBXS0ZyYW1lUmVmIGZyYW1lLCBjb25zdCBXS1ByaW50SW5m
byYgcHJpbnRJbmZvKQoreworICAgIHRvSW1wbChwYWdlKS0+YmVnaW5QcmludGluZyh0b0ltcGwo
ZnJhbWUpLCBwcmludEluZm9Gcm9tV0tQcmludEluZm8ocHJpbnRJbmZvKSk7Cit9CisKK3ZvaWQg
V0tQYWdlRHJhd1BhZ2VzVG9QREYoV0tQYWdlUmVmIHBhZ2UsIFdLRnJhbWVSZWYgZnJhbWUsIHVp
bnQzMl90IGZpcnN0LCB1aW50MzJfdCBjb3VudCwgV0tQYWdlRHJhd1RvUERGRnVuY3Rpb24gY2Fs
bGJhY2ssIHZvaWQqIGNvbnRleHQpCit7CisgICAgdG9JbXBsKHBhZ2UpLT5kcmF3UGFnZXNUb1BE
Rih0b0ltcGwoZnJhbWUpLCBmaXJzdCwgY291bnQsIERhdGFDYWxsYmFjazo6Y3JlYXRlKGNvbnRl
eHQsIGNhbGxiYWNrKSk7Cit9CisjZW5kaWYKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLUGFnZVByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS1BhZ2VQcml2YXRlLmgKaW5kZXggNzc3MGIyNS4uMDFiN2M5NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVByaXZhdGUuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oCkBAIC01MCw2ICs1
MCwyMCBAQCB0eXBlZGVmIHVuc2lnbmVkIFdLUGFnZURlYnVnUGFpbnRGbGFnczsKIFdLX0VYUE9S
VCB2b2lkIFdLUGFnZVNldERlYnVnUGFpbnRGbGFncyhXS1BhZ2VEZWJ1Z1BhaW50RmxhZ3MgZmxh
Z3MpOwogV0tfRVhQT1JUIFdLUGFnZURlYnVnUGFpbnRGbGFncyBXS1BhZ2VHZXREZWJ1Z1BhaW50
RmxhZ3Modm9pZCk7CiAKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKFdJTikKK3N0cnVj
dCBXS1ByaW50SW5mbyB7CisgICAgZmxvYXQgcGFnZVNldHVwU2NhbGVGYWN0b3I7CisgICAgZmxv
YXQgYXZhaWxhYmxlUGFwZXJXaWR0aDsKKyAgICBmbG9hdCBhdmFpbGFibGVQYXBlckhlaWdodDsK
K307Cit0eXBlZGVmIHZvaWQgKCpXS1BhZ2VDb21wdXRlUGFnZXNGb3JQcmludGluZ0Z1bmN0aW9u
KShXS1JlY3QqIHBhZ2VSZWN0cywgdWludDMyX3QgcGFnZUNvdW50LCBkb3VibGUgcmVzdWx0UGFn
ZVNjYWxlRmFjdG9yLCBXS0Vycm9yUmVmIGVycm9yLCB2b2lkKiBmdW5jdGlvbkNvbnRleHQpOwor
V0tfRVhQT1JUIHZvaWQgV0tQYWdlQ29tcHV0ZVBhZ2VzRm9yUHJpbnRpbmcoV0tQYWdlUmVmIHBh
Z2UsIFdLRnJhbWVSZWYgZnJhbWUsIGNvbnN0IFdLUHJpbnRJbmZvJiwgV0tQYWdlQ29tcHV0ZVBh
Z2VzRm9yUHJpbnRpbmdGdW5jdGlvbiwgdm9pZCogY29udGV4dCk7CisKK3R5cGVkZWYgdm9pZCAo
KldLUGFnZURyYXdUb1BERkZ1bmN0aW9uKShXS0RhdGFSZWYgZGF0YSwgV0tFcnJvclJlZiBlcnJv
ciwgdm9pZCogZnVuY3Rpb25Db250ZXh0KTsKK1dLX0VYUE9SVCB2b2lkIFdLUGFnZUJlZ2luUHJp
bnRpbmcoV0tQYWdlUmVmIHBhZ2UsIFdLRnJhbWVSZWYgZnJhbWUsIGNvbnN0IFdLUHJpbnRJbmZv
Jik7CitXS19FWFBPUlQgdm9pZCBXS1BhZ2VEcmF3UGFnZXNUb1BERihXS1BhZ2VSZWYgcGFnZSwg
V0tGcmFtZVJlZiBmcmFtZSwgdWludDMyX3QgZmlyc3QsIHVpbnQzMl90IGNvdW50LCBXS1BhZ2VE
cmF3VG9QREZGdW5jdGlvbiBjYWxsYmFjaywgdm9pZCogY29udGV4dCk7CisjZW5kaWYKKwogI2lm
ZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5jcHAKaW5kZXggZWJiNjg4ZC4uZWFhNmUyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTI3NjYsNyArMjc2Niw3IEBAIHZvaWQgV2ViUGFn
ZVByb3h5Ojpjb21wdXRlUGFnZXNGb3JQcmludGluZyhXZWJGcmFtZVByb3h5KiBmcmFtZSwgY29u
c3QgUHJpbnRJbmZvCiAgICAgcHJvY2VzcygpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpDb21w
dXRlUGFnZXNGb3JQcmludGluZyhmcmFtZS0+ZnJhbWVJRCgpLCBwcmludEluZm8sIGNhbGxiYWNr
SUQpLCBtX3BhZ2VJRCwgbV9pc1BlcmZvcm1pbmdET01QcmludE9wZXJhdGlvbiA/IENvcmVJUEM6
OkRpc3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2FpdGluZ0ZvclN5bmNSZXBseSA6IDApOwogfQogCi0j
aWYgUExBVEZPUk0oTUFDKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oV0lOKQogdm9p
ZCBXZWJQYWdlUHJveHk6OmRyYXdSZWN0VG9QREYoV2ViRnJhbWVQcm94eSogZnJhbWUsIGNvbnN0
IEludFJlY3QmIHJlY3QsIFBhc3NSZWZQdHI8RGF0YUNhbGxiYWNrPiBjYWxsYmFjaykKIHsKICAg
ICB1aW50NjRfdCBjYWxsYmFja0lEID0gY2FsbGJhY2stPmNhbGxiYWNrSUQoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCA3MDc3YjRlLi5iYzM4OTllIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC00MDAsNyArNDAwLDcgQEAg
cHVibGljOgogICAgIHZvaWQgYmVnaW5QcmludGluZyhXZWJGcmFtZVByb3h5KiwgY29uc3QgUHJp
bnRJbmZvJik7CiAgICAgdm9pZCBlbmRQcmludGluZygpOwogICAgIHZvaWQgY29tcHV0ZVBhZ2Vz
Rm9yUHJpbnRpbmcoV2ViRnJhbWVQcm94eSosIGNvbnN0IFByaW50SW5mbyYsIFBhc3NSZWZQdHI8
Q29tcHV0ZWRQYWdlc0NhbGxiYWNrPik7Ci0jaWYgUExBVEZPUk0oTUFDKQorI2lmIFBMQVRGT1JN
KE1BQykgfHwgUExBVEZPUk0oV0lOKQogICAgIHZvaWQgZHJhd1JlY3RUb1BERihXZWJGcmFtZVBy
b3h5KiwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYsIFBhc3NSZWZQdHI8RGF0YUNhbGxiYWNrPik7
CiAgICAgdm9pZCBkcmF3UGFnZXNUb1BERihXZWJGcmFtZVByb3h5KiwgdWludDMyX3QgZmlyc3Qs
IHVpbnQzMl90IGNvdW50LCBQYXNzUmVmUHRyPERhdGFDYWxsYmFjaz4pOwogI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mvd2luL1dlYlZpZXcuY3BwIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL3dpbi9XZWJWaWV3LmNwcAppbmRleCBiZjVhZTU2Li45OTQxNzI0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mvd2luL1dlYlZpZXcuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy93aW4vV2ViVmlldy5jcHAKQEAgLTQxNCw2ICs0
MTQsNyBAQCBzdGF0aWMgdm9pZCBkcmF3UGFnZUJhY2tncm91bmQoSERDIGRjLCBjb25zdCBSRUNU
JiByZWN0KQogCiB2b2lkIFdlYlZpZXc6OnBhaW50KEhEQyBoZGMsIGNvbnN0IEludFJlY3QmIGRp
cnR5UmVjdCkKIHsKKyAgICBtX3BhZ2UtPmVuZFByaW50aW5nKCk7CiAgICAgaWYgKHVzZU5ld0Ry
YXdpbmdBcmVhKCkpIHsKICAgICAgICAgaWYgKERyYXdpbmdBcmVhUHJveHlJbXBsKiBkcmF3aW5n
QXJlYSA9IHN0YXRpY19jYXN0PERyYXdpbmdBcmVhUHJveHlJbXBsKj4obV9wYWdlLT5kcmF3aW5n
QXJlYSgpKSkgewogICAgICAgICAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBwb3J0IFdlYktpdDEn
cyByZWN0IGNvYWxlc2NpbmcgbG9naWMgaGVyZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBkMWRiOGQ3Li45MzZmYmFkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0xOTg4LDcgKzE5
ODgsNyBAQCB2b2lkIFdlYlBhZ2U6OmNvbXB1dGVQYWdlc0ZvclByaW50aW5nKHVpbnQ2NF90IGZy
YW1lSUQsIGNvbnN0IFByaW50SW5mbyYgcHJpbnRJbgogICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6Q29tcHV0ZWRQYWdlc0NhbGxiYWNrKHJlc3VsdFBhZ2VSZWN0cywgcmVzdWx0VG90
YWxTY2FsZUZhY3RvckZvclByaW50aW5nLCBjYWxsYmFja0lEKSk7CiB9CiAKLSNpZiBQTEFURk9S
TShNQUMpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShXSU4pCiAvLyBGSVhNRTogRmlu
ZCBhIGJldHRlciBwbGFjZSBmb3IgTWFjIHNwZWNpZmljIGNvZGUuCiB2b2lkIFdlYlBhZ2U6OmRy
YXdSZWN0VG9QREYodWludDY0X3QgZnJhbWVJRCwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgcmVj
dCwgdWludDY0X3QgY2FsbGJhY2tJRCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCmluZGV4IDJlZjE1ZDguLjcyYmE3YmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtMzI5LDcgKzMyOSw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIGJlZ2luUHJpbnRpbmcodWludDY0X3QgZnJhbWVJRCwgY29uc3QgUHJpbnRJ
bmZvJik7CiAgICAgdm9pZCBlbmRQcmludGluZygpOwogICAgIHZvaWQgY29tcHV0ZVBhZ2VzRm9y
UHJpbnRpbmcodWludDY0X3QgZnJhbWVJRCwgY29uc3QgUHJpbnRJbmZvJiwgdWludDY0X3QgY2Fs
bGJhY2tJRCk7Ci0jaWYgUExBVEZPUk0oTUFDKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZP
Uk0oV0lOKQogICAgIHZvaWQgZHJhd1JlY3RUb1BERih1aW50NjRfdCBmcmFtZUlELCBjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JiwgdWludDY0X3QgY2FsbGJhY2tJRCk7CiAgICAgdm9pZCBkcmF3UGFn
ZXNUb1BERih1aW50NjRfdCBmcmFtZUlELCB1aW50MzJfdCBmaXJzdCwgdWludDMyX3QgY291bnQs
IHVpbnQ2NF90IGNhbGxiYWNrSUQpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IGUyYmM4ZTAuLmNi
Nzc2ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLm1lc3NhZ2VzLmluCkBAIC0xNTYsNyArMTU2LDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFn
ZSB7CiAgICAgQmVnaW5QcmludGluZyh1aW50NjRfdCBmcmFtZUlELCBXZWJLaXQ6OlByaW50SW5m
byBwcmludEluZm8pCiAgICAgRW5kUHJpbnRpbmcoKTsKICAgICBDb21wdXRlUGFnZXNGb3JQcmlu
dGluZyh1aW50NjRfdCBmcmFtZUlELCBXZWJLaXQ6OlByaW50SW5mbyBwcmludEluZm8sIHVpbnQ2
NF90IGNhbGxiYWNrSUQpCi0jaWYgUExBVEZPUk0oTUFDKQorI2lmIFBMQVRGT1JNKE1BQykgfHwg
UExBVEZPUk0oV0lOKQogICAgIERyYXdSZWN0VG9QREYodWludDY0X3QgZnJhbWVJRCwgV2ViQ29y
ZTo6SW50UmVjdCByZWN0LCB1aW50NjRfdCBjYWxsYmFja0lEKQogICAgIERyYXdQYWdlc1RvUERG
KHVpbnQ2NF90IGZyYW1lSUQsIHVpbnQzMl90IGZpcnN0LCB1aW50MzJfdCBjb3VudCwgdWludDY0
X3QgY2FsbGJhY2tJRCkKICNlbmRpZgotLSAKMS43LjMuMwoK
</data>
<flag name="review"
          id="76865"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>