X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fimport%2Fimport-dkr.c;fp=src%2Fimport%2Fimport-dkr.c;h=e7dbe0f6626e75c9f3ee4b8cb47a31b825aef651;hb=14ed8b9273690b82fed2d437f58e9e01487e9f69;hp=594da547f578727248512abaeeb450a9d1a9f1fe;hpb=ea1ae8c38e669351b909cf8cc0c1e6fd140c1b58;p=elogind.git diff --git a/src/import/import-dkr.c b/src/import/import-dkr.c index 594da547f..e7dbe0f66 100644 --- a/src/import/import-dkr.c +++ b/src/import/import-dkr.c @@ -100,6 +100,8 @@ struct DkrImport { dkr_import_on_finished on_finished; void *userdata; + + bool finished; }; #define PROTOCOL_PREFIX "https://" @@ -181,6 +183,11 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(DkrImportName*, dkr_import_name_unref); static void dkr_import_finish(DkrImport *import, int error) { assert(import); + if (import->finished) + return; + + import->finished = true; + if (import->on_finished) import->on_finished(import, error, import->userdata); else