[Python-checkins] CVS: python/dist/src/Lib dumbdbm.py,1.14,1.15

Fred L. Drake fdrake@users.sourceforge.net
Fri, 07 Dec 2001 13:54:49 -0800


Update of /cvsroot/python/python/dist/src/Lib
In directory usw-pr-cvs1:/tmp/cvs-serv12972/Lib

Modified Files:
	dumbdbm.py 
Log Message:
Honor the mode argument to dumbdbm.open(); there is not good reason not to,
especially since the documentation described it in detail.
This partially closes SF bug #490098.


Index: dumbdbm.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/dumbdbm.py,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** dumbdbm.py	2001/10/24 20:33:34	1.14
--- dumbdbm.py	2001/12/07 21:54:46	1.15
***************
*** 33,37 ****
  class _Database:
  
!     def __init__(self, file):
          self._dirfile = file + _os.extsep + 'dir'
          self._datfile = file + _os.extsep + 'dat'
--- 33,38 ----
  class _Database:
  
!     def __init__(self, file, mode):
!         self._mode = mode
          self._dirfile = file + _os.extsep + 'dir'
          self._datfile = file + _os.extsep + 'dat'
***************
*** 41,45 ****
              f = _open(self._datfile, 'r')
          except IOError:
!             f = _open(self._datfile, 'w')
          f.close()
          self._update()
--- 42,46 ----
              f = _open(self._datfile, 'r')
          except IOError:
!             f = _open(self._datfile, 'w', self._mode)
          f.close()
          self._update()
***************
*** 64,68 ****
          try: _os.rename(self._dirfile, self._bakfile)
          except _os.error: pass
!         f = _open(self._dirfile, 'w')
          for key, (pos, siz) in self._index.items():
              f.write("%s, (%s, %s)\n" % (`key`, `pos`, `siz`))
--- 65,69 ----
          try: _os.rename(self._dirfile, self._bakfile)
          except _os.error: pass
!         f = _open(self._dirfile, 'w', self._mode)
          for key, (pos, siz) in self._index.items():
              f.write("%s, (%s, %s)\n" % (`key`, `pos`, `siz`))
***************
*** 101,105 ****
      def _addkey(self, key, (pos, siz)):
          self._index[key] = (pos, siz)
!         f = _open(self._dirfile, 'a')
          f.write("%s, (%s, %s)\n" % (`key`, `pos`, `siz`))
          f.close()
--- 102,106 ----
      def _addkey(self, key, (pos, siz)):
          self._index[key] = (pos, siz)
!         f = _open(self._dirfile, 'a', self._mode)
          f.write("%s, (%s, %s)\n" % (`key`, `pos`, `siz`))
          f.close()
***************
*** 147,151 ****
  
  
! def open(file, flag=None, mode=None):
      # flag, mode arguments are currently ignored
!     return _Database(file)
--- 148,152 ----
  
  
! def open(file, flag=None, mode=0666):
      # flag, mode arguments are currently ignored
!     return _Database(file, mode)