diff --git a/.gitignore b/.gitignore
index 7f77fc6b00d7e588ac4fcdd9f66e7d496c9cff2e..6948d8611960d5cf2ac7aeee34d5a52621260ec9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -51,3 +51,6 @@ package-lock.jsondrugsTone-build
 
 .ipynb_checkpoints/
 *.ipynb
+
+# temp dir for css prefixing
+original/*
diff --git a/prefixCSS.py b/prefixCSS.py
index fbbcd117b9edbede53d25b5329cef335b4360e16..19ddfc1d2cf58a030ace10a632b7a513139def08 100644
--- a/prefixCSS.py
+++ b/prefixCSS.py
@@ -378,7 +378,6 @@ def parse():
         buildManager.buildDevDir()
         buildManager.parseApp()
     except:
-        buildManager.cleanup()
         raise Exception('ERROR: CSS prefix script failed.')
     print('Parsing done!')
 
@@ -400,7 +399,16 @@ if __name__ == '__main__':
         raise Exception('Value for --stage is missing.')
        
     if args.stage == 'parse':
-        parse()
+        try:
+            parse()
+        except:
+            # in case it fails, try again after running a cleanup
+            cleanup()
+            try:
+                parse()
+            except:
+                cleanup()
+            
     elif args.stage == 'cleanup':
         cleanup()
     else: