summaryrefslogtreecommitdiff
path: root/fluid
diff options
context:
space:
mode:
Diffstat (limited to 'fluid')
-rw-r--r--fluid/file.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/fluid/file.cxx b/fluid/file.cxx
index f4cf18c1c..92ab8925a 100644
--- a/fluid/file.cxx
+++ b/fluid/file.cxx
@@ -87,11 +87,13 @@ void write_word(const char *w) {
putc('}', fout);
}
-// write an arbitrary formatted word, or a comment, etc:
+// write an arbitrary formatted word, or a comment, etc.
+// if needspace is set, then one space is written before the string
+// unless the format starts with a newline character ('\n'):
void write_string(const char *format, ...) {
va_list args;
va_start(args, format);
- if (needspace) fputc(' ',fout);
+ if (needspace && *format != '\n') fputc(' ',fout);
vfprintf(fout, format, args);
va_end(args);
needspace = !isspace(format[strlen(format)-1] & 255);