Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Webserver liefert Textdatei unvollstaendig aus

0 views
Skip to first unread message

Olaf Klischat

unread,
Mar 4, 2005, 11:29:29 AM3/4/05
to webm...@cs.tu-berlin.de
(Cc: an Webmaster)

Hi,

ganz offensichtlich liefert der Webserver die Datei

/home/k/klischat/www/map_v2/enum_map.rb

unter der URL

http://user.cs.tu-berlin.de/~klischat/map_v2/enum_map.rb

nur unvollständig aus:

klischat@butterfly:~ > cat /home/k/klischat/www/map_v2/enum_map.rb
require 'map'

module EnumerableMap
include Map
include Enumerable

def self.included(mod)
begin
mod.module_eval "alias_method :each_pair, :each"
rescue NameError
# mod doesn't define each. Not an error (but the methods below
# won't work).
end
end

def each_key
each{|(k,v)| yield k}
end

def each_value
each{|(k,v)| yield v}
end

def empty?
each{ return false }
true
end

def has_value?(value)
each{|(k,v)| return true if value==v }
false
end

alias_method :value?, :has_value?

def index(value)
each{|(k,v)| return k if value==v }
nil
end

def keys
result=[]
each{|(k,v)| result << k }
result
end

def values
result=[]
each{|(k,v)| result << v }
result
end

def invert
result={}
each{|(k,v)| result[v]=k }
result
end

def merge(other)
result=to_hash
other.each do |(k,v)|
result[k] = if key? k
if block_given?
yield(k,self[k],v)
else
v
end
else
result[k]=v
end
end
result
end

# unfortunately, in order to be compatible to Hash#reject, this
# method must be incompatible to Enumerable#reject :(
#
# (Hash#reject returns a Hash, Enumerable#reject returns an Array)
def reject
result={}
each{|(k,v)| result[k]=v unless yield(k,v) }
result
end

def to_hash
result={}
each{|(k,v)| result[k]=v }
result
end

def to_s
self.to_a.join
end

def sort(&block)
to_a.sort(&block)
end

def length
result=0
each{|(k,v)| result += 1 }
result
end

alias_method :size, :length


def ==(other)
unless other.kind_of?(Hash) or other.kind_of?(Map) # better: include Map in Hash
other = other.to_hash # better (...): to_map
end
# return false unless self.default==other.default
l=0
begin
self.each do |(k,v)|
return false unless other.fetch(k)==v
l+=1
end
rescue IndexError
return false
end
l==other.length
end

end
klischat@butterfly:~ > lynx -dump http://user.cs.tu-berlin.de/~klischat/map_v2/enum_map.rb
require 'map'

module EnumerableMap
include Map
include Enumerable

def self.included(mod)
begin
mod.module_eval "alias_method :each_pair, :each"
rescue NameError
# mod doesn't define each. Not an error (but the methods below
# won't work).
end
end

def each_key
each{|(k,v)| yield k}
end

def each_value
each{|(k,v)| yield v}
end

def empty?
each{ return false }
true
end

def has_value?(value)
each{|(k,v)| return true if value==v }
false
end

alias_method :value?, :has_value?

def index(value)
each{|(k,v)| return k if value==v }
nil
end

def keys
result=[]
each{|(k,v)| result << k }
result
end

def values
result=[]
each{|(k,v)| result << v }
result
end

def invert
result={}
each{|(k,v)| result[v]=k }
result
end

def merge(other)
result=to_hash
other.each do |(k,v)|
result[k] = if key? k
if block_given?
yield(k,self[k],v)
else
v
end
else
result[k]=v
end
end
result
end

# unfortunately, in order to be compatible to Hash#reject, this
# method must be incompatible to Enumerable#reject :(
#
# (Hash#reject returns a Hash, Enumerable#reject returns an Array)
def reject
result={}
each{|(k,v)| result[k]=v unless yield(k,v) }
result
end

def to_hash
result={}
each{|(k,v)| result[k]=v }
result
end

def to_s
self.to_a.join
end

def sort(&block)
to_a.sort(&block)
end

def length
result=0
each{|(k,v)| result += 1 }
result
end

alias_method :size, :length


def ==(other)
unless other.kind_of?(Hash) or other.kind_of?(Map) # better: include Map i
n Hash
other = other.to_hash # better (...): to_map
end
# return false unless self.default==other.default
l=0
begin
self.each do |(k,v)|
return false unless other.fetch(k)==v
l+=1
end
rescue IndexError
return false
end
l==oth
klischat@butterfly:~ >


Ich habe es mit verschiedenen HTTP-Clients auf verschiedenen Rechnern
(nicht nur an der TU) probiert -- immer mit demselben Ergebnis.

Olaf
--
Olaf Klischat | TU Berlin computer science
Oberfeldstrasse 132 |
12683 Berlin, Germany |
phone: +49 30 54986231 | eMail: klis...@cs.tu-berlin.de

Olaf Klischat

unread,
Mar 4, 2005, 12:20:08 PM3/4/05
to webm...@cs.tu-berlin.de
Olaf Klischat <olaf.k...@isst.fraunhofer.de> writes:

> (Cc: an Webmaster)
>
> Hi,
>
> ganz offensichtlich liefert der Webserver die Datei
>
> /home/k/klischat/www/map_v2/enum_map.rb
>
> unter der URL
>
> http://user.cs.tu-berlin.de/~klischat/map_v2/enum_map.rb
>
> nur unvollständig aus:

[...]

Hmm. Jetzt geht es offenbar. Ich schwöre, dass ich nicht halluziniert
habe. Der Output war genau wie angegeben, auf mehreren Rechnern an der
TU, .isst.fhg.de, Arcor.

Olaf

0 new messages