X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=python%2Fvserver.py;fp=python%2Fvserver.py;h=c6d07b625bcc5bcae34baf14b10b6f2d6cab551e;hb=acbade1462cf4b7aa003ea0932b57de19ccd5d1e;hp=81e5203c2603f20956e7b9e858e52928df41c021;hpb=0c1f40415d91b68e560aaf31b390d106b12998e5;p=util-vserver.git diff --git a/python/vserver.py b/python/vserver.py index 81e5203..c6d07b6 100644 --- a/python/vserver.py +++ b/python/vserver.py @@ -86,11 +86,13 @@ class VServer: f.close() todo = newvars.copy() changed = False + offset = 0 for m in self.config_var_re.finditer(data): (key, val) = m.groups() newval = todo.pop(key, None) if newval != None: - data = data[:m.start(2)] + str(newval) + data[m.end(2):] + data = data[:offset+m.start(2)] + str(newval) + data[offset+m.end(2):] + offset += len(str(newval)) - (m.end(2)-m.start(2)) changed = True for (newkey, newval) in todo.items(): data += "%s=%s\n" % (newkey, newval)