<?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>20973</bug_id>
          
          <creation_ts>2008-09-21 11:33:16 -0700</creation_ts>
          <short_desc>[Qt] SVG patterns are missing</short_desc>
          <delta_ts>2008-09-27 15:51:34 -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>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dirk Schulze">krit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>91998</commentid>
    <comment_count>0</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2008-09-21 11:33:16 -0700</bug_when>
    <thetext>Qt lacks of SVG pattern support.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92001</commentid>
    <comment_count>1</comment_count>
      <attachid>23629</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2008-09-21 11:37:48 -0700</bug_when>
    <thetext>Created attachment 23629
SVGPattern

This patch adds svg pattern support. Only texts are not supported (like on gradients).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92014</commentid>
    <comment_count>2</comment_count>
      <attachid>23629</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-09-21 13:44:05 -0700</bug_when>
    <thetext>Comment on attachment 23629
SVGPattern

+    PassRefPtr&lt;Pattern&gt; pattern;
+    pattern = Pattern::create(tile()-&gt;image(), true, true);

This is an inefficient idiom. It&apos;s more efficient to initialize on the same line the variable is defined on. But also the local variable should be RefPtr, not PassRefPtr. See &lt;http://webkit.org/coding/RefPtr.html&gt; for guidelines.

+    QBrush brush(pattern.get()-&gt;createPlatformPattern(affine));

No need for the call to get() here. You can just use the -&gt; operator normally with smart pointers.

r=me as-is, but I suggest making those two refinements.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92130</commentid>
    <comment_count>3</comment_count>
      <attachid>23651</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2008-09-22 08:37:04 -0700</bug_when>
    <thetext>Created attachment 23651
SVGPattern

Forgot to add QPainter and changed PassRefPtr to RefPtr.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92177</commentid>
    <comment_count>4</comment_count>
      <attachid>23651</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-09-22 13:25:34 -0700</bug_when>
    <thetext>Comment on attachment 23651
SVGPattern

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>93090</commentid>
    <comment_count>5</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2008-09-27 15:51:34 -0700</bug_when>
    <thetext>Landed as r37006.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23629</attachid>
            <date>2008-09-21 11:37:48 -0700</date>
            <delta_ts>2008-09-22 08:37:04 -0700</delta_ts>
            <desc>SVGPattern</desc>
            <filename>Qt-SVG-pattern.patch</filename>
            <type>text/plain</type>
            <size>4116</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNjczOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDgtMDktMjEgIERpcmsgU2NodWx6ZSAgPHZiczg1QGdteC5kZT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBT
VkcgcGF0dGVybiBzdXBwb3J0IHRvIFF0LgorCisgICAgICAgIFtRdF0gU1ZHIHBhdHRlcm5zIGFy
ZSBtaXNzaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDk3MworCisgICAgICAgICogc3ZnL2dyYXBoaWNzL3F0L1NWR1BhaW50U2VydmVyUGF0dGVy
blF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1BhaW50U2VydmVyUGF0dGVybjo6c2V0dXAp
OgorCiAyMDA4LTA5LTIxICBEaXJrIFNjaHVsemUgIDx2YnM4NUBnbXguZGU+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgZXNlaWRlbC4gIExhbmRlZCBieSBlc2VpZGVsLgpJbmRleDogV2ViQ29yZS9z
dmcvZ3JhcGhpY3MvcXQvU1ZHUGFpbnRTZXJ2ZXJQYXR0ZXJuUXQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvc3ZnL2dyYXBoaWNzL3F0L1NWR1BhaW50U2VydmVyUGF0dGVyblF0LmNwcAkocmV2
aXNpb24gMzY3MzgpCisrKyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9xdC9TVkdQYWludFNlcnZlclBh
dHRlcm5RdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEsNyArMSw2IEBACiAvKgogICAgIENvcHly
aWdodCAoQykgMjAwNiBOaWtvbGFzIFppbW1lcm1hbm4gPHdpbGRmb3hAa2RlLm9yZz4KLQotICAg
IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBLREUgcHJvamVjdAorICAgIENvcHlyaWdodCAoQykg
MjAwOCBEaXJrIFNjaHVsemUgPHZiczg1QGdteC5kZT4KIAogICAgIFRoaXMgbGlicmFyeSBpcyBm
cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAgICBtb2RpZnkg
aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAt
MjQsNTEgKzIzLDU1IEBACiAjaWYgRU5BQkxFKFNWRykKICNpbmNsdWRlICJTVkdQYWludFNlcnZl
clBhdHRlcm4uaCIKIAorI2luY2x1ZGUgIkFmZmluZVRyYW5zZm9ybS5oIgorI2luY2x1ZGUgIkdy
YXBoaWNzQ29udGV4dC5oIgorI2luY2x1ZGUgIkltYWdlQnVmZmVyLmgiCisjaW5jbHVkZSAiUGF0
dGVybi5oIgorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgorI2luY2x1ZGUgIlNWR1BhdHRlcm5F
bGVtZW50LmgiCisKKyNpbmNsdWRlIDxRUGFpbnRlcj4KKyNpbmNsdWRlIDxRUGFpbnRlclBhdGg+
CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogYm9vbCBTVkdQYWludFNlcnZlclBhdHRlcm46OnNl
dHVwKEdyYXBoaWNzQ29udGV4dComIGNvbnRleHQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0
LCBTVkdQYWludFRhcmdldFR5cGUgdHlwZSwgYm9vbCBpc1BhaW50aW5nVGV4dCkgY29uc3QKIHsK
LSAgICAvLyBGSVhNRTogUmVhY3RpdmF0ZSBvbGQgcGF0dGVybiBjb2RlCisgICAgUVBhaW50ZXJQ
YXRoKiBwYXRoKGNvbnRleHQgPyBjb250ZXh0LT5jdXJyZW50UGF0aCgpIDogMCk7CisgICAgUV9B
U1NFUlQocGF0aCk7CiAKLS8qCi0gICAgUVBhaW50ZXIqIHBhaW50ZXIoY29udGV4dCA/IGNvbnRl
eHQtPnBsYXRmb3JtQ29udGV4dCgpIDogMCk7Ci0gICAgUV9BU1NFUlQocGFpbnRlcik7CisgICAg
UmVuZGVyU3R5bGUqIHN0eWxlID0gb2JqZWN0ID8gb2JqZWN0LT5zdHlsZSgpIDogMDsKKyAgICBj
b25zdCBTVkdSZW5kZXJTdHlsZSogc3ZnU3R5bGUgPSBvYmplY3QgPyBvYmplY3QtPnN0eWxlKCkt
PnN2Z1N0eWxlKCkgOiAwOwogCi0gICAgUVBhaW50ZXJQYXRoKiBfcGF0aCA9IHN0YXRpY19jYXN0
PFFQYWludGVyUGF0aCo+KHF0Q29udGV4dC0+cGF0aCgpKTsKLSAgICBRX0FTU0VSVChfcGF0aCAh
PSAwKTsKKyAgICBGbG9hdFJlY3QgdGFyZ2V0UmVjdCA9IG9iamVjdC0+cmVsYXRpdmVCQm94KGZh
bHNlKTsKKyAgICBtX293bmVyRWxlbWVudC0+YnVpbGRQYXR0ZXJuKHRhcmdldFJlY3QpOwogCi0g
ICAgUmVuZGVyU3R5bGUqIHJlbmRlclN0eWxlID0gb2JqZWN0LT5zdHlsZSgpOworICAgIGlmICgh
dGlsZSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgCisgICAgUGFzc1JlZlB0cjxQYXR0ZXJu
PiBwYXR0ZXJuOworICAgIHBhdHRlcm4gPSBQYXR0ZXJuOjpjcmVhdGUodGlsZSgpLT5pbWFnZSgp
LCB0cnVlLCB0cnVlKTsKIAogICAgIHBhaW50ZXItPnNldFBlbihRdDo6Tm9QZW4pOwogICAgIHBh
aW50ZXItPnNldEJydXNoKFF0OjpOb0JydXNoKTsKLSAgICBRSW1hZ2UqIHBhdHRlcm5pbWFnZSA9
IG5ldyBRSW1hZ2UodGlsZSgpLT5iaXRzKCksIHRpbGUoKS0+d2lkdGgoKSwgdGlsZSgpLT5oZWln
aHQoKSwgUUltYWdlOjpGb3JtYXRfQVJHQjMyX1ByZW11bHRpcGxpZWQpOwotICAgIHBhdHRlcm5p
bWFnZS0+c2V0QWxwaGFCdWZmZXIodHJ1ZSk7Ci0gICAgaWYgKHR5cGUgJiBBUFBMWV9UT19GSUxM
KSB7Ci0gICAgICAgIC8vUUNvbG9yIGMgPSBjb2xvcigpOwotICAgICAgICAvL2Muc2V0QWxwaGFG
KHN0eWxlLT5maWxsUGFpbnRlcigpLT5vcGFjaXR5KCkgKiBzdHlsZS0+b3BhY2l0eSgpICogb3Bh
Y2l0eSgpKTsKLSAgICAgICAgS1JlbmRlcmluZ0ZpbGxQYWludGVyIGZpbGxQYWludGVyID0gS1NW
R1BhaW50ZXJGYWN0b3J5OjpmaWxsUGFpbnRlcihyZW5kZXJTdHlsZSwgb2JqZWN0KTsKLSAgICAg
ICAgUUJydXNoIGJydXNoKFFQaXhtYXA6OmZyb21JbWFnZSgqcGF0dGVybmltYWdlKSk7Ci0gICAg
ICAgIF9wYXRoLT5zZXRGaWxsUnVsZShmaWxsUGFpbnRlci5maWxsUnVsZSgpID09IFJVTEVfRVZF
Tk9ERCA/IFF0OjpPZGRFdmVuRmlsbCA6IFF0OjpXaW5kaW5nRmlsbCk7CisKKyAgICBBZmZpbmVU
cmFuc2Zvcm0gYWZmaW5lOworICAgIGFmZmluZS50cmFuc2xhdGUocGF0dGVybkJvdW5kYXJpZXMo
KS54KCksIHBhdHRlcm5Cb3VuZGFyaWVzKCkueSgpKTsKKyAgICBhZmZpbmUubXVsdGlwbHkocGF0
dGVyblRyYW5zZm9ybSgpKTsKKworICAgIFFCcnVzaCBicnVzaChwYXR0ZXJuLmdldCgpLT5jcmVh
dGVQbGF0Zm9ybVBhdHRlcm4oYWZmaW5lKSk7CisgICAgaWYgKCh0eXBlICYgQXBwbHlUb0ZpbGxU
YXJnZXRUeXBlKSAmJiBzdmdTdHlsZS0+aGFzRmlsbCgpKSB7CiAgICAgICAgIHBhaW50ZXItPnNl
dEJydXNoKGJydXNoKTsKKyAgICAgICAgY29udGV4dC0+c2V0RmlsbFJ1bGUoc3ZnU3R5bGUtPmZp
bGxSdWxlKCkpOwogICAgIH0KLSAgICBpZiAodHlwZSAmIEFQUExZX1RPX1NUUk9LRSkgewotICAg
ICAgICAvL1FDb2xvciBjID0gY29sb3IoKTsKLSAgICAgICAgLy9jLnNldEFscGhhRihzdHlsZS0+
c3Ryb2tlUGFpbnRlcigpLT5vcGFjaXR5KCkgKiBzdHlsZS0+b3BhY2l0eSgpICogb3BhY2l0eSgp
KTsKLSAgICAgICAgS1JlbmRlcmluZ1N0cm9rZVBhaW50ZXIgc3Ryb2tlUGFpbnRlciA9IEtTVkdQ
YWludGVyRmFjdG9yeTo6c3Ryb2tlUGFpbnRlcihyZW5kZXJTdHlsZSwgb2JqZWN0KTsKIAorICAg
IGlmICgodHlwZSAmIEFwcGx5VG9TdHJva2VUYXJnZXRUeXBlKSAmJiBzdmdTdHlsZS0+aGFzU3Ry
b2tlKCkpIHsKICAgICAgICAgUVBlbiBwZW47Ci0gICAgICAgIFFCcnVzaCBicnVzaChRUGl4bWFw
Ojpmcm9tSW1hZ2UoKnBhdHRlcm5pbWFnZSkpOwotCi0gICAgICAgIHNldFBlblByb3BlcnRpZXMo
c3Ryb2tlUGFpbnRlciwgcGVuKTsKICAgICAgICAgcGVuLnNldEJydXNoKGJydXNoKTsKICAgICAg
ICAgcGFpbnRlci0+c2V0UGVuKHBlbik7CisgICAgICAgIGFwcGx5U3Ryb2tlU3R5bGVUb0NvbnRl
eHQoY29udGV4dCwgc3R5bGUsIG9iamVjdCk7CiAgICAgfQogCi0gICAgcGFpbnRlci0+ZHJhd1Bh
dGgoKl9wYXRoKTsKLQotICAgIGRlbGV0ZSBwYXR0ZXJuaW1hZ2U7Ci0qLwotCiAgICAgcmV0dXJu
IHRydWU7CiB9CiAK
</data>
<flag name="review"
          id="10593"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23651</attachid>
            <date>2008-09-22 08:37:04 -0700</date>
            <delta_ts>2008-09-22 13:25:34 -0700</delta_ts>
            <desc>SVGPattern</desc>
            <filename>Qt-SVG-pattern.patch</filename>
            <type>text/plain</type>
            <size>4075</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNjc2NSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDgtMDktMjIgIERpcmsgU2NodWx6ZSAgPHZiczg1QGdteC5kZT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBT
VkcgcGF0dGVybiBzdXBwb3J0IHRvIFF0LgorCisgICAgICAgIFtRdF0gU1ZHIHBhdHRlcm5zIGFy
ZSBtaXNzaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDk3MworCisgICAgICAgICogc3ZnL2dyYXBoaWNzL3F0L1NWR1BhaW50U2VydmVyUGF0dGVy
blF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1BhaW50U2VydmVyUGF0dGVybjo6c2V0dXAp
OgorCiAyMDA4LTA5LTIyICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KIAogICAgICAg
ICBXaW5kb3dzIGJ1aWxkIGZpeApJbmRleDogV2ViQ29yZS9zdmcvZ3JhcGhpY3MvcXQvU1ZHUGFp
bnRTZXJ2ZXJQYXR0ZXJuUXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL2dyYXBoaWNz
L3F0L1NWR1BhaW50U2VydmVyUGF0dGVyblF0LmNwcAkocmV2aXNpb24gMzY3NjUpCisrKyBXZWJD
b3JlL3N2Zy9ncmFwaGljcy9xdC9TVkdQYWludFNlcnZlclBhdHRlcm5RdC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNyArMSw2IEBACiAvKgogICAgIENvcHlyaWdodCAoQykgMjAwNiBOaWtvbGFz
IFppbW1lcm1hbm4gPHdpbGRmb3hAa2RlLm9yZz4KLQotICAgIFRoaXMgZmlsZSBpcyBwYXJ0IG9m
IHRoZSBLREUgcHJvamVjdAorICAgIENvcHlyaWdodCAoQykgMjAwOCBEaXJrIFNjaHVsemUgPHZi
czg1QGdteC5kZT4KIAogICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2Fu
IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9m
IHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtMjQsNTEgKzIzLDU3IEBACiAjaWYg
RU5BQkxFKFNWRykKICNpbmNsdWRlICJTVkdQYWludFNlcnZlclBhdHRlcm4uaCIKIAorI2luY2x1
ZGUgIkFmZmluZVRyYW5zZm9ybS5oIgorI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgorI2lu
Y2x1ZGUgIkltYWdlQnVmZmVyLmgiCisjaW5jbHVkZSAiUGF0dGVybi5oIgorI2luY2x1ZGUgIlJl
bmRlck9iamVjdC5oIgorI2luY2x1ZGUgIlNWR1BhdHRlcm5FbGVtZW50LmgiCisKKyNpbmNsdWRl
IDxRUGFpbnRlcj4KKyNpbmNsdWRlIDxRUGFpbnRlclBhdGg+CisKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogYm9vbCBTVkdQYWludFNlcnZlclBhdHRlcm46OnNldHVwKEdyYXBoaWNzQ29udGV4dCom
IGNvbnRleHQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0LCBTVkdQYWludFRhcmdldFR5cGUg
dHlwZSwgYm9vbCBpc1BhaW50aW5nVGV4dCkgY29uc3QKIHsKLSAgICAvLyBGSVhNRTogUmVhY3Rp
dmF0ZSBvbGQgcGF0dGVybiBjb2RlCi0KLS8qCiAgICAgUVBhaW50ZXIqIHBhaW50ZXIoY29udGV4
dCA/IGNvbnRleHQtPnBsYXRmb3JtQ29udGV4dCgpIDogMCk7CiAgICAgUV9BU1NFUlQocGFpbnRl
cik7CiAKLSAgICBRUGFpbnRlclBhdGgqIF9wYXRoID0gc3RhdGljX2Nhc3Q8UVBhaW50ZXJQYXRo
Kj4ocXRDb250ZXh0LT5wYXRoKCkpOwotICAgIFFfQVNTRVJUKF9wYXRoICE9IDApOworICAgIFFQ
YWludGVyUGF0aCogcGF0aChjb250ZXh0ID8gY29udGV4dC0+Y3VycmVudFBhdGgoKSA6IDApOwor
ICAgIFFfQVNTRVJUKHBhdGgpOworCisgICAgUmVuZGVyU3R5bGUqIHN0eWxlID0gb2JqZWN0ID8g
b2JqZWN0LT5zdHlsZSgpIDogMDsKKyAgICBjb25zdCBTVkdSZW5kZXJTdHlsZSogc3ZnU3R5bGUg
PSBvYmplY3QgPyBvYmplY3QtPnN0eWxlKCktPnN2Z1N0eWxlKCkgOiAwOworCisgICAgRmxvYXRS
ZWN0IHRhcmdldFJlY3QgPSBvYmplY3QtPnJlbGF0aXZlQkJveChmYWxzZSk7CisgICAgbV9vd25l
ckVsZW1lbnQtPmJ1aWxkUGF0dGVybih0YXJnZXRSZWN0KTsKIAotICAgIFJlbmRlclN0eWxlKiBy
ZW5kZXJTdHlsZSA9IG9iamVjdC0+c3R5bGUoKTsKKyAgICBpZiAoIXRpbGUoKSkKKyAgICAgICAg
cmV0dXJuIGZhbHNlOworIAorICAgIFJlZlB0cjxQYXR0ZXJuPiBwYXR0ZXJuID0gUGF0dGVybjo6
Y3JlYXRlKHRpbGUoKS0+aW1hZ2UoKSwgdHJ1ZSwgdHJ1ZSk7CiAKICAgICBwYWludGVyLT5zZXRQ
ZW4oUXQ6Ok5vUGVuKTsKICAgICBwYWludGVyLT5zZXRCcnVzaChRdDo6Tm9CcnVzaCk7Ci0gICAg
UUltYWdlKiBwYXR0ZXJuaW1hZ2UgPSBuZXcgUUltYWdlKHRpbGUoKS0+Yml0cygpLCB0aWxlKCkt
PndpZHRoKCksIHRpbGUoKS0+aGVpZ2h0KCksIFFJbWFnZTo6Rm9ybWF0X0FSR0IzMl9QcmVtdWx0
aXBsaWVkKTsKLSAgICBwYXR0ZXJuaW1hZ2UtPnNldEFscGhhQnVmZmVyKHRydWUpOwotICAgIGlm
ICh0eXBlICYgQVBQTFlfVE9fRklMTCkgewotICAgICAgICAvL1FDb2xvciBjID0gY29sb3IoKTsK
LSAgICAgICAgLy9jLnNldEFscGhhRihzdHlsZS0+ZmlsbFBhaW50ZXIoKS0+b3BhY2l0eSgpICog
c3R5bGUtPm9wYWNpdHkoKSAqIG9wYWNpdHkoKSk7Ci0gICAgICAgIEtSZW5kZXJpbmdGaWxsUGFp
bnRlciBmaWxsUGFpbnRlciA9IEtTVkdQYWludGVyRmFjdG9yeTo6ZmlsbFBhaW50ZXIocmVuZGVy
U3R5bGUsIG9iamVjdCk7Ci0gICAgICAgIFFCcnVzaCBicnVzaChRUGl4bWFwOjpmcm9tSW1hZ2Uo
KnBhdHRlcm5pbWFnZSkpOwotICAgICAgICBfcGF0aC0+c2V0RmlsbFJ1bGUoZmlsbFBhaW50ZXIu
ZmlsbFJ1bGUoKSA9PSBSVUxFX0VWRU5PREQgPyBRdDo6T2RkRXZlbkZpbGwgOiBRdDo6V2luZGlu
Z0ZpbGwpOworCisgICAgQWZmaW5lVHJhbnNmb3JtIGFmZmluZTsKKyAgICBhZmZpbmUudHJhbnNs
YXRlKHBhdHRlcm5Cb3VuZGFyaWVzKCkueCgpLCBwYXR0ZXJuQm91bmRhcmllcygpLnkoKSk7Cisg
ICAgYWZmaW5lLm11bHRpcGx5KHBhdHRlcm5UcmFuc2Zvcm0oKSk7CisKKyAgICBRQnJ1c2ggYnJ1
c2gocGF0dGVybi0+Y3JlYXRlUGxhdGZvcm1QYXR0ZXJuKGFmZmluZSkpOworICAgIGlmICgodHlw
ZSAmIEFwcGx5VG9GaWxsVGFyZ2V0VHlwZSkgJiYgc3ZnU3R5bGUtPmhhc0ZpbGwoKSkgewogICAg
ICAgICBwYWludGVyLT5zZXRCcnVzaChicnVzaCk7CisgICAgICAgIGNvbnRleHQtPnNldEZpbGxS
dWxlKHN2Z1N0eWxlLT5maWxsUnVsZSgpKTsKICAgICB9Ci0gICAgaWYgKHR5cGUgJiBBUFBMWV9U
T19TVFJPS0UpIHsKLSAgICAgICAgLy9RQ29sb3IgYyA9IGNvbG9yKCk7Ci0gICAgICAgIC8vYy5z
ZXRBbHBoYUYoc3R5bGUtPnN0cm9rZVBhaW50ZXIoKS0+b3BhY2l0eSgpICogc3R5bGUtPm9wYWNp
dHkoKSAqIG9wYWNpdHkoKSk7Ci0gICAgICAgIEtSZW5kZXJpbmdTdHJva2VQYWludGVyIHN0cm9r
ZVBhaW50ZXIgPSBLU1ZHUGFpbnRlckZhY3Rvcnk6OnN0cm9rZVBhaW50ZXIocmVuZGVyU3R5bGUs
IG9iamVjdCk7CiAKKyAgICBpZiAoKHR5cGUgJiBBcHBseVRvU3Ryb2tlVGFyZ2V0VHlwZSkgJiYg
c3ZnU3R5bGUtPmhhc1N0cm9rZSgpKSB7CiAgICAgICAgIFFQZW4gcGVuOwotICAgICAgICBRQnJ1
c2ggYnJ1c2goUVBpeG1hcDo6ZnJvbUltYWdlKCpwYXR0ZXJuaW1hZ2UpKTsKLQotICAgICAgICBz
ZXRQZW5Qcm9wZXJ0aWVzKHN0cm9rZVBhaW50ZXIsIHBlbik7CiAgICAgICAgIHBlbi5zZXRCcnVz
aChicnVzaCk7CiAgICAgICAgIHBhaW50ZXItPnNldFBlbihwZW4pOworICAgICAgICBhcHBseVN0
cm9rZVN0eWxlVG9Db250ZXh0KGNvbnRleHQsIHN0eWxlLCBvYmplY3QpOwogICAgIH0KIAotICAg
IHBhaW50ZXItPmRyYXdQYXRoKCpfcGF0aCk7Ci0KLSAgICBkZWxldGUgcGF0dGVybmltYWdlOwot
Ki8KLQogICAgIHJldHVybiB0cnVlOwogfQogCg==
</data>
<flag name="review"
          id="10603"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>