[Python-checkins] python/dist/src/Lib pydoc.py,1.85,1.86

montanaro@users.sourceforge.net montanaro@users.sourceforge.net
2003年6月27日 08:45:44 -0700


Update of /cvsroot/python/python/dist/src/Lib
In directory sc8-pr-cvs1:/tmp/cvs-serv4797
Modified Files:
	pydoc.py 
Log Message:
(HTML|Text)Repr.repr1: Guard against objects whos types have no __name__
attribute. Patch and bug report from Geoff Talvola. Closes patch #672855.
Index: pydoc.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/pydoc.py,v
retrieving revision 1.85
retrieving revision 1.86
diff -C2 -d -r1.85 -r1.86
*** pydoc.py	14 Jun 2003 09:03:46 -0000	1.85
--- pydoc.py	27 Jun 2003 15:45:41 -0000	1.86
***************
*** 313,321 ****
 
 def repr1(self, x, level):
! methodname = 'repr_' + join(split(type(x).__name__), '_')
! if hasattr(self, methodname):
! return getattr(self, methodname)(x, level)
! else:
! return self.escape(cram(stripid(repr(x)), self.maxother))
 
 def repr_string(self, x, level):
--- 313,321 ----
 
 def repr1(self, x, level):
! if hasattr(type(x), '__name__'):
! methodname = 'repr_' + join(split(type(x).__name__), '_')
! if hasattr(self, methodname):
! return getattr(self, methodname)(x, level)
! return self.escape(cram(stripid(repr(x)), self.maxother))
 
 def repr_string(self, x, level):
***************
*** 875,883 ****
 
 def repr1(self, x, level):
! methodname = 'repr_' + join(split(type(x).__name__), '_')
! if hasattr(self, methodname):
! return getattr(self, methodname)(x, level)
! else:
! return cram(stripid(repr(x)), self.maxother)
 
 def repr_string(self, x, level):
--- 875,883 ----
 
 def repr1(self, x, level):
! if hasattr(type(x), '__name__'):
! methodname = 'repr_' + join(split(type(x).__name__), '_')
! if hasattr(self, methodname):
! return getattr(self, methodname)(x, level)
! return cram(stripid(repr(x)), self.maxother)
 
 def repr_string(self, x, level):

AltStyle によって変換されたページ (->オリジナル) /