projects
/
mw
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix pagename/filename conversion problem
[mw]
/
src
/
mw
/
metadir.py
diff --git
a/src/mw/metadir.py
b/src/mw/metadir.py
index ab99288c47f5bc6e0e3c3980d27ee3768e993044..377e048bd031d453abc2a6aa30ce6659b4174c4f 100644
(file)
--- a/
src/mw/metadir.py
+++ b/
src/mw/metadir.py
@@
-51,6
+51,10
@@
class Metadir(object):
sys.exit(1)
else:
os.mkdir(self.location, 0755)
sys.exit(1)
else:
os.mkdir(self.location, 0755)
+ # metadir versioning
+ fd = file(os.path.join(self.location, 'version'), 'w')
+ fd.write('1')
+ fd.close()
# create config
self.config = ConfigParser.RawConfigParser()
self.config.add_section('remote')
# create config
self.config = ConfigParser.RawConfigParser()
self.config.add_section('remote')
@@
-62,6
+66,7
@@
class Metadir(object):
# create cache/pagedict
fd = file(os.path.join(self.location, 'cache', 'pagedict'), 'w')
fd.write(json.dumps({}))
# create cache/pagedict
fd = file(os.path.join(self.location, 'cache', 'pagedict'), 'w')
fd.write(json.dumps({}))
+ fd.close()
# create cache/pages/
os.mkdir(os.path.join(self.location, 'cache', 'pages'), 0755)
# create cache/pages/
os.mkdir(os.path.join(self.location, 'cache', 'pages'), 0755)
@@
-72,18
+77,22
@@
class Metadir(object):
fd.seek(0)
fd.write(json.dumps(pagedict))
fd.truncate()
fd.seek(0)
fd.write(json.dumps(pagedict))
fd.truncate()
+ fd.close()
- def pages_add_r
e
v(self, pageid, rv):
+ def pages_add_rv(self, pageid, rv):
pagefile = os.path.join(self.location, 'cache', 'pages', str(pageid))
fd = file(pagefile, 'w+')
pagefile = os.path.join(self.location, 'cache', 'pages', str(pageid))
fd = file(pagefile, 'w+')
- pagedata = json.loads(fd.read())
+ pagedata_raw = fd.read()
+ if pagedata_raw == '':
+ pagedata = {}
+ else:
+ pagedata = json.loads(pagedata_raw)
rvid = int(rv['revid'])
rvid = int(rv['revid'])
- if pageid not in pagedata.keys():
- pagedata[pageid] = {}
- pagedata[pageid][rvid] = {
+ pagedata[rvid] = {
'user': rv['user'], 'timestamp': rv['timestamp'],
'content': rv['*'],
}
fd.seek(0)
fd.write(json.dumps(pagedata))
fd.truncate()
'user': rv['user'], 'timestamp': rv['timestamp'],
'content': rv['*'],
}
fd.seek(0)
fd.write(json.dumps(pagedata))
fd.truncate()
+ fd.close()
Benjamin Mako Hill
||
Want to submit a patch?