read the comment and bounce if the comment does not set #1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
در این pr کامنت های تراکنش تون در ولت v4 خوانده می شود. سپس اگر کامنت ست نشده بود، بدون توجه به
bounceable یا non-bounceable
آنها amount واریزی را به ولت مبدا برمیگرداند.
ابتدا به یک ارور اکتفا میکردیم : throw_if(100, slice_empty?(comment));
در لاین ۴۷ کد ولت این قابل مشاهده است. با throw کردن فقط برگشت تراکنش های bounceable ساپورت می شد. نمونه تراکنش ها در این ولت قابل مشاهده است:
https://testnet.tonscan.org/address/EQAZKXNO5yNIbvXYItPK_A8tpYuqOtx6N5178_RVCn046HnN
در توضیح تراکنش ها:
تراکنش non-bounceable بدون کامنت که ارور ثبت می شود ولی مقدار در مقصد می نشیند:
https://testnet.tonscan.org/tx/ZpgQXOV5QRM4B1n0iTQh3liMWlYPyGV05bYjjMn1QJ8=
تراکنش bounceable بدون کامنت که ارور ثبت می شود و مقدار برگشت داده می شود:
https://testnet.tonscan.org/tx/xOHfKOVrMsYMZt0y8MIn5Y9IHx31w7FkxnjEZR4lPE8=
تراکنش با کامنت:
https://testnet.tonscan.org/tx/vyhfK81nmP9wbwyMogGaSK7_jEPuQBBilQHWBUwzxNk=
در آپدیت بعدی به جای throw سعی کردیم بدون توجه به
bounceable یا non-bounceable
بودن تراکنش های بدون کامنت را به ولت مبدا بازگردانیم. پس تراکنش بازگشتی را در اسمارت کانترکت می سازیم. این کار با خواندن کامنت و چک کردن خالی نبودن آن انجام شده است. لاین 44 تا 46 نشان دهنده این موضوع است. تراکنش های نمونه در این ولت قابل مشاهده است:
https://testnet.tonscan.org/address/EQCHLVfaJNAcR9ZQzTbEhsdhBB1rn-fKF2tlagqC0eok6q_c
تراکنش نان بانسبل برگشت خورده به دلیل عدم وجود ممو:
https://testnet.tonscan.org/tx/8Iu3hZLhvDZ1USgE_QH8ZNk_1OYg2nMyZ7syLuOqrLE=
تراکنش بانسبل برگشت خورده به دلیل عدم وجود ممو:
https://testnet.tonscan.org/tx/3ccmyV9vYcXnnM3RTrpxvvpokw43nVveze6SmuYYjmA=
تراکنش با ممو که بدون مشکل ثبت می شود:
https://testnet.tonscan.org/tx/CfnVykr054Yq1netIYBdnx7jrS9VNbUN2_PKXIZ0OZg=