Skip to content

Commit bcada10

Browse files
committed
Fix effects_flush_parameters reset param set
Signed-off-by: falkTX <[email protected]>
1 parent e836641 commit bcada10

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/effects.c

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6348,7 +6348,7 @@ int effects_get_parameter(int effect_id, const char *control_symbol, float *valu
63486348
port = FindEffectInputPortBySymbol(&(g_effects[effect_id]), control_symbol);
63496349
if (port)
63506350
{
6351-
(*value) = *(port->buffer);
6351+
*value = *(port->buffer);
63526352
return SUCCESS;
63536353
}
63546354

@@ -6369,7 +6369,8 @@ int effects_flush_parameters(int effect_id, int reset, int param_count, const fl
63696369

63706370
if (effect->reset_index >= 0 && reset != 0)
63716371
{
6372-
*(effect->ports[effect->reset_index]->buffer) = reset;
6372+
port = effect->ports[effect->reset_index];
6373+
port->prev_value = *(port->buffer) = reset;
63736374
}
63746375

63756376
for (int i = 0; i < param_count; i++)
@@ -6384,7 +6385,7 @@ int effects_flush_parameters(int effect_id, int reset, int param_count, const fl
63846385
else if (value > port->max_value)
63856386
value = port->max_value;
63866387

6387-
port->prev_value = *port->buffer = params[i].value;
6388+
port->prev_value = *(port->buffer) = params[i].value;
63886389

63896390
#ifdef WITH_EXTERNAL_UI_SUPPORT
63906391
port->hints |= HINT_SHOULD_UPDATE;
@@ -6395,7 +6396,8 @@ int effects_flush_parameters(int effect_id, int reset, int param_count, const fl
63956396
// reset a 2nd time in case plugin was processing while we changed parameters
63966397
if (effect->reset_index >= 0 && reset != 0)
63976398
{
6398-
*(effect->ports[effect->reset_index]->buffer) = reset;
6399+
port = effect->ports[effect->reset_index];
6400+
port->prev_value = *(port->buffer) = reset;
63996401
}
64006402

64016403
return SUCCESS;
@@ -6808,7 +6810,7 @@ int effects_monitor_output_parameter(int effect_id, const char *control_symbol_o
68086810
return SUCCESS;
68096811

68106812
// set prev_value
6811-
port->prev_value = (*port->buffer);
6813+
port->prev_value = *(port->buffer);
68126814
port->hints |= HINT_MONITORED;
68136815

68146816
// simulate an output monitor event here, to report current value

0 commit comments

Comments
 (0)