Bug - Fixed (patch included) Item.seller, Item.buyer throws error in JavaScript

philmasterplus

Active member
  • KoLmafia version: r20608
Steps to reproduce
Run js Item.get('wicker shield').seller in the gCLI.

Expected result
Same value as running js Coinmaster.get('Dimemaster')

Actual result
Code:
> js Item.get('wicker shield').seller

Script exception: ASH function returned native Java object.
Returned: null

Details
This is caused by two methods in ProxyRecordValue.java that return an unwrapped CoinmasterData object. It can be trivially fixed by wrapping the object as a Value.

I'm submitting a patch that fixes this. I also did a cursory scan through ProxyRecordValue.java, but these appear to be the only instances where a non-static method returns an unwrapped Java object.
 

Attachments

  • philmasterplus-js-seller-buyer-fix.patch
    1.2 KB · Views: 2

gausie

D̰͕̝͚̤̥̙̐̇̑͗̒e͍͔͎͈͔ͥ̉̔̅́̈l̠̪̜͓̲ͧ̍̈́͛v̻̾ͤe͗̃ͥ̐̊ͬp̔͒ͪ
Staff member
Top