prevent a unlikely race: concurrent restore() + work_response ()
authorRobin Gareus <robin@gareus.org>
Wed, 24 Aug 2016 13:38:36 +0000 (15:38 +0200)
committerRobin Gareus <robin@gareus.org>
Wed, 24 Aug 2016 13:38:36 +0000 (15:38 +0200)
libs/plugins/a-fluidsynth.lv2/a-fluidsynth.c

index 79f5586e3f867b15f6d9dffcfb3213412228dac1..34275e15b47513bc32a647737427e4e892846080 100644 (file)
@@ -521,15 +521,16 @@ work_response (LV2_Handle  instance,
                const void* data)
 {
        AFluidSynth* self = (AFluidSynth*)instance;
-       self->reinit_in_progress = false;
-       self->queue_reinit = false;
-       self->inform_ui = true;
 
        if (self->initialized) {
                strcpy (self->current_sf2_file_path, self->queue_sf2_file_path);
        } else {
                self->current_sf2_file_path[0] = 0;
        }
+
+       self->reinit_in_progress = false;
+       self->inform_ui = true;
+       self->queue_reinit = false;
        return LV2_WORKER_SUCCESS;
 }