ref: 6e083c9b3ae767d6a3c8eddef96faf3f68b0c578
parent: d358b39024588daba6e206578ccfd5f49475ded2
author: Bryan Bishop <kanzure@gmail.com>
date: Thu Apr 26 07:02:17 EDT 2012
only strip comments when a semicolon appears on the line
--- a/textpre.py
+++ b/textpre.py
@@ -271,28 +271,32 @@
sys.stdout.write(l)
continue
- # strip comments
asm = ""
- comment = None
- in_quotes = False
- in_comment = False
- for letter in l:
- if in_comment:
- comment += letter
- elif in_quotes and letter != "\"":
- asm += letter
- elif in_quotes and letter == "\"":
- in_quotes = False
- asm += letter
- elif not in_quotes and letter == "\"":
- in_quotes = True
- asm += letter
- elif not in_quotes and letter != "\"":
- if letter == ";":
- in_comment = True
- comment = ";"
- else:
+
+ # strip comments
+ comment = None
+ if ";" in l:
+ in_quotes = False
+ in_comment = False
+ for letter in l:
+ if in_comment:
+ comment += letter
+ elif in_quotes and letter != "\"":
asm += letter
+ elif in_quotes and letter == "\"":
+ in_quotes = False
+ asm += letter
+ elif not in_quotes and letter == "\"":
+ in_quotes = True
+ asm += letter
+ elif not in_quotes and letter != "\"":
+ if letter == ";":
+ in_comment = True
+ comment = ";"
+ else:
+ asm += letter
+ else:
+ asm = l
# skip asm with no quotes
if "\"" not in asm:
--
⑨