Project

General

Profile

Bug #4310

ValueListeners receive valueChanged events when values have not changed

Added by Daniel Crawl over 9 years ago. Updated about 9 years ago.

Status:
New
Priority:
Immediate
Assignee:
Category:
general
Target version:
Start date:
08/13/2009
Due date:
% Done:

0%

Estimated time:
Bugzilla-Id:
4310

Description

A ValueListener sometimes receives events for a Settable when the Settable's value has not changed. This can lead to a stack overflow since reading the value of the Settable may generate another valueChanged event.

To fix this, valueChanged not be called unless the value has actually changed.

History

#1 Updated by Christopher Brooks over 9 years ago

We need a test case for this.

#2 Updated by Matt Jones over 9 years ago

The implications for this are not clear. Sounds like it is a serious bug that should be fixed, but we need a more detailed test case demonstrating the problem. Dan -- please either provide a way to reproduce this or retarget it to 2.X.Y.

#3 Updated by Daniel Crawl over 9 years ago

Calling getValueAsString on Distributor.input_tokenConsumptionRate always generates a value changed event.

#4 Updated by Bertram Ludaescher over 9 years ago

getValueAsString sounds like a "read only" activity, so I understand that a "valueChanged" event is a surprise, if not a bug. I'm glad we're not doing Heisenberg or other quantum experiments here..

More seriously: I wanted to confirm (maybe Edward would know) whether there is not a deeper reason why valueChanged is raised. It certainly sounds as if it shouldn't be though ...
If it results in a stack overflow, we are in trouble..

B

#5 Updated by Redmine Admin almost 6 years ago

Original Bugzilla ID was 4310

Also available in: Atom PDF