fpfixup.py: more robust detection
authorDan White <dan@whiteaudio.com>
Fri, 24 Feb 2012 21:18:50 +0000 (15:18 -0600)
committerDan White <dan@whiteaudio.com>
Fri, 24 Feb 2012 21:19:32 +0000 (15:19 -0600)
fpfixup.py

index c77184a40a5d563e012eff3c04aecdf9874a510b..b20ca65c221b6bad4bcda22c6551a680cbba8947 100755 (executable)
@@ -14,14 +14,18 @@ for fpath in sys.argv[1:]:
     fp = open(fpath)
     lines = fp.readlines()
     fp.close()
-    if lines[0][0:7] == 'Element':
-        fields = lines[0].split()
+    first = lines[0]
+    if first[0:7] == 'Element':
+        istart = first.find('[')
+        iend = first.find(']')
+        fields = first[istart:iend+1].split()
         if fields[1] == fname or fields[1] == '"'+fname+'"':
             print 'Not touching:', fpath
         else:
             fields[1] = '"%s"' % fname
             #put back the split() trailing newline
-            lines[0] = ' '.join(fields) + '\n'
+            newfirst = 'Element' + ' '.join(fields) + ']\n'
+            lines[0] = newfirst
             print 'Rewriting:', fpath
             open(fpath, 'w').write(''.join(lines))