<?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>40209</bug_id>
          
          <creation_ts>2010-06-06 07:22:20 -0700</creation_ts>
          <short_desc>[GTK] Enabling File Reader/Writer APIs</short_desc>
          <delta_ts>2010-07-14 15:25: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>Platform</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>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Joone Hur">joone</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>gustavo</cc>
    
    <cc>jianli</cc>
    
    <cc>kinuko</cc>
    
    <cc>mrobinson</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>234661</commentid>
    <comment_count>0</comment_count>
      <attachid>57976</attachid>
    <who name="Joone Hur">joone</who>
    <bug_when>2010-06-06 07:22:20 -0700</bug_when>
    <thetext>Created attachment 57976
Proposed Patch

Enabling FileAPI for GTK Port causes build error.
Because there are 3 functions not implemented yet in FileSystemGtk.cpp
 * CString fileSystemRepresentation(const String&amp; path)
 * PlatformFileHandle openFile(const String&amp; path, FileOpenMode mode)
 * int readFromFile(PlatformFileHandle handle, char* data, int length)

I copied these functions from other port and tweaked a bit.
However, it could not pass fast/files test case.

The problem is that fileBlob, the parameter of readAsBinaryString is null as follows,

#0  0x002c42d8 in WTF::RefPtr&lt;WebCore::StringImpl&gt;::operator! (this=0xc) at ../../JavaScriptCore/wtf/RefPtr.h:68
#1  0x002ccc27 in WebCore::String::length (this=0xc) at ../../JavaScriptCore/wtf/text/WTFString.h:123
#2  0x00ca4b6f in WebCore::String::utf8 (this=0xc) at ../../JavaScriptCore/wtf/text/WTFString.cpp:641
#3  0x005b19da in WebCore::FileReader::readAsBinaryString (this=0x85ab058, fileBlob=0x0) at ../../WebCore/html/FileReader.cpp:88
#4  0x00df4baf in WebCore::jsFileReaderPrototypeFunctionReadAsBinaryString (exec=0xb544e118) at DerivedSources/JSFileReader.cpp:390

Is there any idea for solving this problem?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>235506</commentid>
    <comment_count>1</comment_count>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-06-08 13:53:51 -0700</bug_when>
    <thetext>The patch lgtm, though I&apos;m not a reviewer.
As for the test failure, how did you run the test?  If you&apos;re running fast/files/file-reader.html by manually choosing files under resources, you&apos;d end up selecting 6 files while the test requires 7 file entries (including non-existent one) and the last test would always fail.
(If that&apos;s the case maybe we should make the test support manual testing?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>235512</commentid>
    <comment_count>2</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-06-08 14:07:22 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; The patch lgtm, though I&apos;m not a reviewer.
&gt; As for the test failure, how did you run the test?  If you&apos;re running fast/files/file-reader.html by manually choosing files under resources, you&apos;d end up selecting 6 files while the test requires 7 file entries (including non-existent one) and the last test would always fail.
&gt; (If that&apos;s the case maybe we should make the test support manual testing?)

Does GTK support eventSender in DRT?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>235563</commentid>
    <comment_count>3</comment_count>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-06-08 15:52:09 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (In reply to comment #1)
&gt; &gt; The patch lgtm, though I&apos;m not a reviewer.
&gt; &gt; As for the test failure, how did you run the test?  If you&apos;re running fast/files/file-reader.html by manually choosing files under resources, you&apos;d end up selecting 6 files while the test requires 7 file entries (including non-existent one) and the last test would always fail.
&gt; &gt; (If that&apos;s the case maybe we should make the test support manual testing?)
&gt; 
&gt; Does GTK support eventSender in DRT?

(As far as I believe) it does, though I don&apos;t exactly know which features are missing or supported.  Basic ones like eventSender.mouseUp seem to be working.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>235566</commentid>
    <comment_count>4</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-06-08 16:01:36 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (As far as I believe) it does, though I don&apos;t exactly know which features are missing or supported.  Basic ones like eventSender.mouseUp seem to be working.

I mean eventSender.beginDragWithFiles.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>235569</commentid>
    <comment_count>5</comment_count>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-06-08 16:07:49 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; (As far as I believe) it does, though I don&apos;t exactly know which features are missing or supported.  Basic ones like eventSender.mouseUp seem to be working.
&gt; 
&gt; I mean eventSender.beginDragWithFiles.

Oh I see.  Apparently it does not.  There&apos;s a &quot;FIXME: Implement this comment&quot; in the code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>235572</commentid>
    <comment_count>6</comment_count>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-06-08 16:11:22 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #4)
&gt; &gt; (In reply to comment #3)
&gt; &gt; &gt; (As far as I believe) it does, though I don&apos;t exactly know which features are missing or supported.  Basic ones like eventSender.mouseUp seem to be working.
&gt; &gt; 
&gt; &gt; I mean eventSender.beginDragWithFiles.
&gt; 
&gt; Oh I see.  Apparently it does not.  There&apos;s a &quot;FIXME: Implement this comment&quot; in the code.
I meant: there&apos;s a &quot;FIXME: Implement this&quot; comment in the code.

(And that&apos;s why I asked if Joone tested the feature by manually selecting the files.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>235812</commentid>
    <comment_count>7</comment_count>
    <who name="Joone Hur">joone</who>
    <bug_when>2010-06-09 09:02:52 -0700</bug_when>
    <thetext>&gt; I meant: there&apos;s a &quot;FIXME: Implement this&quot; comment in the code.
&gt; 
&gt; (And that&apos;s why I asked if Joone tested the feature by manually selecting the files.)

I ran fast/files/file-reader.html by manually choosing UTF8.txt under resource directory.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>236137</commentid>
    <comment_count>8</comment_count>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-06-09 20:15:29 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; &gt; I meant: there&apos;s a &quot;FIXME: Implement this&quot; comment in the code.
&gt; &gt; 
&gt; &gt; (And that&apos;s why I asked if Joone tested the feature by manually selecting the files.)
&gt; 
&gt; I ran fast/files/file-reader.html by manually choosing UTF8.txt under resource directory.

In that case the reason it&apos;s failing is because the GTK port doesn&apos;t support eventSender.beginDragWithFiles.   The patch itself looks ok to me - in my environment the file-reader.html ran successfully with your patch (with a small tweak in the test to work around beginDragWithFiles).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>250390</commentid>
    <comment_count>9</comment_count>
      <attachid>61346</attachid>
    <who name="Joone Hur">joone</who>
    <bug_when>2010-07-13 01:43:20 -0700</bug_when>
    <thetext>Created attachment 61346
Updated patch with ChangeLog

Thanks, Kinuko, Jian for comments.

eventSender.beginDragWithFiles is not implemented yet for GTK.
https://bugs.webkit.org/show_bug.cgi?id=40833

fast/files/file-reader.html works well with the trunk by manually selecting the files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>250391</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-07-13 01:44:58 -0700</bug_when>
    <thetext>Attachment 61346 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebCore/platform/gtk/FileSystemGtk.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>250392</commentid>
    <comment_count>11</comment_count>
      <attachid>61347</attachid>
    <who name="Joone Hur">joone</who>
    <bug_when>2010-07-13 01:47:03 -0700</bug_when>
    <thetext>Created attachment 61347
test case

It loads a image file from disk and display the image.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>250417</commentid>
    <comment_count>12</comment_count>
      <attachid>61351</attachid>
    <who name="Joone Hur">joone</who>
    <bug_when>2010-07-13 03:17:51 -0700</bug_when>
    <thetext>Created attachment 61351
Fixed style error</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>250772</commentid>
    <comment_count>13</comment_count>
      <attachid>61351</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-07-13 15:11:36 -0700</bug_when>
    <thetext>Comment on attachment 61351
Fixed style error

Generally looks good except one minor comment:

WebCore/ChangeLog:8
 +          No new tests, it needs to include fast/files test case.
This comment is a little bit confusing. Better to say the layout test fast/files will be enabled after eventSender.beginDragWithFiles is implemented for GTK.

By the way, do you want to land your patch via commit-queue after it is approved? If yes, please set commit-queue flag to &quot;?&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>250871</commentid>
    <comment_count>14</comment_count>
      <attachid>61444</attachid>
    <who name="Joone Hur">joone</who>
    <bug_when>2010-07-13 18:03:17 -0700</bug_when>
    <thetext>Created attachment 61444
updated the test case comment


Thanks Jian for the review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>250892</commentid>
    <comment_count>15</comment_count>
      <attachid>61444</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-07-13 18:25:00 -0700</bug_when>
    <thetext>Comment on attachment 61444
updated the test case comment

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>251094</commentid>
    <comment_count>16</comment_count>
      <attachid>61444</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-07-14 03:32:33 -0700</bug_when>
    <thetext>Comment on attachment 61444
updated the test case comment

The commit queue seems to have gotten stuck on this for some reason.  removing cq bit to see if that fixes it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>251109</commentid>
    <comment_count>17</comment_count>
      <attachid>61444</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-07-14 04:15:15 -0700</bug_when>
    <thetext>Comment on attachment 61444
updated the test case comment

Clearing flags on attachment: 61444

Committed r63308: &lt;http://trac.webkit.org/changeset/63308&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>251110</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-07-14 04:15:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>251458</commentid>
    <comment_count>19</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-07-14 15:25:07 -0700</bug_when>
    <thetext>The commit-queue clearly wasn&apos;t stuck. :)  Just was taking a while.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>57976</attachid>
            <date>2010-06-06 07:22:20 -0700</date>
            <delta_ts>2010-07-13 01:43:42 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>file_reader.diff</filename>
            <type>text/plain</type>
            <size>1797</size>
            <attacher name="Joone Hur">joone</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0ZpbGVTeXN0ZW1HdGsuY3BwIGIvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvRmlsZVN5c3RlbUd0ay5jcHAKaW5kZXggZTMyNDM2Ny4uNjMwMThh
YyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvRmlsZVN5c3RlbUd0ay5jcHAKKysr
IGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvRmlsZVN5c3RlbUd0ay5jcHAKQEAgLTI5LDEwICsyOSwx
OCBAQAogI2luY2x1ZGUgPGdsaWIuaD4KICNpbmNsdWRlIDxnbGliL2dzdGRpby5oPgogCisjaW5j
bHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxmY250bC5oPgorCiAjaW5jbHVkZSA8dW5pc3RkLmg+
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorQ1N0cmluZyBmaWxlU3lzdGVtUmVwcmVzZW50YXRp
b24oY29uc3QgU3RyaW5nJiBwYXRoKQoreworICAgIHJldHVybiBwYXRoLnV0ZjgoKTsKK30KKwog
LyogT24gbGludXggZmlsZSBuYW1lcyBhcmUganVzdCByYXcgYnl0ZXMsIHNvIGFsc28gc3RyaW5n
cyB0aGF0IGNhbm5vdCBiZSBlbmNvZGVkIGluIGFueSB3YXkKICAqIGFyZSB2YWxpZCBmaWxlIG5h
bWVzLiBUaGlzIG1lYW4gdGhhdCB3ZSBjYW5ub3QganVzdCBzdG9yZSBhIGZpbGUgbmFtZSBhcy1p
cyBpbiBhIFN0cmluZwogICogYnV0IHdlIGhhdmUgdG8gZXNjYXBlIGl0LgpAQCAtMjMzLDYgKzI0
MSwyMSBAQCBDU3RyaW5nIG9wZW5UZW1wb3JhcnlGaWxlKGNvbnN0IGNoYXIqIHByZWZpeCwgUGxh
dGZvcm1GaWxlSGFuZGxlJiBoYW5kbGUpCiAgICAgcmV0dXJuIHRlbXBGaWxlUGF0aDsKIH0KIAor
UGxhdGZvcm1GaWxlSGFuZGxlIG9wZW5GaWxlKGNvbnN0IFN0cmluZyYgcGF0aCwgRmlsZU9wZW5N
b2RlIG1vZGUpCit7CisgICAgQ1N0cmluZyBmc1JlcCA9IGZpbGVTeXN0ZW1SZXByZXNlbnRhdGlv
bihwYXRoKTsKKworICAgIGlmIChmc1JlcC5pc051bGwoKSkKKyAgICAgICAgcmV0dXJuIGludmFs
aWRQbGF0Zm9ybUZpbGVIYW5kbGU7CisKKyAgICBpbnQgcGxhdGZvcm1GbGFnID0gMDsKKyAgICBp
ZiAobW9kZSA9PSBPcGVuRm9yUmVhZCkKKyAgICAgICAgcGxhdGZvcm1GbGFnIHw9IE9fUkRPTkxZ
OworICAgIGVsc2UgaWYgKG1vZGUgPT0gT3BlbkZvcldyaXRlKQorICAgICAgICBwbGF0Zm9ybUZs
YWcgfD0gKE9fV1JPTkxZIHwgT19DUkVBVCB8IE9fVFJVTkMpOworICAgIHJldHVybiBnX29wZW4o
ZnNSZXAuZGF0YSgpLCBwbGF0Zm9ybUZsYWcsIDA2NjYpOworfQorCiB2b2lkIGNsb3NlRmlsZShQ
bGF0Zm9ybUZpbGVIYW5kbGUmIGhhbmRsZSkKIHsKICAgICBpZiAoaXNIYW5kbGVWYWxpZChoYW5k
bGUpKSB7CkBAIC0yNTUsNiArMjc4LDE2IEBAIGludCB3cml0ZVRvRmlsZShQbGF0Zm9ybUZpbGVI
YW5kbGUgaGFuZGxlLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoKQogICAgIHJldHVybiB0
b3RhbEJ5dGVzV3JpdHRlbjsKIH0KIAoraW50IHJlYWRGcm9tRmlsZShQbGF0Zm9ybUZpbGVIYW5k
bGUgaGFuZGxlLCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoKQoreworICAgIGRvIHsKKyAgICAgICAg
aW50IGJ5dGVzUmVhZCA9IHJlYWQoaGFuZGxlLCBkYXRhLCBzdGF0aWNfY2FzdDxzaXplX3Q+KGxl
bmd0aCkpOworICAgICAgICBpZiAoYnl0ZXNSZWFkID49IDApCisgICAgICAgICAgICByZXR1cm4g
Ynl0ZXNSZWFkOworICAgIH0gd2hpbGUgKGVycm5vID09IEVJTlRSKTsKKyAgICByZXR1cm4gLTE7
Cit9CisKIGJvb2wgdW5sb2FkTW9kdWxlKFBsYXRmb3JtTW9kdWxlIG1vZHVsZSkKIHsKICAgICBy
ZXR1cm4gZ19tb2R1bGVfY2xvc2UobW9kdWxlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61346</attachid>
            <date>2010-07-13 01:43:20 -0700</date>
            <delta_ts>2010-07-13 03:17:51 -0700</delta_ts>
            <desc>Updated patch with ChangeLog</desc>
            <filename>fileAPI2.diff</filename>
            <type>text/plain</type>
            <size>2117</size>
            <attacher name="Joone Hur">joone</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YzVlOGRkZi4uMjI1YmRiMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMC0wNy0xMiAgSm9vbmUgSHVyICA8
am9vbmVAa2xkcC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgW0dUS10gRW5hYmxpbmcgRmlsZSBSZWFkZXIvV3JpdGVyIEFQSXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwMjA5CisKKyAgICAgICAg
Tm8gbmV3IHRlc3RzLCBpdCBuZWVkcyB0byBpbmNsdWRlIGZhc3QvZmlsZXMgdGVzdCBjYXNlLgor
CisgICAgICAgICogcGxhdGZvcm0vZ3RrL0ZpbGVTeXN0ZW1HdGsuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6b3BlbkZpbGUpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnJlYWRGcm9tRmlsZSk6
IEFkZGVkLgorCiAyMDEwLTA3LTExICBNYWNpZWogU3RhY2hvd2lhayAgPG1qc0BhcHBsZS5jb20+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL0ZpbGVTeXN0ZW1HdGsuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
RmlsZVN5c3RlbUd0ay5jcHAKaW5kZXggNDAxYmQ0YS4uYWU0MGRkYyAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvRmlsZVN5c3RlbUd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvRmlsZVN5c3RlbUd0ay5jcHAKQEAgLTI2LDYgKzI2LDkgQEAKICNpbmNsdWRlICJQbGF0
Zm9ybVN0cmluZy5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KIAorI2luY2x1ZGUg
PGVycm5vLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKwogI2luY2x1ZGUgPGdsaWIuaD4KICNpbmNs
dWRlIDxnbGliL2dzdGRpby5oPgogCkBAIC0yMzMsNiArMjM2LDIxIEBAIENTdHJpbmcgb3BlblRl
bXBvcmFyeUZpbGUoY29uc3QgY2hhciogcHJlZml4LCBQbGF0Zm9ybUZpbGVIYW5kbGUmIGhhbmRs
ZSkKICAgICByZXR1cm4gdGVtcEZpbGVQYXRoOwogfQogCitQbGF0Zm9ybUZpbGVIYW5kbGUgb3Bl
bkZpbGUoY29uc3QgU3RyaW5nJiBwYXRoLCBGaWxlT3Blbk1vZGUgbW9kZSkKK3sKKyAgICBDU3Ry
aW5nIGZzUmVwID0gZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKHBhdGgpOworCisgICAgaWYgKGZz
UmVwLmlzTnVsbCgpKQorICAgICAgICByZXR1cm4gaW52YWxpZFBsYXRmb3JtRmlsZUhhbmRsZTsK
KworICAgIGludCBwbGF0Zm9ybUZsYWcgPSAwOworICAgIGlmIChtb2RlID09IE9wZW5Gb3JSZWFk
KQorICAgICAgICBwbGF0Zm9ybUZsYWcgfD0gT19SRE9OTFk7CisgICAgZWxzZSBpZiAobW9kZSA9
PSBPcGVuRm9yV3JpdGUpCisgICAgICAgIHBsYXRmb3JtRmxhZyB8PSAoT19XUk9OTFkgfCBPX0NS
RUFUIHwgT19UUlVOQyk7CisgICAgcmV0dXJuIGdfb3Blbihmc1JlcC5kYXRhKCksIHBsYXRmb3Jt
RmxhZywgMDY2Nik7Cit9CisKIHZvaWQgY2xvc2VGaWxlKFBsYXRmb3JtRmlsZUhhbmRsZSYgaGFu
ZGxlKQogewogICAgIGlmIChpc0hhbmRsZVZhbGlkKGhhbmRsZSkpIHsKQEAgLTI1NSw2ICsyNzMs
MTYgQEAgaW50IHdyaXRlVG9GaWxlKFBsYXRmb3JtRmlsZUhhbmRsZSBoYW5kbGUsIGNvbnN0IGNo
YXIqIGRhdGEsIGludCBsZW5ndGgpCiAgICAgcmV0dXJuIHRvdGFsQnl0ZXNXcml0dGVuOwogfQog
CitpbnQgcmVhZEZyb21GaWxlKFBsYXRmb3JtRmlsZUhhbmRsZSBoYW5kbGUsIGNoYXIqIGRhdGEs
IGludCBsZW5ndGgpCit7CisgICAgZG8geworICAgICAgICBpbnQgYnl0ZXNSZWFkID0gcmVhZCho
YW5kbGUsIGRhdGEsIHN0YXRpY19jYXN0PHNpemVfdD4obGVuZ3RoKSk7CisgICAgICAgIGlmIChi
eXRlc1JlYWQgPj0gMCkKKyAgICAgICAgICAgIHJldHVybiBieXRlc1JlYWQ7CisgICAgfSB3aGls
ZSAoZXJybm8gPT0gRUlOVFIpOworICAgIHJldHVybiAtMTsKK30KKwogYm9vbCB1bmxvYWRNb2R1
bGUoUGxhdGZvcm1Nb2R1bGUgbW9kdWxlKQogewogICAgIHJldHVybiBnX21vZHVsZV9jbG9zZSht
b2R1bGUpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>61347</attachid>
            <date>2010-07-13 01:47:03 -0700</date>
            <delta_ts>2010-07-13 01:47:03 -0700</delta_ts>
            <desc>test case</desc>
            <filename>fileAPI.html</filename>
            <type>text/html</type>
            <size>787</size>
            <attacher name="Joone Hur">joone</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPgo8dGl0bGU+IEZpbGVSZWFkZXIgQVBJIFRlc3QgPC90aXRsZT4KPC9oZWFk
Pgo8Ym9keT4KPHNjcmlwdD4KZnVuY3Rpb24gb25JbnB1dEZpbGVDaGFuZ2UoKQp7CiAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIpLmlubmVySFRNTD0iIjsKICAgIGxvZygib25J
bnB1dEZpbGVDaGFuZ2VcbiIpOwoKICAgIHZhciBmaWxlSW5wdXQgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZmlsZSIpOwogICAgdmFyIGZpbGVMaXN0ID0gZmlsZUlucHV0LmZpbGVzOwogICAg
bG9nKGZpbGVMaXN0WzBdLm5hbWUpOwoKICAgIHZhciBpbWFnZVNyYyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJpbWFnZSIpOwogICAgdmFyIHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7CiAg
ICByZWFkZXIub25sb2FkID0gZnVuY3Rpb24oKSB7CiAgICAgICAgaW1hZ2VTcmMuc3JjID0gcmVh
ZGVyLnJlc3VsdDsKICAgIH0KICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGVMaXN0WzBdKTsK
fQoKZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCnsKICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdj
b25zb2xlJykuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobWVzc2FnZSArICJc
biIpKTsKfQo8L3NjcmlwdD4KCjxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlIiBpZD0iZmls
ZSIgb25jaGFuZ2U9Im9uSW5wdXRGaWxlQ2hhbmdlKCkiIE11bHRpcGxlPgo8cHJlIGlkPSJjb25z
b2xlIj48L3ByZT4KPGltZyBpZD0iaW1hZ2UiPgo8L2JvZHk+CjwvaHRtbD4KCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61351</attachid>
            <date>2010-07-13 03:17:51 -0700</date>
            <delta_ts>2010-07-13 18:03:17 -0700</delta_ts>
            <desc>Fixed style error</desc>
            <filename>fileAPI3.diff</filename>
            <type>text/plain</type>
            <size>2222</size>
            <attacher name="Joone Hur">joone</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YzVlOGRkZi4uMjI1YmRiMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMC0wNy0xMiAgSm9vbmUgSHVyICA8
am9vbmVAa2xkcC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgW0dUS10gRW5hYmxpbmcgRmlsZSBSZWFkZXIvV3JpdGVyIEFQSXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwMjA5CisKKyAgICAgICAg
Tm8gbmV3IHRlc3RzLCBpdCBuZWVkcyB0byBpbmNsdWRlIGZhc3QvZmlsZXMgdGVzdCBjYXNlLgor
CisgICAgICAgICogcGxhdGZvcm0vZ3RrL0ZpbGVTeXN0ZW1HdGsuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6b3BlbkZpbGUpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnJlYWRGcm9tRmlsZSk6
IEFkZGVkLgorCiAyMDEwLTA3LTExICBNYWNpZWogU3RhY2hvd2lhayAgPG1qc0BhcHBsZS5jb20+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL0ZpbGVTeXN0ZW1HdGsuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
RmlsZVN5c3RlbUd0ay5jcHAKaW5kZXggNDAxYmQ0YS4uN2FkMmEzOSAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvRmlsZVN5c3RlbUd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvRmlsZVN5c3RlbUd0ay5jcHAKQEAgLTI0LDEyICsyNCwxMyBAQAogCiAjaW5jbHVkZSAi
R093blB0ci5oIgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCi0jaW5jbHVkZSA8d3RmL3Rl
eHQvQ1N0cmluZy5oPgogCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxmY250bC5oPgog
I2luY2x1ZGUgPGdsaWIuaD4KICNpbmNsdWRlIDxnbGliL2dzdGRpby5oPgotCiAjaW5jbHVkZSA8
dW5pc3RkLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKQEAgLTIzMyw2ICsyMzQsMjIgQEAgQ1N0cmluZyBvcGVuVGVtcG9yYXJ5RmlsZShj
b25zdCBjaGFyKiBwcmVmaXgsIFBsYXRmb3JtRmlsZUhhbmRsZSYgaGFuZGxlKQogICAgIHJldHVy
biB0ZW1wRmlsZVBhdGg7CiB9CiAKK1BsYXRmb3JtRmlsZUhhbmRsZSBvcGVuRmlsZShjb25zdCBT
dHJpbmcmIHBhdGgsIEZpbGVPcGVuTW9kZSBtb2RlKQoreworICAgIENTdHJpbmcgZnNSZXAgPSBm
aWxlU3lzdGVtUmVwcmVzZW50YXRpb24ocGF0aCk7CisKKyAgICBpZiAoZnNSZXAuaXNOdWxsKCkp
CisgICAgICAgIHJldHVybiBpbnZhbGlkUGxhdGZvcm1GaWxlSGFuZGxlOworCisgICAgaW50IHBs
YXRmb3JtRmxhZyA9IDA7CisgICAgaWYgKG1vZGUgPT0gT3BlbkZvclJlYWQpCisgICAgICAgIHBs
YXRmb3JtRmxhZyB8PSBPX1JET05MWTsKKyAgICBlbHNlIGlmIChtb2RlID09IE9wZW5Gb3JXcml0
ZSkKKyAgICAgICAgcGxhdGZvcm1GbGFnIHw9IChPX1dST05MWSB8IE9fQ1JFQVQgfCBPX1RSVU5D
KTsKKworICAgIHJldHVybiBnX29wZW4oZnNSZXAuZGF0YSgpLCBwbGF0Zm9ybUZsYWcsIDA2NjYp
OworfQorCiB2b2lkIGNsb3NlRmlsZShQbGF0Zm9ybUZpbGVIYW5kbGUmIGhhbmRsZSkKIHsKICAg
ICBpZiAoaXNIYW5kbGVWYWxpZChoYW5kbGUpKSB7CkBAIC0yNTUsNiArMjcyLDE3IEBAIGludCB3
cml0ZVRvRmlsZShQbGF0Zm9ybUZpbGVIYW5kbGUgaGFuZGxlLCBjb25zdCBjaGFyKiBkYXRhLCBp
bnQgbGVuZ3RoKQogICAgIHJldHVybiB0b3RhbEJ5dGVzV3JpdHRlbjsKIH0KIAoraW50IHJlYWRG
cm9tRmlsZShQbGF0Zm9ybUZpbGVIYW5kbGUgaGFuZGxlLCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3Ro
KQoreworICAgIGRvIHsKKyAgICAgICAgaW50IGJ5dGVzUmVhZCA9IHJlYWQoaGFuZGxlLCBkYXRh
LCBzdGF0aWNfY2FzdDxzaXplX3Q+KGxlbmd0aCkpOworICAgICAgICBpZiAoYnl0ZXNSZWFkID49
IDApCisgICAgICAgICAgICByZXR1cm4gYnl0ZXNSZWFkOworICAgIH0gd2hpbGUgKGVycm5vID09
IEVJTlRSKTsKKworICAgIHJldHVybiAtMTsKK30KKwogYm9vbCB1bmxvYWRNb2R1bGUoUGxhdGZv
cm1Nb2R1bGUgbW9kdWxlKQogewogICAgIHJldHVybiBnX21vZHVsZV9jbG9zZShtb2R1bGUpOwo=
</data>
<flag name="review"
          id="49367"
          type_id="1"
          status="-"
          setter="jianli"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61444</attachid>
            <date>2010-07-13 18:03:17 -0700</date>
            <delta_ts>2010-07-14 04:15:15 -0700</delta_ts>
            <desc>updated the test case comment</desc>
            <filename>fileAPI4.diff</filename>
            <type>text/plain</type>
            <size>2271</size>
            <attacher name="Joone Hur">joone</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YjBlZmY5ZS4uODgwNzg4ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMC0wNy0xMiAgSm9vbmUgSHVyICA8
am9vbmVAa2xkcC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgW0dUS10gRW5hYmxpbmcgRmlsZSBSZWFkZXIvV3JpdGVyIEFQSXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwMjA5CisKKyAgICAgICAg
VGhlIGxheW91dCB0ZXN0IGZhc3QvZmlsZXMgd2lsbCBiZSBlbmFibGVkIGFmdGVyIGV2ZW50U2Vu
ZGVyLmJlZ2luRHJhZ1dpdGhGaWxlcyBpcyBpbXBsZW1lbnRlZCBmb3IgR1RLLgorCisgICAgICAg
ICogcGxhdGZvcm0vZ3RrL0ZpbGVTeXN0ZW1HdGsuY3BwOgorICAgICAgICAoV2ViQ29yZTo6b3Bl
bkZpbGUpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnJlYWRGcm9tRmlsZSk6IEFkZGVkLgor
CiAyMDEwLTA3LTEyICBTdGV2ZSBCbG9jayAgPHN0ZXZlYmxvY2tAZ29vZ2xlLmNvbT4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBKZXJlbXkgT3Jsb3cuCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9GaWxlU3lzdGVtR3RrLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0ZpbGVTeXN0
ZW1HdGsuY3BwCmluZGV4IDQwMWJkNGEuLjdhZDJhMzkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL0ZpbGVTeXN0ZW1HdGsuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0Zp
bGVTeXN0ZW1HdGsuY3BwCkBAIC0yNCwxMiArMjQsMTMgQEAKIAogI2luY2x1ZGUgIkdPd25QdHIu
aCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgotI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJp
bmcuaD4KIAorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KICNpbmNsdWRl
IDxnbGliLmg+CiAjaW5jbHVkZSA8Z2xpYi9nc3RkaW8uaD4KLQogI2luY2x1ZGUgPHVuaXN0ZC5o
PgorI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CkBAIC0yMzMsNiArMjM0LDIyIEBAIENTdHJpbmcgb3BlblRlbXBvcmFyeUZpbGUoY29uc3QgY2hh
ciogcHJlZml4LCBQbGF0Zm9ybUZpbGVIYW5kbGUmIGhhbmRsZSkKICAgICByZXR1cm4gdGVtcEZp
bGVQYXRoOwogfQogCitQbGF0Zm9ybUZpbGVIYW5kbGUgb3BlbkZpbGUoY29uc3QgU3RyaW5nJiBw
YXRoLCBGaWxlT3Blbk1vZGUgbW9kZSkKK3sKKyAgICBDU3RyaW5nIGZzUmVwID0gZmlsZVN5c3Rl
bVJlcHJlc2VudGF0aW9uKHBhdGgpOworCisgICAgaWYgKGZzUmVwLmlzTnVsbCgpKQorICAgICAg
ICByZXR1cm4gaW52YWxpZFBsYXRmb3JtRmlsZUhhbmRsZTsKKworICAgIGludCBwbGF0Zm9ybUZs
YWcgPSAwOworICAgIGlmIChtb2RlID09IE9wZW5Gb3JSZWFkKQorICAgICAgICBwbGF0Zm9ybUZs
YWcgfD0gT19SRE9OTFk7CisgICAgZWxzZSBpZiAobW9kZSA9PSBPcGVuRm9yV3JpdGUpCisgICAg
ICAgIHBsYXRmb3JtRmxhZyB8PSAoT19XUk9OTFkgfCBPX0NSRUFUIHwgT19UUlVOQyk7CisKKyAg
ICByZXR1cm4gZ19vcGVuKGZzUmVwLmRhdGEoKSwgcGxhdGZvcm1GbGFnLCAwNjY2KTsKK30KKwog
dm9pZCBjbG9zZUZpbGUoUGxhdGZvcm1GaWxlSGFuZGxlJiBoYW5kbGUpCiB7CiAgICAgaWYgKGlz
SGFuZGxlVmFsaWQoaGFuZGxlKSkgewpAQCAtMjU1LDYgKzI3MiwxNyBAQCBpbnQgd3JpdGVUb0Zp
bGUoUGxhdGZvcm1GaWxlSGFuZGxlIGhhbmRsZSwgY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0
aCkKICAgICByZXR1cm4gdG90YWxCeXRlc1dyaXR0ZW47CiB9CiAKK2ludCByZWFkRnJvbUZpbGUo
UGxhdGZvcm1GaWxlSGFuZGxlIGhhbmRsZSwgY2hhciogZGF0YSwgaW50IGxlbmd0aCkKK3sKKyAg
ICBkbyB7CisgICAgICAgIGludCBieXRlc1JlYWQgPSByZWFkKGhhbmRsZSwgZGF0YSwgc3RhdGlj
X2Nhc3Q8c2l6ZV90PihsZW5ndGgpKTsKKyAgICAgICAgaWYgKGJ5dGVzUmVhZCA+PSAwKQorICAg
ICAgICAgICAgcmV0dXJuIGJ5dGVzUmVhZDsKKyAgICB9IHdoaWxlIChlcnJubyA9PSBFSU5UUik7
CisKKyAgICByZXR1cm4gLTE7Cit9CisKIGJvb2wgdW5sb2FkTW9kdWxlKFBsYXRmb3JtTW9kdWxl
IG1vZHVsZSkKIHsKICAgICByZXR1cm4gZ19tb2R1bGVfY2xvc2UobW9kdWxlKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>