<?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>143150</bug_id>
          
          <creation_ts>2015-03-27 13:51:27 -0700</creation_ts>
          <short_desc>[WK2][NetworkCache] Use PlatformFileHandle abstraction in cross-platform code</short_desc>
          <delta_ts>2015-03-30 12:05:07 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>andersca</cc>
    
    <cc>cgarcia</cc>
    
    <cc>koivisto</cc>
    
    <cc>mrobinson</cc>
    
    <cc>svillar</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1080735</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-03-27 13:51:27 -0700</bug_when>
    <thetext>Use PlatformFileHandle abstraction instead of int type for file descriptors in cross-platform code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1080746</commentid>
    <comment_count>1</comment_count>
      <attachid>249606</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-03-27 14:16:02 -0700</bug_when>
    <thetext>Created attachment 249606
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1080750</commentid>
    <comment_count>2</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-03-27 14:31:53 -0700</bug_when>
    <thetext>Why do we want to do this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1080753</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-03-27 14:35:21 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Why do we want to do this?

Well, this is supposed to be cross-platform code. Not all platforms / ports use &apos;int&apos; as type for file descriptors (for e.g. GTK uses GFileIOStream*). We already use the PlatformFileHandle abstraction for cross-platform code inside WebCore.

Other ports may be interested in using the NetworkCache and having POSIX assumptions inside supposed-to-be cross-platform code is not going to help.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1080754</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-03-27 14:37:06 -0700</bug_when>
    <thetext>Note that we already use the WebCore FileSystem abstraction in the NetworkCache because of this. That abstraction is dealing with PlatformFileHandle handles, not ints.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1080938</commentid>
    <comment_count>5</comment_count>
      <attachid>249606</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2015-03-28 07:11:34 -0700</bug_when>
    <thetext>Comment on attachment 249606
Patch

It would be better if people making ports do something like this if they find it helpful. Are there any platforms that can&apos;t use unix style fd&apos;s these days? Note that the existing code doesn&apos;t use any PlatformFileHandle based abstractions, just the string ones.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081207</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-03-30 10:12:41 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 249606 [details]
&gt; Patch
&gt; 
&gt; It would be better if people making ports do something like this if they
&gt; find it helpful. Are there any platforms that can&apos;t use unix style fd&apos;s
&gt; these days? Note that the existing code doesn&apos;t use any PlatformFileHandle
&gt; based abstractions, just the string ones.

Well, I thought the GTK port might have issues with this. GTK is not unix-only and AFAIK the Midori browser works on Windows.

Anyway, I disagree with the decision as I think it is a slippery slope to start using unix-specific things in cross-platform headers but I am going to close this since I don&apos;t have any stakes in this. The GTK or EFL port guys can always reopen if they wish to make this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081257</commentid>
    <comment_count>7</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2015-03-30 11:41:03 -0700</bug_when>
    <thetext>(In reply to comment #6)

&gt; Anyway, I disagree with the decision as I think it is a slippery slope to
&gt; start using unix-specific things in cross-platform headers but I am going to
&gt; close this since I don&apos;t have any stakes in this. The GTK or EFL port guys
&gt; can always reopen if they wish to make this change.

WebKitGTK+ doesn&apos;t have Windows or OS X support at the moment. We lost it with the switch to WebKit2. There is no need to keep the abstraction around for our sake. If we manage to start the onerous task of creating WebKit2GTK+ for Windows, we will be happy to re-add the abstraction at that time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081268</commentid>
    <comment_count>8</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-03-30 12:05:07 -0700</bug_when>
    <thetext>Ok, thanks for the feedback Martin.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>249606</attachid>
            <date>2015-03-27 14:16:02 -0700</date>
            <delta_ts>2015-03-28 07:11:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143150-20150327141523.patch</filename>
            <type>text/plain</type>
            <size>4247</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyMDY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZmYwYzc3ODM0ZjVhMTE1
NDFhOThkOTMyZDQ1NDY2MTFmNWYzN2Q2ZS4uMjAzMmE0ZWE2Y2NkMzA5NWZhOWRkZGM2MjkyYTk5
Yzk4ZmFlMDMzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE1LTAzLTI3ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgW1dLMl1bTmV0d29ya0NhY2hl
XSBVc2UgUGxhdGZvcm1GaWxlSGFuZGxlIGFic3RyYWN0aW9uIGluIGNyb3NzLXBsYXRmb3JtIGNv
ZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MzE1
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBQ
bGF0Zm9ybUZpbGVIYW5kbGUgYWJzdHJhY3Rpb24gaW5zdGVhZCBvZiBpbnQgdHlwZSBmb3IgZmls
ZQorICAgICAgICBkZXNjcmlwdG9ycyBpbiBjcm9zcy1wbGF0Zm9ybSBjb2RlLgorCisgICAgICAg
ICogTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlRGF0YS5oOgorICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUlPQ2hhbm5lbC5oOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrQ2FjaGU6OklPQ2hhbm5lbDo6ZmlsZURlc2NyaXB0b3IpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ2FjaGU6OmRlY29kZVJlY29yZCk6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtDYWNoZTo6U3RvcmFnZTo6ZGlzcGF0Y2hGdWxsV3JpdGVPcGVyYXRpb24pOgorCiAyMDE1
LTAzLTI2ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXNw
ZWN0IGNhY2hlLWNvbnRyb2wgZGlyZWN0aXZlcyBpbiByZXF1ZXN0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVEYXRhLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVEYXRhLmgKaW5kZXgg
ZjBiYmI0MDA0ZmMzMjU2YjE3NDM3NDczZjlmOGEwM2ZkODA1NzcwZC4uYzg2MDE3ZjAyM2NmNjBk
OTZmNTZhM2VjNjE1NjRiZGZiNDJmZTQ3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0
d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZURhdGEuaApAQCAtMjgsNiArMjgsNyBA
QAogCiAjaWYgRU5BQkxFKE5FVFdPUktfQ0FDSEUpCiAKKyNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVT
eXN0ZW0uaD4KICNpbmNsdWRlIDxmdW5jdGlvbmFsPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbkRp
c3BhdGNoZXIuaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KQEAgLTEy
NSw3ICsxMjYsNyBAQCBwcml2YXRlOgogfTsKIAogRGF0YSBjb25jYXRlbmF0ZShjb25zdCBEYXRh
JiwgY29uc3QgRGF0YSYpOwotRGF0YSBtYXBGaWxlKGludCBmZCwgc2l6ZV90IG9mZnNldCwgc2l6
ZV90KTsKK0RhdGEgbWFwRmlsZShXZWJDb3JlOjpQbGF0Zm9ybUZpbGVIYW5kbGUgZmQsIHNpemVf
dCBvZmZzZXQsIHNpemVfdCk7CiAKIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05l
dHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZUlPQ2hhbm5lbC5oIGIvU291cmNlL1dlYktp
dDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlSU9DaGFubmVsLmgKaW5kZXggOWM0
Nzk5ZjdhYjJhZjBiMTBiMzgxMzMwNDE0ZTcyZWQ1NzU5NWJiNi4uYzg4MDc1YzU3ZjBlOTlmMTY0
NmRmZDEwOGY0Mzg2MWUzNTgwZWNhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29y
a1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlSU9DaGFubmVsLmgKKysrIGIvU291cmNlL1dlYktp
dDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlSU9DaGFubmVsLmgKQEAgLTI5LDYg
KzI5LDcgQEAKICNpZiBFTkFCTEUoTkVUV09SS19DQUNIRSkKIAogI2luY2x1ZGUgIk5ldHdvcmtD
YWNoZURhdGEuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW0uaD4KICNpbmNsdWRlIDxm
dW5jdGlvbmFsPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZlUmVmQ291bnRlZC5oPgogI2luY2x1
ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtNDgsNyArNDksNyBAQCBwdWJsaWM6CiAgICAg
Y29uc3QgU3RyaW5nJiBwYXRoKCkgY29uc3QgeyByZXR1cm4gbV9wYXRoOyB9CiAgICAgVHlwZSB0
eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAKLSAgICBpbnQgZmlsZURlc2NyaXB0b3Io
KSBjb25zdCB7IHJldHVybiBtX2ZpbGVEZXNjcmlwdG9yOyB9CisgICAgV2ViQ29yZTo6UGxhdGZv
cm1GaWxlSGFuZGxlIGZpbGVEZXNjcmlwdG9yKCkgY29uc3QgeyByZXR1cm4gbV9maWxlRGVzY3Jp
cHRvcjsgfQogCiBwcml2YXRlOgogICAgIElPQ2hhbm5lbChjb25zdCBTdHJpbmcmIGZpbGVQYXRo
LCBJT0NoYW5uZWw6OlR5cGUpOwpAQCAtNTYsNyArNTcsNyBAQCBwcml2YXRlOgogICAgIFN0cmlu
ZyBtX3BhdGg7CiAgICAgVHlwZSBtX3R5cGU7CiAKLSAgICBpbnQgbV9maWxlRGVzY3JpcHRvciB7
IDAgfTsKKyAgICBXZWJDb3JlOjpQbGF0Zm9ybUZpbGVIYW5kbGUgbV9maWxlRGVzY3JpcHRvciB7
IFdlYkNvcmU6OmludmFsaWRQbGF0Zm9ybUZpbGVIYW5kbGUgfTsKICNpZiBQTEFURk9STShDT0NP
QSkKICAgICBEaXNwYXRjaFB0cjxkaXNwYXRjaF9pb190PiBtX2Rpc3BhdGNoSU87CiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtD
YWNoZVN0b3JhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0
d29ya0NhY2hlU3RvcmFnZS5jcHAKaW5kZXggYTUxYWM4NTY3MDg4NGMyZTBjNTk3NTk4ZjU3ODQ4
ZDY5MTI4OTRjNC4uYzY2Mzg1MzdjMGYzNDliZTU5ZWI4ZWI4M2I3NzgxYTUxYmI3ZTQ5NSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hl
U3RvcmFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0
d29ya0NhY2hlU3RvcmFnZS5jcHAKQEAgLTIwMyw3ICsyMDMsNyBAQCBzdGF0aWMgYm9vbCBkZWNv
ZGVSZWNvcmRIZWFkZXIoY29uc3QgRGF0YSYgZmlsZURhdGEsIFJlY29yZE1ldGFEYXRhJiBtZXRh
RGF0YSwgRAogICAgIHJldHVybiB0cnVlOwogfQogCi1zdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFN0
b3JhZ2U6OlJlY29yZD4gZGVjb2RlUmVjb3JkKGNvbnN0IERhdGEmIGZpbGVEYXRhLCBpbnQgZmQs
IGNvbnN0IEtleSYga2V5KQorc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxTdG9yYWdlOjpSZWNvcmQ+
IGRlY29kZVJlY29yZChjb25zdCBEYXRhJiBmaWxlRGF0YSwgV2ViQ29yZTo6UGxhdGZvcm1GaWxl
SGFuZGxlIGZkLCBjb25zdCBLZXkmIGtleSkKIHsKICAgICBSZWNvcmRNZXRhRGF0YSBtZXRhRGF0
YTsKICAgICBEYXRhIGhlYWRlckRhdGE7CkBAIC00ODcsNyArNDg3LDcgQEAgdm9pZCBTdG9yYWdl
OjpkaXNwYXRjaEZ1bGxXcml0ZU9wZXJhdGlvbihjb25zdCBXcml0ZU9wZXJhdGlvbiYgd3JpdGUp
CiAgICAgICAgIGF1dG8gaGVhZGVyQW5kQm9keURhdGEgPSBjb25jYXRlbmF0ZShlbmNvZGVkSGVh
ZGVyLCB3cml0ZS5yZWNvcmQuYm9keSk7CiAKICAgICAgICAgYXV0byBjaGFubmVsID0gb3BlbkZp
bGVGb3JLZXkod3JpdGUucmVjb3JkLmtleSwgSU9DaGFubmVsOjpUeXBlOjpDcmVhdGUsIGNhY2hl
UGF0aENhcHR1cmUuc3RyaW5nKCkpOwotICAgICAgICBpbnQgZmQgPSBjaGFubmVsLT5maWxlRGVz
Y3JpcHRvcigpOworICAgICAgICBhdXRvIGZkID0gY2hhbm5lbC0+ZmlsZURlc2NyaXB0b3IoKTsK
ICAgICAgICAgc2l6ZV90IGJvZHlPZmZzZXQgPSBlbmNvZGVkSGVhZGVyLnNpemUoKTsKIAogICAg
ICAgICBjaGFubmVsLT53cml0ZSgwLCBoZWFkZXJBbmRCb2R5RGF0YSwgW3RoaXMsICZ3cml0ZSwg
Ym9keU9mZnNldCwgZmRdKGludCBlcnJvcikgewo=
</data>
<flag name="review"
          id="274428"
          type_id="1"
          status="-"
          setter="koivisto"
    />
    <flag name="commit-queue"
          id="274430"
          type_id="3"
          status="-"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>