diff options
author | Tomas Farago <sensej007@email.cz> | 2020-02-18 09:07:37 +0100 |
---|---|---|
committer | Tomas Farago <sensej007@email.cz> | 2020-02-18 09:07:37 +0100 |
commit | b70fd57d526a8b09d2fba60dae50b81a1b602cfa (patch) | |
tree | a0ef666e0b87bf390148b503de47ec728ad890ff /src | |
parent | 18b13e2c7e539e73d5659a0b610b195f1c580500 (diff) | |
download | ufo-filters-b70fd57d526a8b09d2fba60dae50b81a1b602cfa.tar.gz ufo-filters-b70fd57d526a8b09d2fba60dae50b81a1b602cfa.tar.bz2 ufo-filters-b70fd57d526a8b09d2fba60dae50b81a1b602cfa.tar.xz ufo-filters-b70fd57d526a8b09d2fba60dae50b81a1b602cfa.zip |
write: handle stdout correctly
Diffstat (limited to 'src')
-rw-r--r-- | src/ufo-write-task.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/ufo-write-task.c b/src/ufo-write-task.c index 2e19c64..0f1e478 100644 --- a/src/ufo-write-task.c +++ b/src/ufo-write-task.c @@ -126,6 +126,10 @@ ufo_write_task_new (void) static gchar * get_current_filename (UfoWriteTaskPrivate *priv) { + if (!priv->filename) { + return NULL; + } + if (!priv->num_fmt_specifiers) return g_strdup (priv->filename); @@ -357,7 +361,7 @@ retry: GError *error = NULL; gchar *filename = get_current_filename (priv); - if (!can_be_written (filename, &error)) { + if (filename && !can_be_written (filename, &error)) { g_warning ("%s", error->message); g_free (filename); g_error_free (error); @@ -366,7 +370,9 @@ retry: } ufo_writer_open (priv->writer, filename); - g_free (filename); + if (filename) { + g_free (filename); + } priv->opened = TRUE; } @@ -551,8 +557,10 @@ ufo_write_task_finalize (GObject *object) priv = UFO_WRITE_TASK_GET_PRIVATE (object); - g_free (priv->filename); - priv->filename= NULL; + if (priv->filename) { + g_free (priv->filename); + priv->filename= NULL; + } if (priv->kernel) { UFO_RESOURCES_CHECK_CLERR (clReleaseKernel (priv->kernel)); |