diff options
Diffstat (limited to 'src/eulogium.c')
-rw-r--r-- | src/eulogium.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/eulogium.c b/src/eulogium.c index d89885d..06d9819 100644 --- a/src/eulogium.c +++ b/src/eulogium.c @@ -127,10 +127,18 @@ void eulogium_button_data_set(struct button_def *button, void *data) button->data = data; } -void eulogium_print_file_set(struct eulogium_data *eulogium, char *filepath) +void eulogium_print_data_set(struct eulogium_data *eulogium, char *filepath) { - if (filepath && eulogium) - eulogium->print.file = filepath; + char *buf; + int buf_size; + + if (!filepath) + EINA_LOG_CRIT("Incorrect filename passed %s", filepath); + + buf_size = strlen(filepath) + strlen("file://") + 1; + buf = malloc(buf_size); /* TODO: remember to free this later! */ + snprintf(buf, buf_size, "file://%s", filepath); + eulogium->print.file = buf; eulogium->print.name = ecore_file_strip_ext(ecore_file_file_get(filepath)); } @@ -263,7 +271,7 @@ elm_progressbar_value_set(eulogium->print.progress, 0.5); Evas_Object *eulogium_start_print(struct eulogium_data *eulogium, char *filepath) { - eulogium_print_file_set(eulogium, filepath); + eulogium_print_data_set(eulogium, filepath); return eulogium_print_progress(eulogium); } |