(In reply to comment #23)
excerpt from workdir/*/JunitTest/sc_unoapi/done.log:
checking: [sc.ScModelObj::com::sun::star::sheet::XGoalSeek] is iface:
[com.sun.star.sheet.XGoalSeek] testcode: [ifc.sheet._XGoalSeek]
LOG Execute: seekGoal()
LOG Goal Result: 16.0 Divergence: 0.0
LOG
(In reply to comment #29)
@Winfried:
Master's 416d10b5f91047f0dcfbcc233c60322810bfc8d0 could be backported to 4-0
as well but additionally to resolving some merge conflicts would also need
some adaption as there the ScDocument:GetValueCell() and
ScDocument::GetFormulaCell() methods don't
Created attachment 83889
calc sheet with the goal seek tests from Junittest_sc_unoapi
I've put the data form the Junittest on a calc sheet, with the outcomes as I
would expect them.
Presently, I don know whether the Junittest is wrong, or the patch.
I could add a unittest to
I confirm problem -as described in comment 3 and comment 4 - still
exists on master.
I will look into the code and see if i can find the cause and a fix.
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
A proper fix will take some time as the problem is deep inside the code,
hidden in a maze of recursive and iterative code.
Also, the chances are that when fixed, calc will no longer hang, but neither
give a solution. The reason for this is that in attachment 46880 the formula in
every cell
I have a dirty fix:
The MAXRECURSION (/core/sc/source/core/data/formulacell.cxx) value of 400 is
reached; increasing it 'solves' the problem.
However, there will always be a case where the MAXRECURSION value is reached,
so a proper handling of this situation is required.
Also, a 'best' value
I also confirm what Takeshi Abe reported, i.e. that the cause is not in
ScInterpreter::ScBackSolver(), but in SCFormulaCell::Interpret().
At some point the result is no longer calculated but equal to the
previous result, causing an infinite loop in ScBacksolver() since
changing the start value