syntax fixen & speedups for ydecode (i hope)
This commit is contained in:
parent
6367110c56
commit
3f4bdd189b
1 changed files with 24 additions and 12 deletions
|
|
@ -253,9 +253,15 @@ def get_body(server, message)
|
||||||
begin
|
begin
|
||||||
resp, id, messid, list = @connections[server]["nntp"].body(message)
|
resp, id, messid, list = @connections[server]["nntp"].body(message)
|
||||||
rescue Net::NNTPReplyError
|
rescue Net::NNTPReplyError
|
||||||
|
a = ''
|
||||||
|
a += $!
|
||||||
print "Caught Net::NNTPReplyError reading article #{message} from #{server} (get_body)\n"
|
print "Caught Net::NNTPReplyError reading article #{message} from #{server} (get_body)\n"
|
||||||
print "Error: #{$!}\n"
|
print "Error: #{$!}\n"
|
||||||
print "Status: #{$?}\n"
|
if retries == 0 && a =~ /^503/
|
||||||
|
reconnect(server)
|
||||||
|
get_group_info(server)
|
||||||
|
retry
|
||||||
|
end
|
||||||
return false
|
return false
|
||||||
rescue EOFError
|
rescue EOFError
|
||||||
print "Caught EOFError reading article #{message} from #{server} (get_body)\n"
|
print "Caught EOFError reading article #{message} from #{server} (get_body)\n"
|
||||||
|
|
@ -291,7 +297,8 @@ def get_group_body(subj)
|
||||||
print "message id: #{@groups[subj]["messages"][i]}\n" if Debuglevel > 1
|
print "message id: #{@groups[subj]["messages"][i]}\n" if Debuglevel > 1
|
||||||
print "id: #{@groups[subj]["ids"][i]}\n" if Debuglevel > 1
|
print "id: #{@groups[subj]["ids"][i]}\n" if Debuglevel > 1
|
||||||
print "server: #{@groups[subj]["servers"][i]}\n" if Debuglevel > 0
|
print "server: #{@groups[subj]["servers"][i]}\n" if Debuglevel > 0
|
||||||
begin
|
resp = false
|
||||||
|
while resp == false
|
||||||
if @serverlist.include?(@groups[subj]["servers"][i])
|
if @serverlist.include?(@groups[subj]["servers"][i])
|
||||||
resp, id, messid, list = get_body(@groups[subj]["servers"][i], @groups[subj]["messages"][i])
|
resp, id, messid, list = get_body(@groups[subj]["servers"][i], @groups[subj]["messages"][i])
|
||||||
else
|
else
|
||||||
|
|
@ -304,7 +311,6 @@ def get_group_body(subj)
|
||||||
(@groups[subj]["messages"][i] == @groups[subj]["messages"][i+1])
|
(@groups[subj]["messages"][i] == @groups[subj]["messages"][i+1])
|
||||||
print "Trying next server...\n"
|
print "Trying next server...\n"
|
||||||
i += 1
|
i += 1
|
||||||
retry
|
|
||||||
else
|
else
|
||||||
raise TempError, "Message-id not on another server"
|
raise TempError, "Message-id not on another server"
|
||||||
end
|
end
|
||||||
|
|
@ -326,7 +332,8 @@ def get_group_body_first(subj)
|
||||||
print "message id: #{@groups[subj]["messages"][i]}\n" if Debuglevel > 1
|
print "message id: #{@groups[subj]["messages"][i]}\n" if Debuglevel > 1
|
||||||
print "id: #{@groups[subj]["ids"][i]}\n" if Debuglevel > 1
|
print "id: #{@groups[subj]["ids"][i]}\n" if Debuglevel > 1
|
||||||
print "server: #{@groups[subj]["servers"][0]}\n" if Debuglevel > 0
|
print "server: #{@groups[subj]["servers"][0]}\n" if Debuglevel > 0
|
||||||
begin
|
resp = false
|
||||||
|
while resp == false
|
||||||
resp, id, messid, list = get_body(@groups[subj]["servers"][i], @groups[subj]["messages"][i])
|
resp, id, messid, list = get_body(@groups[subj]["servers"][i], @groups[subj]["messages"][i])
|
||||||
if resp == false
|
if resp == false
|
||||||
print "mess-id i: #{@groups[subj]["messages"][i]}\n"
|
print "mess-id i: #{@groups[subj]["messages"][i]}\n"
|
||||||
|
|
@ -335,7 +342,6 @@ def get_group_body_first(subj)
|
||||||
(@groups[subj]["messages"][i] == @groups[subj]["messages"][i+1])
|
(@groups[subj]["messages"][i] == @groups[subj]["messages"][i+1])
|
||||||
print "Trying next server...\n"
|
print "Trying next server...\n"
|
||||||
i += 1
|
i += 1
|
||||||
retry
|
|
||||||
else
|
else
|
||||||
raise TempError, "Message-id not on another server"
|
raise TempError, "Message-id not on another server"
|
||||||
end
|
end
|
||||||
|
|
@ -356,7 +362,8 @@ def get_group_body_rest(subj, file=nil)
|
||||||
print "message id: #{@groups[subj]["messages"][i]}\n" if Debuglevel > 1
|
print "message id: #{@groups[subj]["messages"][i]}\n" if Debuglevel > 1
|
||||||
print "id: #{@groups[subj]["ids"][i]}\n" if Debuglevel > 1
|
print "id: #{@groups[subj]["ids"][i]}\n" if Debuglevel > 1
|
||||||
print "server: #{@groups[subj]["servers"][i]}\n" if Debuglevel > 0
|
print "server: #{@groups[subj]["servers"][i]}\n" if Debuglevel > 0
|
||||||
begin
|
resp = false
|
||||||
|
while resp == false
|
||||||
resp, id, messid, list = get_body(@groups[subj]["servers"][i], @groups[subj]["messages"][i])
|
resp, id, messid, list = get_body(@groups[subj]["servers"][i], @groups[subj]["messages"][i])
|
||||||
if resp == false
|
if resp == false
|
||||||
print "mess-id i: #{@groups[subj]["messages"][i]}\n"
|
print "mess-id i: #{@groups[subj]["messages"][i]}\n"
|
||||||
|
|
@ -365,7 +372,6 @@ def get_group_body_rest(subj, file=nil)
|
||||||
(@groups[subj]["messages"][i] == @groups[subj]["messages"][i+1])
|
(@groups[subj]["messages"][i] == @groups[subj]["messages"][i+1])
|
||||||
print "Trying next server...\n"
|
print "Trying next server...\n"
|
||||||
i += 1
|
i += 1
|
||||||
retry
|
|
||||||
else
|
else
|
||||||
raise TempError, "Message-id not on another server"
|
raise TempError, "Message-id not on another server"
|
||||||
end
|
end
|
||||||
|
|
@ -753,7 +759,7 @@ def _ydecode_file(file, outfile)
|
||||||
while (! file.eof)
|
while (! file.eof)
|
||||||
print "at #{file.pos} need to go to #{lines}\n" if Debuglevel > 1
|
print "at #{file.pos} need to go to #{lines}\n" if Debuglevel > 1
|
||||||
line = file.gets
|
line = file.gets
|
||||||
line.chomp!
|
line.chop!
|
||||||
|
|
||||||
if line =~ /^=yend\s+(.*)\Z/
|
if line =~ /^=yend\s+(.*)\Z/
|
||||||
m = $1
|
m = $1
|
||||||
|
|
@ -813,14 +819,20 @@ def _ydecode_file(file, outfile)
|
||||||
# end
|
# end
|
||||||
|
|
||||||
i = 0
|
i = 0
|
||||||
while i < line.length
|
ll = line.length
|
||||||
if line[i] == '='
|
ostr = ''
|
||||||
|
while i < ll
|
||||||
|
if line[i] == 0x3d
|
||||||
i += 1
|
i += 1
|
||||||
line[i] -= 64
|
line[i] -= 64
|
||||||
end
|
end
|
||||||
outfile.putc ymap[line[i]%255]
|
ostr << ((line[i] - 42) % 256)
|
||||||
bytes += 1
|
# outfile.putc((line[i] - 42) % 256)
|
||||||
|
# ostr << ymap[line[i]%255]
|
||||||
|
i += 1
|
||||||
end
|
end
|
||||||
|
outfile << ostr
|
||||||
|
bytes += ostr.length
|
||||||
|
|
||||||
# special = 0
|
# special = 0
|
||||||
# line.each_byte { |b|
|
# line.each_byte { |b|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue