diff options
author | shugo <shugo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-06-13 00:26:51 +0000 |
---|---|---|
committer | shugo <shugo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-06-13 00:26:51 +0000 |
commit | e0a5ffa941d22ef4320db4ea803594e4dbb480d6 (patch) | |
tree | 08b100a58ad59396d4f92e17e2ae62e25ade61a1 | |
parent | 2850b7c4812894a616bca1af09f901fe9a202fb0 (diff) |
* lib/net/ftp.rb (storebinary): seek correctly. Thanks, William Webber.
* lib/net/ftp.rb (putbinaryfile): rescue FTPPermError.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | lib/net/ftp.rb | 9 |
2 files changed, 14 insertions, 1 deletions
@@ -1,3 +1,9 @@ +Fri Jun 13 09:24:39 2003 Shugo Maeda <shugo@ruby-lang.org> + + * lib/net/ftp.rb (storebinary): seek correctly. Thanks, William Webber. + + * lib/net/ftp.rb (putbinaryfile): rescue FTPPermError. + Tue Jun 10 14:26:30 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net> * ext/syck/token.c: preserve newlines prepended to a block. diff --git a/lib/net/ftp.rb b/lib/net/ftp.rb index 5a08e46280..b34c648bf3 100644 --- a/lib/net/ftp.rb +++ b/lib/net/ftp.rb @@ -407,6 +407,9 @@ module Net # the data, in chunks of +blocksize+ characters. # def storbinary(cmd, file, blocksize, rest_offset = nil, &block) # :yield: data + if rest_offset + file.seek(rest_offset, IO::SEEK_SET) + end synchronize do voidcmd("TYPE I") conn = transfercmd(cmd, rest_offset) @@ -509,7 +512,11 @@ module Net def putbinaryfile(localfile, remotefile = File.basename(localfile), blocksize = DEFAULT_BLOCKSIZE, &block) # :yield: line/data if @resume - rest_offset = size(remotefile) + begin + rest_offset = size(remotefile) + rescue Net::FTPPermError + rest_offset = nil + end else rest_offset = nil end |