diff options
-rw-r--r-- | lib/gtk-experiment-widgets/gtk-experiment-transcript-formats.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/gtk-experiment-widgets/gtk-experiment-transcript-formats.c b/lib/gtk-experiment-widgets/gtk-experiment-transcript-formats.c index 2c6c22d..2bbe761 100644 --- a/lib/gtk-experiment-widgets/gtk-experiment-transcript-formats.c +++ b/lib/gtk-experiment-widgets/gtk-experiment-transcript-formats.c @@ -139,12 +139,15 @@ gtk_experiment_transcript_load_formats(GtkExperimentTranscript *trans, FILE *file; gchar buf[255]; - if ((file = g_fopen(filename, "r")) == NULL) - return TRUE; - gtk_experiment_transcript_free_formats(trans->priv->formats); trans->priv->formats = NULL; + if (filename == NULL || !*filename) + goto redraw; + + if ((file = g_fopen(filename, "r")) == NULL) + return TRUE; + while (fgets((char *)buf, sizeof(buf)-1, file) != NULL) { GtkExperimentTranscriptFormat *fmt; @@ -171,6 +174,7 @@ gtk_experiment_transcript_load_formats(GtkExperimentTranscript *trans, fclose(file); +redraw: gtk_experiment_transcript_text_layer_redraw(trans); return FALSE; } |