<?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>21824</bug_id>
          
          <creation_ts>2008-10-22 23:37:35 -0700</creation_ts>
          <short_desc>[GTK] FileSystem abstraction uses features from Glib 2.16</short_desc>
          <delta_ts>2008-10-23 21:33:22 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</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>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Kalle Vahlman">zuh</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>96294</commentid>
    <comment_count>0</comment_count>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-10-22 23:37:35 -0700</bug_when>
    <thetext>The FileSystem abstraction for GTK+ port uses g_uri_(un)escape_string() to escape file names on Linux, which are pretty new features introduced in Glib 2.16.

There&apos;s a wrapper and local copy of the implementation for g_uri_escape_string(), but not for g_uri_unescape_string() breaking the build for pre-2.16 Glib.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>96295</commentid>
    <comment_count>1</comment_count>
      <attachid>24591</attachid>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-10-22 23:41:45 -0700</bug_when>
    <thetext>Created attachment 24591
Patch to add wrapping for g_uri_unescape_string()

The patch follows the way the wrapping is done for g_uri_escape_string(), so it should be easy to review...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>96479</commentid>
    <comment_count>2</comment_count>
      <attachid>24591</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2008-10-23 21:27:04 -0700</bug_when>
    <thetext>Comment on attachment 24591
Patch to add wrapping for g_uri_unescape_string()

r=me

Thanks for the fix. Will also add config.h to guriescape.c before landing.

Hopefully we&apos;ll end up using CString or something more appropriate for filenames some day!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>96480</commentid>
    <comment_count>3</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2008-10-23 21:33:22 -0700</bug_when>
    <thetext>Landed in r37838 with some tabs removed as required by the SVN commit hook.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>24591</attachid>
            <date>2008-10-22 23:41:45 -0700</date>
            <delta_ts>2008-10-23 21:27:04 -0700</delta_ts>
            <desc>Patch to add wrapping for g_uri_unescape_string()</desc>
            <filename>wrap-g_uri_unescape_string.diff</filename>
            <type>text/plain</type>
            <size>4219</size>
            <attacher name="Kalle Vahlman">zuh</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
N2VjOTAzNi4uY2MyMzc4YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAwOC0xMC0yMiAgS2FsbGUgVmFobG1h
biAgPGthbGxlLnZhaGxtYW5AbW92aWFsLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBXcmFwIGdfdXJpX3VuZXNjYXBlX3N0cmluZygpIHRvIGZp
eCBidWlsZGluZyB3aXRoIHByZS0yLjE2IEdsaWIKKworICAgICAgICBXQVJOSU5HOiBOTyBURVNU
IENBU0VTIEFEREVEIE9SIENIQU5HRUQKKworICAgICAgICAqIHBsYXRmb3JtL2d0ay9ndXJpZXNj
YXBlLmM6CisgICAgICAgICh1bmVzY2FwZV9jaGFyYWN0ZXIpOgorICAgICAgICAoX3dlYmNvcmVf
Z191cmlfdW5lc2NhcGVfc2VnbWVudCk6CisgICAgICAgIChfd2ViY29yZV9nX3VyaV91bmVzY2Fw
ZV9zdHJpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9ndXJpZXNjYXBlLmg6CisKIDIwMDgt
MTAtMjIgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGduc0Bnbm9tZS5vcmc+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgVGltb3RoeSBIYXRjaGVyLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvZ3VyaWVzY2FwZS5jIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvZ3VyaWVzY2FwZS5jCmlu
ZGV4IGRmMjgwOTYuLjBlYmNmMzIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL2d1
cmllc2NhcGUuYworKysgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9ndXJpZXNjYXBlLmMKQEAgLTEw
Niw5ICsxMDYsMTAgQEAgX3dlYmNvcmVfZ19zdHJpbmdfYXBwZW5kX3VyaV9lc2NhcGVkIChHU3Ry
aW5nICpzdHJpbmcsCiAgIHJldHVybiBzdHJpbmc7CiB9CiAKLS8qIGdfdXJpX2VzY2FwZV9zdHJp
bmcgd2FzIGNvcGllZCBmb3IgZ2xpYi9ndXJpZnVuY3MuYyBpbiB0aGUgZ2xpYiBwYWNrYWdlIGFu
cwotICogcmVuYW1lZCB0byBfd2Via2l0X2dfdXJpX2VzY2FwZV9zdHJpbmcgdG8gYXZvaWQgZXhw
b3J0aW5nIGEgc3ltYm9sIHdpdGggdGhlCi0gKiAiZ18iIHByZWZpeC4KKy8qIGdfdXJpX2VzY2Fw
ZV9zdHJpbmcsIHVuZXNjYXBlX2NoYXJhY3RlciwgZ191cmlfdW5lc2NhcGVfc2VnbWVudCBhbmQK
KyAqIGdfdXJpX3VuZXNjYXBlX3N0cmluZyB3ZXJlIGNvcGllZCBmb3IgZ2xpYi9ndXJpZnVuY3Mu
YyBpbiB0aGUgZ2xpYiBwYWNrYWdlCisgKiBhbmQgcHJlZml4ZWQgd2l0aCBfd2ViY29yZSAoaWYg
bmVjZXNzYXJ5KSB0byBhdm9pZCBleHBvcnRpbmcgYSBzeW1ib2wgd2l0aAorICogdGhlICJnXyIg
cHJlZml4LgogICoKICAqIE9yaWdpbmFsIGNvcHlyaWdodDoKICAqICAgQ29weXJpZ2h0IChDKSAy
MDA2LTIwMDcgUmVkIEhhdCwgSW5jLgpAQCAtMTMyLDQgKzEzMyw4NiBAQCBfd2ViY29yZV9nX3Vy
aV9lc2NhcGVfc3RyaW5nIChjb25zdCBjaGFyICp1bmVzY2FwZWQsCiAgIAogICByZXR1cm4gZ19z
dHJpbmdfZnJlZSAocywgRkFMU0UpOwogfQorCitzdGF0aWMgaW50Cit1bmVzY2FwZV9jaGFyYWN0
ZXIgKGNvbnN0IGNoYXIgKnNjYW5uZXIpCit7CisgIGludCBmaXJzdF9kaWdpdDsKKyAgaW50IHNl
Y29uZF9kaWdpdDsKKyAgCisgIGZpcnN0X2RpZ2l0ID0gZ19hc2NpaV94ZGlnaXRfdmFsdWUgKCpz
Y2FubmVyKyspOworICBpZiAoZmlyc3RfZGlnaXQgPCAwKQorICAgIHJldHVybiAtMTsKKworICBz
ZWNvbmRfZGlnaXQgPSBnX2FzY2lpX3hkaWdpdF92YWx1ZSAoKnNjYW5uZXIrKyk7CisgIGlmIChz
ZWNvbmRfZGlnaXQgPCAwKQorICAgIHJldHVybiAtMTsKKworICByZXR1cm4gKGZpcnN0X2RpZ2l0
IDw8IDQpIHwgc2Vjb25kX2RpZ2l0OworfQorCisKKworc3RhdGljIGNoYXIgKgorX3dlYmNvcmVf
Z191cmlfdW5lc2NhcGVfc2VnbWVudCAoY29uc3QgY2hhciAqZXNjYXBlZF9zdHJpbmcsCisJCQlj
b25zdCBjaGFyICplc2NhcGVkX3N0cmluZ19lbmQsCisJCQljb25zdCBjaGFyICppbGxlZ2FsX2No
YXJhY3RlcnMpCit7CisgIGNvbnN0IGNoYXIgKmluOworICBjaGFyICpvdXQsICpyZXN1bHQ7Cisg
IGdpbnQgY2hhcmFjdGVyOworICAKKyAgaWYgKGVzY2FwZWRfc3RyaW5nID09IE5VTEwpCisgICAg
cmV0dXJuIE5VTEw7CisgIAorICBpZiAoZXNjYXBlZF9zdHJpbmdfZW5kID09IE5VTEwpCisgICAg
ZXNjYXBlZF9zdHJpbmdfZW5kID0gZXNjYXBlZF9zdHJpbmcgKyBzdHJsZW4gKGVzY2FwZWRfc3Ry
aW5nKTsKKyAgCisgIHJlc3VsdCA9IGdfbWFsbG9jIChlc2NhcGVkX3N0cmluZ19lbmQgLSBlc2Nh
cGVkX3N0cmluZyArIDEpOworICAKKyAgb3V0ID0gcmVzdWx0OworICBmb3IgKGluID0gZXNjYXBl
ZF9zdHJpbmc7IGluIDwgZXNjYXBlZF9zdHJpbmdfZW5kOyBpbisrKQorICAgIHsKKyAgICAgIGNo
YXJhY3RlciA9ICppbjsKKyAgICAgIAorICAgICAgaWYgKCppbiA9PSAnJScpCisJeworCSAgaW4r
KzsKKwkgIAorCSAgaWYgKGVzY2FwZWRfc3RyaW5nX2VuZCAtIGluIDwgMikKKwkgICAgeworCSAg
ICAgIC8qIEludmFsaWQgZXNjYXBlZCBjaGFyICh0byBzaG9ydCkgKi8KKwkgICAgICBnX2ZyZWUg
KHJlc3VsdCk7CisJICAgICAgcmV0dXJuIE5VTEw7CisJICAgIH0KKwkgIAorCSAgY2hhcmFjdGVy
ID0gdW5lc2NhcGVfY2hhcmFjdGVyIChpbik7CisJICAKKwkgIC8qIENoZWNrIGZvciBhbiBpbGxl
Z2FsIGNoYXJhY3Rlci4gV2UgY29uc2lkZXIgJ1wwJyBpbGxlZ2FsIGhlcmUuICovCisJICBpZiAo
Y2hhcmFjdGVyIDw9IDAgfHwKKwkgICAgICAoaWxsZWdhbF9jaGFyYWN0ZXJzICE9IE5VTEwgJiYK
KwkgICAgICAgc3RyY2hyIChpbGxlZ2FsX2NoYXJhY3RlcnMsIChjaGFyKWNoYXJhY3RlcikgIT0g
TlVMTCkpCisJICAgIHsKKwkgICAgICBnX2ZyZWUgKHJlc3VsdCk7CisJICAgICAgcmV0dXJuIE5V
TEw7CisJICAgIH0KKwkgIAorCSAgaW4rKzsgLyogVGhlIG90aGVyIGNoYXIgd2lsbCBiZSBlYXRl
biBpbiB0aGUgbG9vcCBoZWFkZXIgKi8KKwl9CisgICAgICAqb3V0KysgPSAoY2hhciljaGFyYWN0
ZXI7CisgICAgfQorICAKKyAgKm91dCA9ICdcMCc7CisgIAorICByZXR1cm4gcmVzdWx0OworfQor
CisKK2NoYXIgKgorX3dlYmNvcmVfZ191cmlfdW5lc2NhcGVfc3RyaW5nIChjb25zdCBjaGFyICpl
c2NhcGVkX3N0cmluZywKKwkJICAgICAgIGNvbnN0IGNoYXIgKmlsbGVnYWxfY2hhcmFjdGVycykK
K3sKKyAgcmV0dXJuIF93ZWJjb3JlX2dfdXJpX3VuZXNjYXBlX3NlZ21lbnQgKGVzY2FwZWRfc3Ry
aW5nLCBOVUxMLCBpbGxlZ2FsX2NoYXJhY3RlcnMpOworfQorCQkgICAgICAgICAKICNlbmRpZiAv
LyAjaWYgIVBMQVRGT1JNKFdJTl9PUykgJiYgIUdUS19DSEVDS19WRVJTSU9OKDIsIDE2LCAwKQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvZ3VyaWVzY2FwZS5oIGIvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvZ3VyaWVzY2FwZS5oCmluZGV4IGEyNWIzYzguLjZjNzhiNGQgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL2d1cmllc2NhcGUuaAorKysgYi9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9ndXJpZXNjYXBlLmgKQEAgLTI4LDExICsyOCwxNSBAQCBHX0JFR0lOX0RFQ0xTCiAj
aWYgIVBMQVRGT1JNKFdJTl9PUykgJiYgIUdMSUJfQ0hFQ0tfVkVSU0lPTigyLCAxNiwgMCkKIAog
I2RlZmluZSBnX3VyaV9lc2NhcGVfc3RyaW5nIF93ZWJjb3JlX2dfdXJpX2VzY2FwZV9zdHJpbmcK
KyNkZWZpbmUgZ191cmlfdW5lc2NhcGVfc3RyaW5nIF93ZWJjb3JlX2dfdXJpX3VuZXNjYXBlX3N0
cmluZwogCiBjaGFyICAgICpfd2ViY29yZV9nX3VyaV9lc2NhcGVfc3RyaW5nICAgKGNvbnN0IGNo
YXIgKnVuZXNjYXBlZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgY2hhciAqcmVzZXJ2ZWRfY2hhcnNfYWxsb3dlZCwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZ2Jvb2xlYW4gICAgYWxsb3dfdXRmOCk7CiAKK2NoYXIgICAg
Kl93ZWJjb3JlX2dfdXJpX3VuZXNjYXBlX3N0cmluZyAoY29uc3QgY2hhciAqZXNjYXBlZF9zdHJp
bmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIg
KmlsbGVnYWxfY2hhcmFjdGVycyk7CisgICAgICAgICAgIAogI2VuZGlmCiAKIEdfRU5EX0RFQ0xT
Cg==
</data>
<flag name="review"
          id="11216"
          type_id="1"
          status="+"
          setter="alp"
    />
          </attachment>
      

    </bug>

</bugzilla>