Import a correct configparser for the interpreter
[mudpy.git] / lib / mudpy / data.py
index 4553c7b..de76416 100644 (file)
@@ -1,7 +1,7 @@
 # -*- coding: utf-8 -*-
 """Data interface functions for the mudpy engine."""
 
-# Copyright (c) 2004-2012 Jeremy Stanley <fungi@yuggoth.org>. Permission
+# Copyright (c) 2004-2013 Jeremy Stanley <fungi@yuggoth.org>. Permission
 # to use, copy, modify, and distribute this software is granted under
 # terms provided in the LICENSE file distributed with this software.
 
@@ -17,11 +17,15 @@ class DataFile:
 
     def load(self):
         """Read a file and create elements accordingly."""
-        import ConfigParser
         import mudpy.misc
         import os
         import os.path
-        self.data = ConfigParser.RawConfigParser()
+        # TODO: remove this check after the switch to py3k
+        try:
+            import configparser
+        except ImportError:
+            import ConfigParser as configparser
+        self.data = configparser.RawConfigParser()
         self.modified = False
         if os.access(self.filename, os.R_OK):
             self.data.read(self.filename)
@@ -151,10 +155,10 @@ class DataFile:
             # if it's marked private, chmod it appropriately
             if self.filename in self.universe.private_files and oct(
                stat.S_IMODE(os.stat(self.filename)[stat.ST_MODE])
-               ) != 0600:
-                os.chmod(self.filename, 0600)
+               ) != 0o0600:
+                os.chmod(self.filename, 0o0600)
 
-            # write it back sorted, instead of using ConfigParser
+            # write it back sorted, instead of using configparser
             sections = self.data.sections()
             sections.sort()
             for section in sections: