<?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>16071</bug_id>
          
          <creation_ts>2007-11-20 08:09:26 -0800</creation_ts>
          <short_desc>Curl backend handles EINTR incorrectly</short_desc>
          <delta_ts>2007-12-18 14:53:12 -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>Page Loading</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>Curl</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Rodney Dawes">dobey</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>alp</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>61793</commentid>
    <comment_count>0</comment_count>
    <who name="Rodney Dawes">dobey</who>
    <bug_when>2007-11-20 08:09:26 -0800</bug_when>
    <thetext>The curl backend is handling EINTR incorrectly by just stopping the stream. It instead needs to try again when EINTR occurs in select(). We also need to use perror() to print the error message when debug is enabled, so that the message is useful, and not plainly &quot;select() return -1&quot;. Failing to try again on EINTR means that content is not downloadable as it should be. This occurs quite often on YouTube and similar sites which stream data to a plug-in. By trying again on EINTR we can watch the full videos and have the site behave as expected. With this patch, the CPU usage and network usage patterns match those of firefox when watching the same video on YouTube, where this problem occurs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61794</commentid>
    <comment_count>1</comment_count>
      <attachid>17418</attachid>
    <who name="Rodney Dawes">dobey</who>
    <bug_when>2007-11-20 08:10:28 -0800</bug_when>
    <thetext>Created attachment 17418
Patch to handle EINTR correctly in curl backend</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61803</commentid>
    <comment_count>2</comment_count>
      <attachid>17418</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-20 10:33:26 -0800</bug_when>
    <thetext>Comment on attachment 17418
Patch to handle EINTR correctly in curl backend

Good catch. The recursion definitely needs to go. See my proposed changes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61804</commentid>
    <comment_count>3</comment_count>
      <attachid>17418</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-20 10:33:29 -0800</bug_when>
    <thetext>Comment on attachment 17418
Patch to handle EINTR correctly in curl backend

Good catch. The recursion definitely needs to go. See my proposed changes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61826</commentid>
    <comment_count>4</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-20 13:04:41 -0800</bug_when>
    <thetext>I looked into this a bit more and now have a feeling this is just a symptom of bad curl API use. I&apos;d suspect that it&apos;s curl&apos;s job to check for situations like this, not ours. Can you find a reproducible non-plugin test case for this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61849</commentid>
    <comment_count>5</comment_count>
    <who name="Rodney Dawes">dobey</who>
    <bug_when>2007-11-20 14:46:10 -0800</bug_when>
    <thetext>No. I can&apos;t seem to reproduce this problem exactly. When I try to load a movie file directly, it just gets dumped to the view, and I think ends up spinlocking somewhere in the process.

Is someone rewriting the network backend and has that code in a state that can replace the current curl code?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61865</commentid>
    <comment_count>6</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-20 16:57:48 -0800</bug_when>
    <thetext>Can you try with no modifications except wrapping the select() with this guard?

    setDeferringTimers(true);
    rc = ::select(maxfd + 1, &amp;fdread, &amp;fdwrite, &amp;fdexcep, &amp;timeout);
    setDeferringTimers(false);

Tell me how it goes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61917</commentid>
    <comment_count>7</comment_count>
    <who name="Rodney Dawes">dobey</who>
    <bug_when>2007-11-21 07:19:16 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; Can you try with no modifications except wrapping the select() with this guard?
&gt; 
&gt;     setDeferringTimers(true);
&gt;     rc = ::select(maxfd + 1, &amp;fdread, &amp;fdwrite, &amp;fdexcep, &amp;timeout);
&gt;     setDeferringTimers(false);
&gt; 
&gt; Tell me how it goes.

This seems to also work sufficiently.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61923</commentid>
    <comment_count>8</comment_count>
      <attachid>17431</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-21 08:47:46 -0800</bug_when>
    <thetext>Created attachment 17431
Defer timers during select()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61962</commentid>
    <comment_count>9</comment_count>
      <attachid>17431</attachid>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2007-11-21 18:58:05 -0800</bug_when>
    <thetext>Comment on attachment 17431
Defer timers during select()

r=me, though I think the while should be written as while (condition) { } if you&apos;re going to squish it all on one line.  It&apos;s too easy to overlook the semicolon, and some versions of GCC like to emit warnings for code like this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61964</commentid>
    <comment_count>10</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-21 19:28:27 -0800</bug_when>
    <thetext>Landed in r27948.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>63379</commentid>
    <comment_count>11</comment_count>
    <who name="Rodney Dawes">dobey</who>
    <bug_when>2007-12-05 13:34:48 -0800</bug_when>
    <thetext>Hrmm. This worked when I tested it, but still fails now in SVN.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>63418</commentid>
    <comment_count>12</comment_count>
      <attachid>17431</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-12-05 23:01:26 -0800</bug_when>
    <thetext>Comment on attachment 17431
Defer timers during select()

Clearing the review flag since this patch was landed but the bug must remain open.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>63607</commentid>
    <comment_count>13</comment_count>
      <attachid>17776</attachid>
    <who name="Rodney Dawes">dobey</who>
    <bug_when>2007-12-07 11:36:04 -0800</bug_when>
    <thetext>Created attachment 17776
Patch to deal with EINTR

This is the patch I&apos;m currently using to deal with the EINTR case which is very commonly occuring with plug-ins requesting data through the browser.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>63616</commentid>
    <comment_count>14</comment_count>
      <attachid>17776</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-12-07 12:08:59 -0800</bug_when>
    <thetext>Comment on attachment 17776
Patch to deal with EINTR

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64652</commentid>
    <comment_count>15</comment_count>
      <attachid>17976</attachid>
    <who name="Rodney Dawes">dobey</who>
    <bug_when>2007-12-18 11:27:39 -0800</bug_when>
    <thetext>Created attachment 17976
Updated patch with ChangeLog

Here&apos;s an updated patch that fixes tabs v. spaces in the code, and includes a ChangeLog entry. Can we please get this committed? Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64667</commentid>
    <comment_count>16</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-12-18 13:53:19 -0800</bug_when>
    <thetext>Landed in r28834.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64673</commentid>
    <comment_count>17</comment_count>
      <attachid>17976</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-12-18 14:53:12 -0800</bug_when>
    <thetext>Comment on attachment 17976
Updated patch with ChangeLog

r=darin</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17418</attachid>
            <date>2007-11-20 08:10:28 -0800</date>
            <delta_ts>2007-12-07 11:36:04 -0800</delta_ts>
            <desc>Patch to handle EINTR correctly in curl backend</desc>
            <filename>webkit-curl-eintr.patch</filename>
            <type>text/plain</type>
            <size>1536</size>
            <attacher name="Rodney Dawes">dobey</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNzkwNikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMDctMTEtMjAgIFJvZG5leSBEYXdlcyAgPGRvYmV5QHdheW9mdGhl
bW9ua2V5LmNvbT4KKworICAgICAgICBUcnkgYWdhaW4gaWYgc2VsZWN0IHNldHMgZXJybm8gYXMg
RUlOVFIgaW4gY3VybCBiYWNrZW5kCisgICAgICAgIE5lZWQgdGhpcyBzbyB0aGF0IHdlIGRvd25s
b2FkIGFsbCB0aGUgc3RyZWFtIGNvbnRlbnQgZm9yIHlvdXR1YmUgYW5kCisgICAgICAgIG90aGVy
IHNpdGVzIHdpdGggc3RyZWFtaW5nIHZpZGVvIGRhdGEKKyAgICAgICAgVXNlIHBlcnJvcigpIGlu
c3RlYWQgb2YgcHJpbnRmKCkgd2hlbiBlcnJubyBpcyBub3QgRUlOVFIgZm9yIHNlbGVjdCgpCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVNYW5hZ2VyLmNw
cDoKKyAgICAgICAgKFJlc291cmNlSGFuZGxlTWFuYWdlcjo6ZG93bmxvYWRUaW1lckNhbGxiYWNr
KToKKwogMjAwNy0xMS0xOSAgQWxwIFRva2VyICA8YWxwQGF0b2tlci5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgTWFyayBSb3dlLgpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvUmVzb3VyY2VIYW5kbGVNYW5hZ2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3BwCShyZXZpc2lvbiAyNzkw
NikKKysrIFdlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlTWFuYWdl
ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM3LDYgKzM3LDcgQEAKICNpbmNsdWRlICJIVFRQUGFy
c2Vycy5oIgogI2luY2x1ZGUgIkJhc2U2NC5oIgogCisjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNs
dWRlIDx3dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTE4OSw4ICsxOTAs
MTMgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OmRvd25sb2FkVGltZQogICAgIGludCBy
YyA9IDo6c2VsZWN0KG1heGZkICsgMSwgJmZkcmVhZCwgJmZkd3JpdGUsICZmZGV4Y2VwLCAmdGlt
ZW91dCk7CiAKICAgICBpZiAoLTEgPT0gcmMpIHsKKyAgICAgICAgaWYgKGVycm5vID09IEVJTlRS
KSB7CisgICAgICAgICAgICBkb3dubG9hZFRpbWVyQ2FsbGJhY2sodGltZXIpOworICAgICAgICAg
ICAgcmV0dXJuOworICAgICAgICB9CisKICNpZm5kZWYgTkRFQlVHCi0gICAgICAgIHByaW50Zigi
YmFkOiBzZWxlY3QoKSByZXR1cm5lZCAtMVxuIik7CisgICAgICAgIHBlcnJvcigiYmFkOiBzZWxl
Y3QoKSByZXR1cm5lZCAtMTogIik7CiAjZW5kaWYKICAgICAgICAgcmV0dXJuOwogICAgIH0K
</data>
<flag name="review"
          id="7467"
          type_id="1"
          status="-"
          setter="alp"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17431</attachid>
            <date>2007-11-21 08:47:46 -0800</date>
            <delta_ts>2007-12-05 23:01:26 -0800</delta_ts>
            <desc>Defer timers during select()</desc>
            <filename>curl-eintr.patch</filename>
            <type>text/plain</type>
            <size>1889</size>
            <attacher name="Alp Toker">alp</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNzk0MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDctMTEtMjEgIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHA6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MDcxCisgICAgICAgIEN1cmwgYmFja2Vu
ZCBoYW5kbGVzIEVJTlRSIGluY29ycmVjdGx5CisKKyAgICAgICAgRGVmZXIgdGltZXJzIGR1cmlu
ZyBzZWxlY3QoKSB0byBhdm9pZCBpbnRlcnJ1cHRpb24gYnkgdGltZXIgc2lnbmFscy4KKworICAg
ICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjpkb3dubG9hZFRpbWVyQ2Fs
bGJhY2spOgorCiAyMDA3LTExLTIxICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIFJvYmVuLgpJbmRleDogV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVNYW5hZ2VyLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3Bw
CShyZXZpc2lvbiAyNzk0MCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291
cmNlSGFuZGxlTWFuYWdlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4Niw3ICsxODYsMTAgQEAg
dm9pZCBSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OmRvd25sb2FkVGltZQogICAgIHRpbWVvdXQudHZf
c2VjID0gMDsKICAgICB0aW1lb3V0LnR2X3VzZWMgPSBzZWxlY3RUaW1lb3V0TVMgKiAxMDAwOyAg
ICAgICAvLyBzZWxlY3Qgd2FpdHMgbWljcm9zZWNvbmRzCiAKKyAgICAvLyBUZW1wb3JhcmlseSBk
aXNhYmxlIHRpbWVycyBzaW5jZSBzaWduYWxzIG1heSBpbnRlcnJ1cHQgc2VsZWN0KCksIHJhaXNp
bmcgRUlOVFIgZXJyb3JzIG9uIHNvbWUgcGxhdGZvcm1zCisgICAgc2V0RGVmZXJyaW5nVGltZXJz
KHRydWUpOwogICAgIGludCByYyA9IDo6c2VsZWN0KG1heGZkICsgMSwgJmZkcmVhZCwgJmZkd3Jp
dGUsICZmZGV4Y2VwLCAmdGltZW91dCk7CisgICAgc2V0RGVmZXJyaW5nVGltZXJzKGZhbHNlKTsK
IAogICAgIGlmICgtMSA9PSByYykgewogI2lmbmRlZiBOREVCVUcKQEAgLTE5NiwxMCArMTk5LDcg
QEAgdm9pZCBSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OmRvd25sb2FkVGltZQogICAgIH0KIAogICAg
IGludCBydW5uaW5nSGFuZGxlcyA9IDA7Ci0gICAgQ1VSTE1jb2RlIGN1cmxDb2RlID0gQ1VSTE1f
Q0FMTF9NVUxUSV9QRVJGT1JNOwotICAgIHdoaWxlIChDVVJMTV9DQUxMX01VTFRJX1BFUkZPUk0g
PT0gY3VybENvZGUpIHsKLSAgICAgICAgY3VybENvZGUgPSBjdXJsX211bHRpX3BlcmZvcm0obV9j
dXJsTXVsdGlIYW5kbGUsICZydW5uaW5nSGFuZGxlcyk7Ci0gICAgfQorICAgIHdoaWxlIChjdXJs
X211bHRpX3BlcmZvcm0obV9jdXJsTXVsdGlIYW5kbGUsICZydW5uaW5nSGFuZGxlcykgPT0gQ1VS
TE1fQ0FMTF9NVUxUSV9QRVJGT1JNKTsKIAogICAgIC8vIGNoZWNrIHRoZSBjdXJsIG1lc3NhZ2Vz
IGluZGljYXRpbmcgY29tcGxldGVkIHRyYW5zZmVycwogICAgIC8vIGFuZCBmcmVlIHRoZWlyIHJl
c291cmNlcwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17776</attachid>
            <date>2007-12-07 11:36:04 -0800</date>
            <delta_ts>2007-12-18 11:27:39 -0800</delta_ts>
            <desc>Patch to deal with EINTR</desc>
            <filename>webkit-curl-eintr.patch</filename>
            <type>text/plain</type>
            <size>1657</size>
            <attacher name="Rodney Dawes">dobey</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlTWFuYWdl
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3Vy
Y2VIYW5kbGVNYW5hZ2VyLmNwcAkocmV2aXNpb24gMjgwNzMpCisrKyBXZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0zOCw2ICszOCw3IEBACiAjaW5jbHVkZSAiSFRUUFBhcnNlcnMuaCIKICNpbmNsdWRlICJCYXNl
NjQuaCIKIAorI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xNzUsMjYgKzE3NiwyOSBAQCB2b2lkIFJlc291cmNlSGFu
ZGxlTWFuYWdlcjo6ZG93bmxvYWRUaW1lCiAgICAgc3RhcnRTY2hlZHVsZWRKb2JzKCk7CiAKICAg
ICBmZF9zZXQgZmRyZWFkOwotICAgIEZEX1pFUk8oJmZkcmVhZCk7CiAgICAgZmRfc2V0IGZkd3Jp
dGU7Ci0gICAgRkRfWkVSTygmZmR3cml0ZSk7CiAgICAgZmRfc2V0IGZkZXhjZXA7Ci0gICAgRkRf
WkVSTygmZmRleGNlcCk7CiAgICAgaW50IG1heGZkID0gMDsKLSAgICBjdXJsX211bHRpX2Zkc2V0
KG1fY3VybE11bHRpSGFuZGxlLCAmZmRyZWFkLCAmZmR3cml0ZSwgJmZkZXhjZXAsICZtYXhmZCk7
CiAKICAgICBzdHJ1Y3QgdGltZXZhbCB0aW1lb3V0OwogICAgIHRpbWVvdXQudHZfc2VjID0gMDsK
ICAgICB0aW1lb3V0LnR2X3VzZWMgPSBzZWxlY3RUaW1lb3V0TVMgKiAxMDAwOyAgICAgICAvLyBz
ZWxlY3Qgd2FpdHMgbWljcm9zZWNvbmRzCiAKICAgICAvLyBUZW1wb3JhcmlseSBkaXNhYmxlIHRp
bWVycyBzaW5jZSBzaWduYWxzIG1heSBpbnRlcnJ1cHQgc2VsZWN0KCksIHJhaXNpbmcgRUlOVFIg
ZXJyb3JzIG9uIHNvbWUgcGxhdGZvcm1zCi0gICAgc2V0RGVmZXJyaW5nVGltZXJzKHRydWUpOwot
ICAgIGludCByYyA9IDo6c2VsZWN0KG1heGZkICsgMSwgJmZkcmVhZCwgJmZkd3JpdGUsICZmZGV4
Y2VwLCAmdGltZW91dCk7Ci0gICAgc2V0RGVmZXJyaW5nVGltZXJzKGZhbHNlKTsKKyAgICBXZWJD
b3JlOjpzZXREZWZlcnJpbmdUaW1lcnModHJ1ZSk7CisgICAgaW50IHJjOworICAgIGRvIHsKKyAg
ICAgICAgRkRfWkVSTygmZmRyZWFkKTsKKwlGRF9aRVJPKCZmZHdyaXRlKTsKKwlGRF9aRVJPKCZm
ZGV4Y2VwKTsKKwljdXJsX211bHRpX2Zkc2V0KG1fY3VybE11bHRpSGFuZGxlLCAmZmRyZWFkLCAm
ZmR3cml0ZSwgJmZkZXhjZXAsICZtYXhmZCk7CisJcmMgPSA6OnNlbGVjdChtYXhmZCArIDEsICZm
ZHJlYWQsICZmZHdyaXRlLCAmZmRleGNlcCwgJnRpbWVvdXQpOworICAgIH0gd2hpbGUgKHJjID09
IC0xICYmIGVycm5vID09IEVJTlRSKTsKKyAgICBXZWJDb3JlOjpzZXREZWZlcnJpbmdUaW1lcnMo
ZmFsc2UpOwogCiAgICAgaWYgKC0xID09IHJjKSB7CiAjaWZuZGVmIE5ERUJVRwotICAgICAgICBw
cmludGYoImJhZDogc2VsZWN0KCkgcmV0dXJuZWQgLTFcbiIpOworICAgICAgICBwZXJyb3IoImJh
ZDogc2VsZWN0KCkgcmV0dXJuZWQgLTE6ICIpOwogI2VuZGlmCiAgICAgICAgIHJldHVybjsKICAg
ICB9Cg==
</data>
<flag name="review"
          id="7657"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17976</attachid>
            <date>2007-12-18 11:27:39 -0800</date>
            <delta_ts>2007-12-18 14:53:12 -0800</delta_ts>
            <desc>Updated patch with ChangeLog</desc>
            <filename>webkit-curl-eintr.patch</filename>
            <type>text/plain</type>
            <size>2186</size>
            <attacher name="Rodney Dawes">dobey</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlTWFuYWdl
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3Vy
Y2VIYW5kbGVNYW5hZ2VyLmNwcAkocmV2aXNpb24gMjg4MzIpCisrKyBXZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0zOCw2ICszOCw3IEBACiAjaW5jbHVkZSAiSFRUUFBhcnNlcnMuaCIKICNpbmNsdWRlICJCYXNl
NjQuaCIKIAorI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xOTUsMTMgKzE5Niw5IEBAIHZvaWQgUmVzb3VyY2VIYW5k
bGVNYW5hZ2VyOjpkb3dubG9hZFRpbWUKICAgICBzdGFydFNjaGVkdWxlZEpvYnMoKTsKIAogICAg
IGZkX3NldCBmZHJlYWQ7Ci0gICAgRkRfWkVSTygmZmRyZWFkKTsKICAgICBmZF9zZXQgZmR3cml0
ZTsKLSAgICBGRF9aRVJPKCZmZHdyaXRlKTsKICAgICBmZF9zZXQgZmRleGNlcDsKLSAgICBGRF9a
RVJPKCZmZGV4Y2VwKTsKICAgICBpbnQgbWF4ZmQgPSAwOwotICAgIGN1cmxfbXVsdGlfZmRzZXQo
bV9jdXJsTXVsdGlIYW5kbGUsICZmZHJlYWQsICZmZHdyaXRlLCAmZmRleGNlcCwgJm1heGZkKTsK
IAogICAgIHN0cnVjdCB0aW1ldmFsIHRpbWVvdXQ7CiAgICAgdGltZW91dC50dl9zZWMgPSAwOwpA
QCAtMjA5LDEyICsyMDYsMTkgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OmRvd25sb2Fk
VGltZQogCiAgICAgLy8gVGVtcG9yYXJpbHkgZGlzYWJsZSB0aW1lcnMgc2luY2Ugc2lnbmFscyBt
YXkgaW50ZXJydXB0IHNlbGVjdCgpLCByYWlzaW5nIEVJTlRSIGVycm9ycyBvbiBzb21lIHBsYXRm
b3JtcwogICAgIHNldERlZmVycmluZ1RpbWVycyh0cnVlKTsKLSAgICBpbnQgcmMgPSA6OnNlbGVj
dChtYXhmZCArIDEsICZmZHJlYWQsICZmZHdyaXRlLCAmZmRleGNlcCwgJnRpbWVvdXQpOworICAg
IGludCByYzsKKyAgICBkbyB7CisgICAgICAgIEZEX1pFUk8oJmZkcmVhZCk7CisgICAgICAgIEZE
X1pFUk8oJmZkd3JpdGUpOworICAgICAgICBGRF9aRVJPKCZmZGV4Y2VwKTsKKyAgICAgICAgY3Vy
bF9tdWx0aV9mZHNldChtX2N1cmxNdWx0aUhhbmRsZSwgJmZkcmVhZCwgJmZkd3JpdGUsICZmZGV4
Y2VwLCAmbWF4ZmQpOworICAgICAgICByYyA9IDo6c2VsZWN0KG1heGZkICsgMSwgJmZkcmVhZCwg
JmZkd3JpdGUsICZmZGV4Y2VwLCAmdGltZW91dCk7CisgICAgfSB3aGlsZSAocmMgPT0gLTEgJiYg
ZXJybm8gPT0gRUlOVFIpOwogICAgIHNldERlZmVycmluZ1RpbWVycyhmYWxzZSk7CiAKICAgICBp
ZiAoLTEgPT0gcmMpIHsKICNpZm5kZWYgTkRFQlVHCi0gICAgICAgIHByaW50ZigiYmFkOiBzZWxl
Y3QoKSByZXR1cm5lZCAtMVxuIik7CisgICAgICAgIHBlcnJvcigiYmFkOiBzZWxlY3QoKSByZXR1
cm5lZCAtMTogIik7CiAjZW5kaWYKICAgICAgICAgcmV0dXJuOwogICAgIH0KSW5kZXg6IFdlYkNv
cmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAy
ODgzMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMDctMTItMTggIFJvZG5leSBEYXdlcyAgPGRvYmV5QHdheW9mdGhlbW9ua2V5LmNvbT4K
KworICAgICAgICBSZXZpZXdkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIEhhbmRsZSBFSU5U
UiB3aGVuIHNldCBieSBzZWxlY3QoKSBhbmQgdHJ5IHRoZSBzZWxlY3QoKSBhZ2FpbgorICAgICAg
ICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjA3MQorCisgICAgICAg
ICogcGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlTWFuYWdlci5jcHA6CisgICAg
ICAgIChSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OmRvd25sb2FkVGltZXJDYWxsYmFjayk6CisKIDIw
MDctMTItMTggIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBEYXZlIEh5YXR0Lgo=
</data>
<flag name="review"
          id="7799"
          type_id="1"
          status="+"
          setter="alp"
    />
          </attachment>
      

    </bug>

</bugzilla>