Project

General

Profile

Bug #10406

Wrong parameter mode for buffers passed to a constructor

Added by Eduard Soltan 11 months ago. Updated 11 months ago.

Status:
Test
Priority:
Normal
Assignee:
Target version:
-
Start date:
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:
version_reported:
version_resolved:
production:
No
env_name:
topics:

Related issues

Related to Base Language - Bug #10336: Issue on object deletion: java.lang.IllegalStateException Test

History

#1 Updated by Eduard Soltan 11 months ago

start.p

def var obj as Test3.

def buffer bBook2 for book2. 

obj = new Test3(BUFFER book2).

Test3.cls

USING Progress.Lang.*.

BLOCK-LEVEL ON ERROR UNDO, THROW.

CLASS Test3: 
    CONSTRUCTOR PUBLIC Test3 (BUFFER bBook2 FOR book2):

    END.
END CLASS. 

It converts to :
start.p

RecordBuffer.openScope(book2);
obj.assign(ObjectOps.newInstance(com.goldencode.hotel.Test3.class, "I", book2));

Test3.java

@LegacySignature(type = Type.CONSTRUCTOR, name = "Test3", parameters = 
{
   @LegacyParameter(type = "BUFFER", buffer = "bBook2", bufferFor = "book2")
})
public void __test3_constructor__(final Book2.Buf _bbook2)

As you can see the constructor definition has, a parameter of type BUFFER. While the caller tries to instantiate an object with a parameter of type INPUT.

#3 Updated by Teodor Gorghe 11 months ago

  • Related to Bug #10336: Issue on object deletion: java.lang.IllegalStateException added

#4 Updated by Eduard Soltan 11 months ago

  • Status changed from New to WIP
  • % Done changed from 0 to 100

Committed on 10406a, rev. 16110.

#5 Updated by Eduard Soltan 11 months ago

  • Status changed from WIP to Review
  • reviewer Constantin Asofiei added

#6 Updated by Eduard Soltan 11 months ago

  • reviewer Alexandru Lungu added
  • reviewer deleted (Constantin Asofiei)

#7 Updated by Constantin Asofiei 11 months ago

  • Assignee set to Eduard Soltan
  • reviewer Constantin Asofiei added

I'm OK with the change.

Teodor: can you do a manual runtime test with the example in first note? If FWD calls properly the constructor and can use the buffer (i.e. via a FIND or CREATE).

#8 Updated by Teodor Gorghe 11 months ago

I have modified the code to contain some buffer usage:

The expected output is yes, 2, yes, which also happens on FWD.

#9 Updated by Constantin Asofiei 11 months ago

  • Status changed from Review to Internal Test

Thanks.

#10 Updated by Constantin Asofiei 11 months ago

  • Status changed from Internal Test to Merge Pending

This will be merged after 10398a.

#11 Updated by Eduard Soltan 11 months ago

  • Status changed from Merge Pending to Test

10406a was merged to trunk and archived.

Also available in: Atom PDF