summaryrefslogtreecommitdiffstats
path: root/src/live_effects/effect.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/live_effects/effect.cpp')
-rw-r--r--src/live_effects/effect.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/live_effects/effect.cpp b/src/live_effects/effect.cpp
index 2035d301f..b892c520e 100644
--- a/src/live_effects/effect.cpp
+++ b/src/live_effects/effect.cpp
@@ -97,7 +97,7 @@ Effect::Effect(LivePathEffectObject *lpeobject)
vbox = NULL;
tooltips = NULL;
lpeobj = lpeobject;
- oncanvasedit_it = param_vector.begin();
+ oncanvasedit_it = 0;
}
Effect::~Effect()
@@ -297,19 +297,19 @@ Parameter *
Effect::getNextOncanvasEditableParam()
{
oncanvasedit_it++;
- if (oncanvasedit_it == param_vector.end()) {
- oncanvasedit_it = param_vector.begin();
+ if (oncanvasedit_it == param_vector.size()) {
+ oncanvasedit_it = 0;
}
- std::vector<Parameter *>::iterator old_it = oncanvasedit_it;
+ int old_it = oncanvasedit_it;
do {
- Parameter * param = *oncanvasedit_it;
- if(param->oncanvas_editable) {
+ Parameter * param = param_vector[oncanvasedit_it];
+ if(param && param->oncanvas_editable) {
return param;
} else {
oncanvasedit_it++;
- if (oncanvasedit_it == param_vector.end()) { // loop round the map
- oncanvasedit_it = param_vector.begin();
+ if (oncanvasedit_it == param_vector.size()) { // loop round the map
+ oncanvasedit_it = 0;
}
}
} while (oncanvasedit_it != old_it); // iterate until complete loop through map has been made