<?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>34867</bug_id>
          
          <creation_ts>2010-02-11 17:46:31 -0800</creation_ts>
          <short_desc>DatabaseAuthorizer should allow the use of CREATE/DROP VIRTUAL TABLE</short_desc>
          <delta_ts>2010-02-19 19:10:06 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dumitru Daniliuc">dumi</reporter>
          <assigned_to name="Dumitru Daniliuc">dumi</assigned_to>
          <cc>ericu</cc>
    
    <cc>michaeln</cc>
    
    <cc>scarybeasts</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>189846</commentid>
    <comment_count>0</comment_count>
    <who name="Dumitru Daniliuc">dumi</who>
    <bug_when>2010-02-11 17:46:31 -0800</bug_when>
    <thetext>Chromium needs virtual tables in order to use FTS. I&apos;m not sure why CREATE/DROP VIRTUAL TABLE have been disabled in WebKit since forever, but it seems to me like these instructions don&apos;t pose any security threat and should be allowed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>189862</commentid>
    <comment_count>1</comment_count>
      <attachid>48602</attachid>
    <who name="Dumitru Daniliuc">dumi</who>
    <bug_when>2010-02-11 18:29:49 -0800</bug_when>
    <thetext>Created attachment 48602
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>190823</commentid>
    <comment_count>2</comment_count>
      <attachid>48849</attachid>
    <who name="Dumitru Daniliuc">dumi</who>
    <bug_when>2010-02-16 17:08:17 -0800</bug_when>
    <thetext>Created attachment 48849
patch

Oops, uploaded the wrong patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191152</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Nordman">michaeln</who>
    <bug_when>2010-02-17 12:31:51 -0800</bug_when>
    <thetext>If there is no reason to disallow them, why filter on moduleName? Maybe just denyBasedOnTableName(tableName) and not test the &apos;moduleName&apos; at all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191201</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Evans">scarybeasts</who>
    <bug_when>2010-02-17 14:17:37 -0800</bug_when>
    <thetext>Interesting. If there&apos;s no user demand for direct creation of virtual tables, I&apos;d be tempted to play it safe, and restrict them to internal usage by fts2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191710</commentid>
    <comment_count>5</comment_count>
      <attachid>48849</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-02-18 13:21:28 -0800</bug_when>
    <thetext>Comment on attachment 48849
patch

ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192134</commentid>
    <comment_count>6</comment_count>
    <who name="Dumitru Daniliuc">dumi</who>
    <bug_when>2010-02-19 19:10:06 -0800</bug_when>
    <thetext>Landed as r54990.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48602</attachid>
            <date>2010-02-11 18:29:49 -0800</date>
            <delta_ts>2010-02-16 17:08:17 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>9952</size>
            <attacher name="Dumitru Daniliuc">dumi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NDQ1NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjIgQEAKKzIwMTAtMDItMDUgIER1bWl0cnUgRGFuaWxpdWMgIDxkdW1pQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBZGRpbmcgYSB3YXkgdG8gZ2V0IHRoZSBzZXQgb2YgYWxsIG9wZW4gZGF0YWJhc2UgaGFuZGxl
cyBwb2ludGluZworICAgICAgICB0byBhIGdpdmVuIGRhdGFiYXNlLiBTb21ldGltZXMgd2UgbmVl
ZCB0byBiZSBhYmxlIHRvIGNsb3NlIGFsbAorICAgICAgICBoYW5kbGVzIHRvIGEgZGF0YWJhc2Ug
YXMgc29vbiBhcyBwb3NzaWJsZSAodG8gZGVsZXRlIHRoZSBEQiBmaWxlLAorICAgICAgICBmb3Ig
ZXhhbXBsZSkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM0NjE5CisKKyAgICAgICAgKiBzdG9yYWdlL0RhdGFiYXNlVHJhY2tlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpEYXRhYmFzZVRyYWNrZXI6OmdldE9wZW5EYXRhYmFzZXMpOgorICAgICAg
ICAqIHN0b3JhZ2UvRGF0YWJhc2VUcmFja2VyLmg6CisgICAgICAgICogc3RvcmFnZS9jaHJvbWl1
bS9EYXRhYmFzZVRyYWNrZXJDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEYXRhYmFz
ZVRyYWNrZXI6OmFkZE9wZW5EYXRhYmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpEYXRhYmFzZVRy
YWNrZXI6OnJlbW92ZU9wZW5EYXRhYmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpEYXRhYmFzZVRy
YWNrZXI6OmdldE9wZW5EYXRhYmFzZXMpOgorCiAyMDEwLTAyLTA1ICBDaHJpcyBNYXJyaW4gIDxj
bWFycmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCklu
ZGV4OiBXZWJDb3JlL3N0b3JhZ2UvRGF0YWJhc2VUcmFja2VyLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3N0b3JhZ2UvRGF0YWJhc2VUcmFja2VyLmNwcAkocmV2aXNpb24gNTQ0NTYpCisrKyBX
ZWJDb3JlL3N0b3JhZ2UvRGF0YWJhc2VUcmFja2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDc4
LDYgKzQ3OCwyNCBAQCB2b2lkIERhdGFiYXNlVHJhY2tlcjo6cmVtb3ZlT3BlbkRhdGFiYXNlCiAg
ICAgZGVsZXRlIG5hbWVNYXA7CiB9CiAKK3ZvaWQgRGF0YWJhc2VUcmFja2VyOjpnZXRPcGVuRGF0
YWJhc2VzKFNlY3VyaXR5T3JpZ2luKiBvcmlnaW4sIGNvbnN0IFN0cmluZyYgbmFtZSwgSGFzaFNl
dDxSZWZQdHI8RGF0YWJhc2U+ID4qIGRhdGFiYXNlcykKK3sKKyAgICBNdXRleExvY2tlciBvcGVu
RGF0YWJhc2VNYXBMb2NrKG1fb3BlbkRhdGFiYXNlTWFwR3VhcmQpOworICAgIGlmICghbV9vcGVu
RGF0YWJhc2VNYXApCisgICAgICAgIHJldHVybjsKKworICAgIERhdGFiYXNlTmFtZU1hcCogbmFt
ZU1hcCA9IG1fb3BlbkRhdGFiYXNlTWFwLT5nZXQob3JpZ2luKTsKKyAgICBpZiAoIW5hbWVNYXAp
CisgICAgICAgIHJldHVybjsKKworICAgIERhdGFiYXNlU2V0KiBkYXRhYmFzZVNldCA9IG5hbWVN
YXAtPmdldChuYW1lKTsKKyAgICBpZiAoIWRhdGFiYXNlU2V0KQorICAgICAgICByZXR1cm47CisK
KyAgICBmb3IgKERhdGFiYXNlU2V0OjppdGVyYXRvciBpdCA9IGRhdGFiYXNlU2V0LT5iZWdpbigp
OyBpdCAhPSBkYXRhYmFzZVNldC0+ZW5kKCk7ICsraXQpCisgICAgICAgIGRhdGFiYXNlcy0+YWRk
KCppdCk7Cit9CisKIHVuc2lnbmVkIGxvbmcgbG9uZyBEYXRhYmFzZVRyYWNrZXI6OnVzYWdlRm9y
T3JpZ2luKFNlY3VyaXR5T3JpZ2luKiBvcmlnaW4pCiB7CiAgICAgQVNTRVJUKGN1cnJlbnRUaHJl
YWQoKSA9PSBtX3RocmVhZCk7CkluZGV4OiBXZWJDb3JlL3N0b3JhZ2UvRGF0YWJhc2VUcmFja2Vy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdG9yYWdlL0RhdGFiYXNlVHJhY2tlci5oCShyZXZp
c2lvbiA1NDQ1NikKKysrIFdlYkNvcmUvc3RvcmFnZS9EYXRhYmFzZVRyYWNrZXIuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMzIsMTMgKzMyLDEzIEBACiAjaWYgRU5BQkxFKERBVEFCQVNFKQogCiAjaW5j
bHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlICJTdHJpbmdIYXNoLmgiCisjaW5jbHVk
ZSA8d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogCiAjaWYgIVBMQVRG
T1JNKENIUk9NSVVNKQogI2luY2x1ZGUgIkRhdGFiYXNlRGV0YWlscy5oIgogI2luY2x1ZGUgIlNR
TGl0ZURhdGFiYXNlLmgiCi0jaW5jbHVkZSAiU3RyaW5nSGFzaC5oIgotI2luY2x1ZGUgPHd0Zi9I
YXNoTWFwLmg+Ci0jaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvT3duUHRy
Lmg+CiAjZW5kaWYgLy8gIVBMQVRGT1JNKENIUk9NSVVNKQogCkBAIC00OCwxMSArNDgsMTIgQEAg
Y2xhc3MgRGF0YWJhc2U7CiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogY2xhc3MgU2Vj
dXJpdHlPcmlnaW47CiAKK3N0cnVjdCBTZWN1cml0eU9yaWdpbkhhc2g7CisKICNpZiAhUExBVEZP
Uk0oQ0hST01JVU0pCiBjbGFzcyBEYXRhYmFzZVRyYWNrZXJDbGllbnQ7CiBjbGFzcyBPcmlnaW5R
dW90YU1hbmFnZXI7CiAKLXN0cnVjdCBTZWN1cml0eU9yaWdpbkhhc2g7CiBzdHJ1Y3QgU2VjdXJp
dHlPcmlnaW5UcmFpdHM7CiAjZW5kaWYgLy8gIVBMQVRGT1JNKENIUk9NSVVNKQogCkBAIC02OSwx
MiArNzAsMjAgQEAgcHVibGljOgogCiAgICAgdm9pZCBhZGRPcGVuRGF0YWJhc2UoRGF0YWJhc2Uq
KTsKICAgICB2b2lkIHJlbW92ZU9wZW5EYXRhYmFzZShEYXRhYmFzZSopOworICAgIHZvaWQgZ2V0
T3BlbkRhdGFiYXNlcyhTZWN1cml0eU9yaWdpbiogb3JpZ2luLCBjb25zdCBTdHJpbmcmIG5hbWUs
IEhhc2hTZXQ8UmVmUHRyPERhdGFiYXNlPiA+KiBkYXRhYmFzZXMpOwogCiAgICAgdW5zaWduZWQg
bG9uZyBsb25nIGdldE1heFNpemVGb3JEYXRhYmFzZShjb25zdCBEYXRhYmFzZSopOwogCiBwcml2
YXRlOgogICAgIERhdGFiYXNlVHJhY2tlcigpOwogCisgICAgdHlwZWRlZiBIYXNoU2V0PERhdGFi
YXNlKj4gRGF0YWJhc2VTZXQ7CisgICAgdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgRGF0YWJhc2VT
ZXQqPiBEYXRhYmFzZU5hbWVNYXA7CisgICAgdHlwZWRlZiBIYXNoTWFwPFJlZlB0cjxTZWN1cml0
eU9yaWdpbj4sIERhdGFiYXNlTmFtZU1hcCosIFNlY3VyaXR5T3JpZ2luSGFzaD4gRGF0YWJhc2VP
cmlnaW5NYXA7CisKKyAgICBNdXRleCBtX29wZW5EYXRhYmFzZU1hcEd1YXJkOworICAgIG11dGFi
bGUgT3duUHRyPERhdGFiYXNlT3JpZ2luTWFwPiBtX29wZW5EYXRhYmFzZU1hcDsKKwogI2lmICFQ
TEFURk9STShDSFJPTUlVTSkKIHB1YmxpYzoKICAgICB2b2lkIHNldERhdGFiYXNlRGlyZWN0b3J5
UGF0aChjb25zdCBTdHJpbmcmKTsKQEAgLTEyMywxMyArMTMyLDYgQEAgcHJpdmF0ZToKICAgICBN
dXRleCBtX3F1b3RhTWFwR3VhcmQ7CiAgICAgbXV0YWJsZSBPd25QdHI8UXVvdGFNYXA+IG1fcXVv
dGFNYXA7CiAKLSAgICB0eXBlZGVmIEhhc2hTZXQ8RGF0YWJhc2UqPiBEYXRhYmFzZVNldDsKLSAg
ICB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBEYXRhYmFzZVNldCo+IERhdGFiYXNlTmFtZU1hcDsK
LSAgICB0eXBlZGVmIEhhc2hNYXA8UmVmUHRyPFNlY3VyaXR5T3JpZ2luPiwgRGF0YWJhc2VOYW1l
TWFwKiwgU2VjdXJpdHlPcmlnaW5IYXNoPiBEYXRhYmFzZU9yaWdpbk1hcDsKLQotICAgIE11dGV4
IG1fb3BlbkRhdGFiYXNlTWFwR3VhcmQ7Ci0gICAgbXV0YWJsZSBPd25QdHI8RGF0YWJhc2VPcmln
aW5NYXA+IG1fb3BlbkRhdGFiYXNlTWFwOwotCiAgICAgT3duUHRyPE9yaWdpblF1b3RhTWFuYWdl
cj4gbV9xdW90YU1hbmFnZXI7CiAKICAgICBTdHJpbmcgbV9kYXRhYmFzZURpcmVjdG9yeVBhdGg7
CkluZGV4OiBXZWJDb3JlL3N0b3JhZ2UvY2hyb21pdW0vRGF0YWJhc2VUcmFja2VyQ2hyb21pdW0u
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3RvcmFnZS9jaHJvbWl1bS9EYXRhYmFzZVRyYWNr
ZXJDaHJvbWl1bS5jcHAJKHJldmlzaW9uIDU0NDU2KQorKysgV2ViQ29yZS9zdG9yYWdlL2Nocm9t
aXVtL0RhdGFiYXNlVHJhY2tlckNocm9taXVtLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzgsNiAr
MzgsNyBAQAogI2luY2x1ZGUgIlF1b3RhVHJhY2tlci5oIgogI2luY2x1ZGUgIlNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgorI2luY2x1ZGUgIlNl
Y3VyaXR5T3JpZ2luSGFzaC5oIgogI2luY2x1ZGUgIlNRTGl0ZUZpbGVTeXN0ZW0uaCIKICNpbmNs
dWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CkBAIC03Niw2
ICs3NywyNSBAQCBTdHJpbmcgRGF0YWJhc2VUcmFja2VyOjpmdWxsUGF0aEZvckRhdGFiCiB2b2lk
IERhdGFiYXNlVHJhY2tlcjo6YWRkT3BlbkRhdGFiYXNlKERhdGFiYXNlKiBkYXRhYmFzZSkKIHsK
ICAgICBBU1NFUlQoZGF0YWJhc2UtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+aXNDb250ZXh0
VGhyZWFkKCkpOworICAgIE11dGV4TG9ja2VyIG9wZW5EYXRhYmFzZU1hcExvY2sobV9vcGVuRGF0
YWJhc2VNYXBHdWFyZCk7CisgICAgaWYgKCFtX29wZW5EYXRhYmFzZU1hcCkKKyAgICAgICAgbV9v
cGVuRGF0YWJhc2VNYXAuc2V0KG5ldyBEYXRhYmFzZU9yaWdpbk1hcCgpKTsKKworICAgIERhdGFi
YXNlTmFtZU1hcCogbmFtZU1hcCA9IG1fb3BlbkRhdGFiYXNlTWFwLT5nZXQoZGF0YWJhc2UtPnNl
Y3VyaXR5T3JpZ2luKCkpOworICAgIGlmICghbmFtZU1hcCkgeworICAgICAgICBuYW1lTWFwID0g
bmV3IERhdGFiYXNlTmFtZU1hcCgpOworICAgICAgICBtX29wZW5EYXRhYmFzZU1hcC0+c2V0KGRh
dGFiYXNlLT5zZWN1cml0eU9yaWdpbigpLCBuYW1lTWFwKTsKKyAgICB9CisKKyAgICBTdHJpbmcg
bmFtZShkYXRhYmFzZS0+c3RyaW5nSWRlbnRpZmllcigpKTsKKyAgICBEYXRhYmFzZVNldCogZGF0
YWJhc2VTZXQgPSBuYW1lTWFwLT5nZXQobmFtZSk7CisgICAgaWYgKCFkYXRhYmFzZVNldCkgewor
ICAgICAgICBkYXRhYmFzZVNldCA9IG5ldyBEYXRhYmFzZVNldCgpOworICAgICAgICBuYW1lTWFw
LT5zZXQobmFtZSwgZGF0YWJhc2VTZXQpOworICAgIH0KKworICAgIGRhdGFiYXNlU2V0LT5hZGQo
ZGF0YWJhc2UpOworCiAgICAgRGF0YWJhc2VPYnNlcnZlcjo6ZGF0YWJhc2VPcGVuZWQoZGF0YWJh
c2UpOwogfQogCkBAIC0xMDcsOSArMTI3LDQ2IEBAIHZvaWQgRGF0YWJhc2VUcmFja2VyOjpyZW1v
dmVPcGVuRGF0YWJhc2UKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIE11dGV4TG9ja2Vy
IG9wZW5EYXRhYmFzZU1hcExvY2sobV9vcGVuRGF0YWJhc2VNYXBHdWFyZCk7CisgICAgQVNTRVJU
KG1fb3BlbkRhdGFiYXNlTWFwKTsKKyAgICBEYXRhYmFzZU5hbWVNYXAqIG5hbWVNYXAgPSBtX29w
ZW5EYXRhYmFzZU1hcC0+Z2V0KGRhdGFiYXNlLT5zZWN1cml0eU9yaWdpbigpKTsKKyAgICBBU1NF
UlQobmFtZU1hcCk7CisgICAgU3RyaW5nIG5hbWUoZGF0YWJhc2UtPnN0cmluZ0lkZW50aWZpZXIo
KSk7CisgICAgRGF0YWJhc2VTZXQqIGRhdGFiYXNlU2V0ID0gbmFtZU1hcC0+Z2V0KG5hbWUpOwor
ICAgIEFTU0VSVChkYXRhYmFzZVNldCk7CisgICAgZGF0YWJhc2VTZXQtPnJlbW92ZShkYXRhYmFz
ZSk7CisKKyAgICBpZiAoZGF0YWJhc2VTZXQtPmlzRW1wdHkoKSkgeworICAgICAgICBuYW1lTWFw
LT5yZW1vdmUobmFtZSk7CisgICAgICAgIGRlbGV0ZSBkYXRhYmFzZVNldDsKKyAgICAgICAgaWYg
KG5hbWVNYXAtPmlzRW1wdHkoKSkgeworICAgICAgICAgICAgbV9vcGVuRGF0YWJhc2VNYXAtPnJl
bW92ZShkYXRhYmFzZS0+c2VjdXJpdHlPcmlnaW4oKSk7CisgICAgICAgICAgICBkZWxldGUgbmFt
ZU1hcDsKKyAgICAgICAgfQorICAgIH0KKwogICAgIERhdGFiYXNlT2JzZXJ2ZXI6OmRhdGFiYXNl
Q2xvc2VkKGRhdGFiYXNlKTsKIH0KIAorCit2b2lkIERhdGFiYXNlVHJhY2tlcjo6Z2V0T3BlbkRh
dGFiYXNlcyhTZWN1cml0eU9yaWdpbiogb3JpZ2luLCBjb25zdCBTdHJpbmcmIG5hbWUsIEhhc2hT
ZXQ8UmVmUHRyPERhdGFiYXNlPiA+KiBkYXRhYmFzZXMpCit7CisgICAgTXV0ZXhMb2NrZXIgb3Bl
bkRhdGFiYXNlTWFwTG9jayhtX29wZW5EYXRhYmFzZU1hcEd1YXJkKTsKKyAgICBpZiAoIW1fb3Bl
bkRhdGFiYXNlTWFwKQorICAgICAgICByZXR1cm47CisKKyAgICBEYXRhYmFzZU5hbWVNYXAqIG5h
bWVNYXAgPSBtX29wZW5EYXRhYmFzZU1hcC0+Z2V0KG9yaWdpbik7CisgICAgaWYgKCFuYW1lTWFw
KQorICAgICAgICByZXR1cm47CisKKyAgICBEYXRhYmFzZVNldCogZGF0YWJhc2VTZXQgPSBuYW1l
TWFwLT5nZXQobmFtZSk7CisgICAgaWYgKCFkYXRhYmFzZVNldCkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgZm9yIChEYXRhYmFzZVNldDo6aXRlcmF0b3IgaXQgPSBkYXRhYmFzZVNldC0+YmVnaW4o
KTsgaXQgIT0gZGF0YWJhc2VTZXQtPmVuZCgpOyArK2l0KQorICAgICAgICBkYXRhYmFzZXMtPmFk
ZCgqaXQpOworfQorCiB1bnNpZ25lZCBsb25nIGxvbmcgRGF0YWJhc2VUcmFja2VyOjpnZXRNYXhT
aXplRm9yRGF0YWJhc2UoY29uc3QgRGF0YWJhc2UqIGRhdGFiYXNlKQogewogICAgIEFTU0VSVChj
dXJyZW50VGhyZWFkKCkgPT0gZGF0YWJhc2UtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+ZGF0
YWJhc2VUaHJlYWQoKS0+Z2V0VGhyZWFkSUQoKSk7CkluZGV4OiBXZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cJKHJldmlzaW9u
IDU0NDU2KQorKysgV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE2IEBACisyMDEwLTAyLTA1ICBEdW1pdHJ1IERhbmlsaXVjICA8ZHVtaUBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
QWRkaW5nIGEgd2F5IHRvIGNsb3NlIGFsbCBkYXRhYmFzZSBoYW5kbGVzIHBvaW50aW5nIHRvIGEg
Y2VydGFpbgorICAgICAgICBkYXRhYmFzZSBhcyBzb29uIGFzIHBvc3NpYmxlLgorCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNDYxOQorCisgICAgICAg
ICogcHVibGljL1dlYkRhdGFiYXNlLmg6CisgICAgICAgICogc3JjL1dlYkRhdGFiYXNlLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViRGF0YWJhc2U6OmNsb3NlRGF0YWJhc2VJbW1lZGlhdGVseSk6
CisKIDIwMTAtMDItMDUgIEphbWVzIEhhd2tpbnMgIDxqaGF3a2luc0BjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgTGV2aW4uCkluZGV4OiBXZWJLaXQvY2hyb21pdW0v
cHVibGljL1dlYkRhdGFiYXNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3B1Ymxp
Yy9XZWJEYXRhYmFzZS5oCShyZXZpc2lvbiA1NDQ1NikKKysrIFdlYktpdC9jaHJvbWl1bS9wdWJs
aWMvV2ViRGF0YWJhc2UuaAkod29ya2luZyBjb3B5KQpAQCAtNzIsNiArNzIsOCBAQCBwdWJsaWM6
CiAgICAgV0VCS0lUX0FQSSBzdGF0aWMgdm9pZCB1cGRhdGVEYXRhYmFzZVNpemUoCiAgICAgICAg
IGNvbnN0IFdlYlN0cmluZyYgb3JpZ2luSWRlbnRpZmllciwgY29uc3QgV2ViU3RyaW5nJiBkYXRh
YmFzZU5hbWUsCiAgICAgICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBkYXRhYmFzZVNpemUsIHVuc2ln
bmVkIGxvbmcgbG9uZyBzcGFjZUF2YWlsYWJsZSk7CisgICAgV0VCS0lUX0FQSSBzdGF0aWMgdm9p
ZCBjbG9zZURhdGFiYXNlSW1tZWRpYXRlbHkoCisgICAgICAgIGNvbnN0IFdlYlN0cmluZyYgb3Jp
Z2luSWRlbnRpZmllciwgY29uc3QgV2ViU3RyaW5nJiBkYXRhYmFzZU5hbWUpOwogCiAjaWYgV0VC
S0lUX0lNUExFTUVOVEFUSU9OCiAgICAgV2ViRGF0YWJhc2UoY29uc3QgV1RGOjpQYXNzUmVmUHRy
PFdlYkNvcmU6OkRhdGFiYXNlPiYpOwpJbmRleDogV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEYXRh
YmFzZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEYXRhYmFzZS5j
cHAJKHJldmlzaW9uIDU0NDU2KQorKysgV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEYXRhYmFzZS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDcgKzMyLDkgQEAKICNpbmNsdWRlICJXZWJEYXRhYmFz
ZS5oIgogCiAjaW5jbHVkZSAiRGF0YWJhc2UuaCIKKyNpbmNsdWRlICJEYXRhYmFzZVRhc2suaCIK
ICNpbmNsdWRlICJEYXRhYmFzZVRocmVhZC5oIgorI2luY2x1ZGUgIkRhdGFiYXNlVHJhY2tlci5o
IgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiS1VSTC5oIgogI2luY2x1ZGUgIlF1
b3RhVHJhY2tlci5oIgpAQCAtMTA2LDYgKzEwOCwyMiBAQCB2b2lkIFdlYkRhdGFiYXNlOjp1cGRh
dGVEYXRhYmFzZVNpemUoCiAgICAgICAgIG9yaWdpbklkZW50aWZpZXIsIGRhdGFiYXNlTmFtZSwg
ZGF0YWJhc2VTaXplLCBzcGFjZUF2YWlsYWJsZSk7CiB9CiAKK3ZvaWQgV2ViRGF0YWJhc2U6OmNs
b3NlRGF0YWJhc2VJbW1lZGlhdGVseShjb25zdCBXZWJTdHJpbmcmIG9yaWdpbklkZW50aWZpZXIs
IGNvbnN0IFdlYlN0cmluZyYgZGF0YWJhc2VOYW1lKQoreworICAgIEhhc2hTZXQ8UmVmUHRyPERh
dGFiYXNlPj4gZGF0YWJhc2VIYW5kbGVzOworICAgIFBhc3NSZWZQdHI8U2VjdXJpdHlPcmlnaW4+
IG9yaWdpblBycCgqV2ViU2VjdXJpdHlPcmlnaW46OmNyZWF0ZUZyb21EYXRhYmFzZUlkZW50aWZp
ZXIob3JpZ2luSWRlbnRpZmllcikpOworICAgIFJlZlB0cjxTZWN1cml0eU9yaWdpbj4gb3JpZ2lu
ID0gb3JpZ2luUHJwOworICAgIERhdGFiYXNlVHJhY2tlcjo6dHJhY2tlcigpLmdldE9wZW5EYXRh
YmFzZXMob3JpZ2luLmdldCgpLCBkYXRhYmFzZU5hbWUsICZkYXRhYmFzZUhhbmRsZXMpOworICAg
IGZvciAoSGFzaFNldDxSZWZQdHI8RGF0YWJhc2U+ID46Oml0ZXJhdG9yIGl0ID0gZGF0YWJhc2VI
YW5kbGVzLmJlZ2luKCk7IGl0ICE9IGRhdGFiYXNlSGFuZGxlcy5lbmQoKTsgKytpdCkgeworICAg
ICAgICBEYXRhYmFzZSogZGF0YWJhc2UgPSBpdC0+Z2V0KCk7CisgICAgICAgIERhdGFiYXNlVGhy
ZWFkKiBkYXRhYmFzZVRocmVhZCA9IGRhdGFiYXNlLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkt
PmRhdGFiYXNlVGhyZWFkKCk7CisgICAgICAgIGlmIChkYXRhYmFzZVRocmVhZCAmJiAhZGF0YWJh
c2VUaHJlYWQtPnRlcm1pbmF0aW9uUmVxdWVzdGVkKCkpIHsKKyAgICAgICAgICAgIGRhdGFiYXNl
LT5zdG9wKCk7CisgICAgICAgICAgICBkYXRhYmFzZVRocmVhZC0+c2NoZWR1bGVUYXNrKERhdGFi
YXNlQ2xvc2VUYXNrOjpjcmVhdGUoZGF0YWJhc2UsIDApKTsKKyAgICAgICAgfQorICAgIH0KK30K
KwogV2ViRGF0YWJhc2U6OldlYkRhdGFiYXNlKGNvbnN0IFdURjo6UGFzc1JlZlB0cjxEYXRhYmFz
ZT4mIGRhdGFiYXNlKQogICAgIDogbV9wcml2YXRlKHN0YXRpY19jYXN0PFdlYkRhdGFiYXNlUHJp
dmF0ZSo+KGRhdGFiYXNlLnJlbGVhc2VSZWYoKSkpCiB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48849</attachid>
            <date>2010-02-16 17:08:17 -0800</date>
            <delta_ts>2010-02-18 13:21:28 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>2005</size>
            <attacher name="Dumitru Daniliuc">dumi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NDY5NCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTAtMDItMTEgIER1bWl0cnUgRGFuaWxpdWMgIDxkdW1pQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBbGxvdyBjcmVhdGluZy9kcm9wcGluZyB2aXJ0dWFsIHRhYmxlcyB3aGVuIHRoZSBtb2R1bGUg
aXMgRlRTMi4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MzQ4NjcKKworICAgICAgICAqIHN0b3JhZ2UvRGF0YWJhc2VBdXRob3JpemVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkRhdGFiYXNlQXV0aG9yaXplcjo6Y3JlYXRlVlRhYmxlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRhdGFiYXNlQXV0aG9yaXplcjo6ZHJvcFZUYWJsZSk6CisKIDIwMTAtMDIt
MTEgIEZ1bWl0b3NoaSBVa2FpICA8dWthaUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KSW5kZXg6IFdlYkNvcmUvc3RvcmFnZS9EYXRhYmFz
ZUF1dGhvcml6ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3RvcmFnZS9EYXRhYmFzZUF1
dGhvcml6ZXIuY3BwCShyZXZpc2lvbiA1NDY5MikKKysrIFdlYkNvcmUvc3RvcmFnZS9EYXRhYmFz
ZUF1dGhvcml6ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNjMsMjEgKzI2MywyOSBAQCBpbnQg
RGF0YWJhc2VBdXRob3JpemVyOjpkcm9wVGVtcFZpZXcoY29uCiAgICAgcmV0dXJuIChtX3JlYWRP
bmx5ICYmIG1fc2VjdXJpdHlFbmFibGVkID8gU1FMQXV0aERlbnkgOiBTUUxBdXRoQWxsb3cpOwog
fQogCi1pbnQgRGF0YWJhc2VBdXRob3JpemVyOjpjcmVhdGVWVGFibGUoY29uc3QgU3RyaW5nJiwg
Y29uc3QgU3RyaW5nJikKK2ludCBEYXRhYmFzZUF1dGhvcml6ZXI6OmNyZWF0ZVZUYWJsZShjb25z
dCBTdHJpbmcmIHRhYmxlTmFtZSwgY29uc3QgU3RyaW5nJiBtb2R1bGVOYW1lKQogewogICAgIGlm
IChtX3JlYWRPbmx5ICYmIG1fc2VjdXJpdHlFbmFibGVkKQogICAgICAgICByZXR1cm4gU1FMQXV0
aERlbnk7CiAKKyAgICAvLyBmdHMyIGlzIHVzZWQgaW4gQ2hyb21pdW0KKyAgICBpZiAobW9kdWxl
TmFtZSAhPSAiZnRzMiIpCisgICAgICAgIHJldHVybiBTUUxBdXRoRGVueTsKKwogICAgIG1fbGFz
dEFjdGlvbkNoYW5nZWREYXRhYmFzZSA9IHRydWU7Ci0gICAgcmV0dXJuIG1fc2VjdXJpdHlFbmFi
bGVkID8gU1FMQXV0aERlbnkgOiBTUUxBdXRoQWxsb3c7CisgICAgcmV0dXJuIGRlbnlCYXNlZE9u
VGFibGVOYW1lKHRhYmxlTmFtZSk7CiB9CiAKLWludCBEYXRhYmFzZUF1dGhvcml6ZXI6OmRyb3BW
VGFibGUoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJikKK2ludCBEYXRhYmFzZUF1dGhvcml6
ZXI6OmRyb3BWVGFibGUoY29uc3QgU3RyaW5nJiB0YWJsZU5hbWUsIGNvbnN0IFN0cmluZyYgbW9k
dWxlTmFtZSkKIHsKICAgICBpZiAobV9yZWFkT25seSAmJiBtX3NlY3VyaXR5RW5hYmxlZCkKICAg
ICAgICAgcmV0dXJuIFNRTEF1dGhEZW55OwogCi0gICAgcmV0dXJuIG1fc2VjdXJpdHlFbmFibGVk
ID8gU1FMQXV0aERlbnkgOiBTUUxBdXRoQWxsb3c7CisgICAgLy8gZnRzMiBpcyB1c2VkIGluIENo
cm9taXVtCisgICAgaWYgKG1vZHVsZU5hbWUgIT0gImZ0czIiKQorICAgICAgICByZXR1cm4gU1FM
QXV0aERlbnk7CisKKyAgICByZXR1cm4gZGVueUJhc2VkT25UYWJsZU5hbWUodGFibGVOYW1lKTsK
IH0KIAogaW50IERhdGFiYXNlQXV0aG9yaXplcjo6YWxsb3dEZWxldGUoY29uc3QgU3RyaW5nJiB0
YWJsZU5hbWUpCg==
</data>
<flag name="review"
          id="31585"
          type_id="1"
          status="+"
          setter="dglazkov"
    />
    <flag name="commit-queue"
          id="31586"
          type_id="3"
          status="-"
          setter="dumi"
    />
          </attachment>
      

    </bug>

</bugzilla>