Item1822: IF broken for numerical comparisons against zero

Priority: Urgent
Current State: Closed
Released In: 1.0.7
Target Release: patch
Applies To: Engine
Reported By: MichaelDaum
Waiting For:
Last Change By: KennethLavrsen
You type:
  "-1 > 0"
  then="<b>test FAILED</b>"
  else="test PASSED"
You get:

That's an error in BinaryOP and UnaryOP where the sub expression is defaulting to the empty string if their return value is perl-false, i.e. numerically zero.

So any further numerical comparison like -1 > 0 are evaluated lexically - not numerically because the second argument is translated to the empty string.

-- MichaelDaum - 10 Jul 2009

ItemTemplate edit

Summary IF broken for numerical comparisons against zero
ReportedBy MichaelDaum
SVN Range Foswiki-1.0.0, Thu, 08 Jan 2009, build 1878
AppliesTo Engine
Priority Urgent
CurrentState Closed
Checkins distro:0f57c28170b5
TargetRelease patch
ReleasedIn 1.0.7
Topic revision: r6 - 20 Sep 2009, KennethLavrsen
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy