Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6206469

REGRESSION: Regression : Invalid boolean conversion in VB 6.0

    Details

    • Subcomponent:
    • Introduced In Version:
    • CPU:
      x86
    • OS:
      windows_2000

      Backports

        Description

        FULL PRODUCT VERSION :
        java version "1.4.2_06"
        Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_06-b03)
        Java HotSpot(TM) Client VM (build 1.4.2_06-b03, mixed mode)

        ADDITIONAL OS VERSION INFORMATION :
        Microsoft Windows 2000 [Version 5.00.2195]

        EXTRA RELEVANT SYSTEM CONFIGURATION :
        Visual Basic 6.3

        A DESCRIPTION OF THE PROBLEM :
        We are using the old ActiveX/Java bridge. Now we are migrating to the bridge included in version 1.4.2_06. (since it was missing in version 1.4.1)

        Boolean values are converted to VB Boolean.
        We instantiate a ActiveX/Java object, retrieve another using a method, then call a method that return a Boolean.
        Dim javaObject as Object
        Dim object2 as Object
        set javaObject=CreateObject("MyJavaObject.ID")
        set object2=javaObject.get
        Dim result as Boolean
        result=object2.test
        'the result is true (checked in a java debugger)

        The result is said to be a Boolean in VB. However, the following value are returned :
        CDbl(True) is -1
        CDbl(False) is 0
        But CDbl(result) is 1!

        leading to error in the following code.

        This is a regression with respect to version 1.3.*






        STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
        Create a JavaBean that returns an object and a method in this object that returns true.

        Test the result in VB of the call. It is neither false or true.

        example :

         If Not result Then
          msgbox("maybe")
        else if result
          msgbox("maybe")
        else
        ' strange logic isn't it...
          msgbox("wahoo")
        End If


        ACTUAL -
        wahoo.

        ERROR MESSAGES/STACK TRACES THAT OCCUR :
        no error message, but the application says no instead of yes, yes instead of no...

        REPRODUCIBILITY :
        This bug can be reproduced always.

        CUSTOMER SUBMITTED WORKAROUND :
        keep using java 1.3.1_08....

        Release Regression From : 1.3.1
        The above release value was the last known release where this
        bug was known to work. Since then there has been a regression.
        ###@###.### 2004-12-09 16:11:54 GMT

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  ccheung Calvin Cheung
                  Reporter:
                  gmanwanisunw Girish Manwani (Inactive)
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  0 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:
                    Imported:
                    Indexed: