X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Foutput%2Fjournal.c;h=66c1b77534e98118ca7b300bb523d47b1d4b3493;hb=97cb2acd10045679031d3abe971f7896de575790;hp=1a700898ac5e1d6707de700d4b59de1723b32c74;hpb=f550aee00a62fe1d8baf62d83cd7efef6cc2ee92;p=pspp-builds.git diff --git a/src/output/journal.c b/src/output/journal.c index 1a700898..66c1b775 100644 --- a/src/output/journal.c +++ b/src/output/journal.c @@ -64,7 +64,7 @@ journal_close (void) if (journal != NULL && journal->file != NULL) { if (fwriteerror (journal->file)) - error (0, errno, _("error writing output file \"%s\""), + error (0, errno, _("error writing output file `%s'"), journal_file_name); journal->file = NULL; } @@ -90,7 +90,7 @@ journal_output (struct journal_driver *j, const char *s) j->file = fopen (journal_file_name, "a"); if (j->file == NULL) { - error (0, errno, _("error opening output file \"%s\""), + error (0, errno, _("error opening output file `%s'"), journal_file_name); output_driver_destroy (&j->driver); return; @@ -98,6 +98,11 @@ journal_output (struct journal_driver *j, const char *s) } fprintf (j->file, "%s\n", s); + + /* Flush the journal in case the syntax we're about to write + causes a crash. Having the syntax already written to disk + makes postmortem analysis of the problem possible. */ + fflush (j->file); } static void