Bunny67 / WeakAuras-WotLK

World of Warcraft addon that provides a powerful framework to display customizable graphics on your screen.
GNU General Public License v2.0
161 stars 105 forks source link

Some servers block characters used by LibDeflate's EncodeForWowAddonChannel #41

Closed andrew6180 closed 4 years ago

andrew6180 commented 4 years ago

Describe the bug

Linking weakauras to other players usually does not work because of this. I assume the server is blocking some of the characters used for compression, causing parts of the comm message to never be sent.

Do you have an error log of what happened? I do not but I have experienced the issue with other addons.

To Reproduce

The only server I know this happens on is Warmane, I'm specifically on the Forstmourne server so I'm not sure if it even exists outside this one specific server.

Steps to reproduce the behavior: Play on warmane frostmourne, try and link a weakaura in chat to another player. Usually the receiving player will never complete the download.

Which version of WeakAuras are you using? 2.17.12

Additional Info

I've had this issue in both RaidAssist and RCLootCouncil while backporting them. I'm not sure how reasonable it would be to swap EncodeForWowAddonChannel with EncodeForPrint since weakauras send much more data than the other 2 addons.

Bunny67 commented 4 years ago

I think it is unlikely that it will be possible to fix it, and abandoning LibDeflate, I think it is a bad decision

andrew6180 commented 4 years ago

it would be replacing https://github.com/Bunny67/WeakAuras-WotLK/blob/3f0c397b28a4167017468f95433756f9bef69395/WeakAuras/Transmission.lua#L686 and https://github.com/Bunny67/WeakAuras-WotLK/blob/master/WeakAuras/Transmission.lua#L660

with LibDeflate:DecodeForPrint(encoded) and LibDeflate:EncodeForPrint(compressed)

Maybe add an option somewhere to force it to use encode for print at least so warmane players can share weakauras?

Bunny67 commented 4 years ago

Text grows 2.5 times when sent

Bunny67 commented 4 years ago

image image Hmm, not 2.5.

Bunny67 commented 4 years ago

I'll look at it again as soon as I have more free time

andrew6180 commented 4 years ago

https://github.com/Bunny67/WeakAuras-WotLK/commit/3ad99f860a6d32a50548ccd9c1fe705d50befb7d

did fix it on warmane.

I think it's worth mentioning that libdeflate encode for print is probably still smaller than LibCompress which older versions used.