[Spambayes-checkins] SF.net SVN: spambayes: [3168] trunk/spambayes/spambayes/hammie.py

montanaro at users.sourceforge.net montanaro at users.sourceforge.net
Mon Oct 22 04:51:08 CEST 2007


Revision: 3168
          http://spambayes.svn.sourceforge.net/spambayes/?rev=3168&view=rev
Author:   montanaro
Date:     2007-10-21 19:51:07 -0700 (Sun, 21 Oct 2007)

Log Message:
-----------
Don't attempt to store Hammie objects whose files were opened for reading.

Modified Paths:
--------------
    trunk/spambayes/spambayes/hammie.py

Modified: trunk/spambayes/spambayes/hammie.py
===================================================================
--- trunk/spambayes/spambayes/hammie.py	2007-10-22 02:45:57 UTC (rev 3167)
+++ trunk/spambayes/spambayes/hammie.py	2007-10-22 02:51:07 UTC (rev 3168)
@@ -21,8 +21,9 @@
 
     """
 
-    def __init__(self, bayes):
+    def __init__(self, bayes, mode):
         self.bayes = bayes
+        self.mode = mode
 
     def _scoremsg(self, msg, evidence=False):
         """Score a Message.
@@ -266,7 +267,8 @@
         self.bayes.store()
 
     def close(self):
-        self.store()
+        if self.mode != 'r':
+            self.store()
 
 def open(filename, useDB="dbm", mode='r'):
     """Open a file, returning a Hammie instance.
@@ -274,7 +276,7 @@
     mode is used as the flag to open DBDict objects.  'c' for read-write
     (create if needed), 'r' for read-only, 'w' for read-write.
     """
-    return Hammie(storage.open_storage(filename, useDB, mode))
+    return Hammie(storage.open_storage(filename, useDB, mode), mode)
 
 
 if __name__ == "__main__":


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.


More information about the Spambayes-checkins mailing list