arkayenro / arkinventory

A World of Warcraft Inventory mod for Retail, Burning Crusade, and Classic
102 stars 14 forks source link

Rule using vensell() crashes when there's nothing to be sold #1811

Closed emsilva closed 9 months ago

emsilva commented 11 months ago

What version number you are using? 3.10.16

What game client are you playing? Retail, Burning Crusade, Classic / Live, PTR, Beta Retail

What language is the game client set to? English

Ask your question First of all, THANK YOU so much for this addon. Its amazing. I will open two issues because I have 2 completely different questions and I think that keeps it easier for people to search.

I use an addon called vendor. Its great that it registers 3 functions with arkinventory. vensell(), venscrap() and vendestroy(). I created a rule and add vensell() as the function and it works great. But if I don't have any item that would be listed by vensell() it crashes with: ArkInventory: ERROR> [string "return( vensell() or false )"]:1: attempt to call global 'vensell' (a nil value) ArkInventory: WARNING> Rule 1001 is now flagged as damaged and will no longer be used until repaired ArkInventory: ERROR> ...rface/AddOns/ArkInventoryRules/ArkInventoryRules.lua:267: [string "return( vensell() or false )"]:1: attempt to call global 'vensell' (a nil value)

I tried vensell() or false to no avail. Anyway I can protect the rule from that so it doesn't crash?

arkayenro commented 10 months ago

if it works normally and only fails when you have nothing to sell then its a bug that the person that wrote it needs to fix.

3rd party rule functions are just passed off to their own code, if they fail for any reason then it breaks the whole rule